タグ

ブックマーク / qiita.com/kumagi (3)

  • Isolation Levelの階層 - Qiita

    ACIDの中でIsolationは特に蔑ろにされがち、と昨日の記事に書いたが具体的にどのように蔑ろにされるかについて詳しく説明する。 ANSI規格 米国国家規格協会、いわゆるANSIではトランザクションの分離レベルが4つ定められている。 READ UNCOMMITTED: 未コミットの値を読む事がある(Dirty Read Anomaly) READ COMMITTED: コミット済みの値しか読まないが、1つのトランザクションの中で複数回同じ値を読みにいった時に外のトランザクションによって更新された最新の値を読んでしまって一致しない事がある(Non-Repeatable Read Anomaly)。また、読んだ値に後から書き込む際に他のトランザクションによって更新された値であっても更にその上から上書きしてしまい過去の更新が消失する(Lost Update Anomaly)。また、2つの値を

    Isolation Levelの階層 - Qiita
    knj2918
    knj2918 2022/12/11
  • Two Phase Lock - Qiita

    実行スケジュールを動的に作成したい Conflict Serializability(CSR)が担保される実行スケジュールはトランザクションの実装上好ましい性質を持っている。 そのCSRを動的に生成する方法の1つがTwo Phase Lock(2相ロックまたは2PL)である。 厳密にはCSRより更に狭い範囲のスケジュールしか許容しないが、詳細はリカバリなどの議論を含むため後日にする。 Two Phase Lockとは、成長相と縮退相の2相からなるロックプロトコルである。 ロックプロトコルとは、複数のロックを獲得・解放する際の取り決め(プロトコル)を規定する物であり、特定のロック実装には依存しない。 Two Phase Lockの規定するプロトコルは以下である。 成長相のあとに縮退相が来なくてはならない。 縮退相のあとに成長相が来る事は許可されていない。 成長相と縮退相はそれぞれ1つずつしか

    Two Phase Lock - Qiita
    knj2918
    knj2918 2022/12/10
  • Amazon Auroraの先進性を誰も解説してくれないから解説する - Qiita

    TL;DR; Amazon AuroraはIn-Memory DBでもなくDisk-Oriented DBでもなく、In-KVS DBとでも呼ぶべき新地平に立っている。 その斬新さたるやマスターのメインメモリはキャッシュでありながらWrite-BackでもなくWrite-Throughでもないという驚天動地。 ついでに従来のチェックポイント処理も不要になったのでスループットも向上した。 詳細が気になる人はこの記事をチェキ! Amazon AuroraAWSの中で利用可能なマネージド(=運用をAWSが面倒見てくれる)なデータベースサービス。 ユーザーからはただのMySQL、もしくはPostgreSQLとして扱う事ができるのでそれらに依存する既存のアプリケーション資産をそのまま利用する事ができて、落ちたら再起動したりセキュリティパッチをダウンタイムなしで(!?)適用したりなどなどセールストー

    Amazon Auroraの先進性を誰も解説してくれないから解説する - Qiita
    knj2918
    knj2918 2022/12/02
  • 1