DB の障害回復とログ・チェックポイント、そして RDB 以外の NoSQL データベースも理解しましょう。
DBがクラッシュしたら、データって全滅しちゃうの?
安心して。
DBにはログとチェックポイントによる回復機能があるの。
障害回復の代表手法は2つ。
{kw('ロールフォワード', 'バックアップ + ログを使い、最新状態まで進める復旧手法')} (バックアップ+ログで最新まで進める)、{kw('ロールバック', 'コミット前の状態に戻す復旧手法')} (未コミットを戻す)。
NoSQLって、RDBと何が違うんですかぁ?
NoSQLは表形式に縛られない、より柔軟なDB群。
文書型 (MongoDB)、Key-Value型 (Redis)、列指向 (Cassandra)、グラフ型 (Neo4j) など色々あるわ。
NoSQLは大規模データや高速な読み書き、柔軟なスキーマが必要な場合に強いの。
一方でACID保証は弱めだから、用途で使い分けることね。
NoSQLの設計原則として{kw('CAP定理', '一貫性・可用性・分断耐性のうち2つしか同時に満たせないという理論')} (Consistency / Availability / Partition tolerance のうち2つしか満たせない) も知っておくとよいわ。
確認クイズ
MongoDBはどのカテゴリのNoSQLデータベースか。
- Key-Value型
- 文書型
- 列指向
- グラフ型
こたえを見る
正解: 2. 文書型
MongoDB は 文書型 NoSQLデータベース。JSON形式の文書をコレクションに格納します。Redisは Key-Value型、Cassandra は列指向、Neo4j はグラフ型です。