セージ の メモ書き

メモこそ命の恩人だ

DB - ACID特性/BASE特性

ACID特性

Atomicity:原子性

  • Trの処理は、全て実行するか否か。
  • 例:コミット or ロールバック

Consistency:一貫性

  • 矛盾がない。整合性が保たれること。
  • 例:外部キー制約、一意制約

Isolation:独立性

  • 各Trは互いに干渉しない。
  • 例:分離レベル
  • 分離レベルMAX:干渉しない。(直列化可能性)
  • 分離レベルMIN:干渉するケースあり。

Durability:耐久性

  • Trコミット後、障害発生時も内容は保証される。
  • 例:ログバッファ、ログ



BASE特性

  • NoSQLの概念。ACID特性と対比。
  • "ACID:酸、BASE:塩基" で対比。
  • RDBMSとは緩さが違うことを示す特性。

Basically Available:原則、可用性

  • 基本的にいつでも利用できる。
  • 利用できない時もある。

Soft State:やわらかい状態

  • 常に整合性を保っている必要はない。
  • "Eventual Consistency" と近い考えかも。

Eventual Consistency:結果整合性

  • 結果的に整合性が保たれればOK。
  • 一時的な遅れを許容する。



補足

CAP定理

「RDBMS」と「NoSQL」の比較 - まさわん商店。~豚肉卸売問屋直営店~

  • 分散DBにおいて、同時に以下3つは保証できない。

    • Consistency:一貫性
    • Availability:可用性
    • Partition-tolerance:分断耐性
  • RDSMS => CA

  • NoSQL => CP or AP



以上