IT用語: データベースレプリケーションとは|読み取り分散と冗長化の仕組み
プライマリDBの変更をレプリカに同期するレプリケーションの仕組み・同期/非同期の違い・活用パターンを解説。
データベースレプリケーションとは
レプリケーションは、1台のデータベース(プライマリ/マスター)への書き込みを他のDB(レプリカ/スレーブ)にリアルタイムまたは非同期でコピーし、複数のDBを同じ状態に保ち続ける仕組みです。読み取り分散と**高可用性(障害時のフェイルオーバー)**の2つが主な目的です。
同期レプリケーションと非同期レプリケーション
| 方式 | 特徴 | 用途 |
|---|---|---|
| 同期 | 全レプリカに書き込み確認後にコミット。データ損失ゼロだが遅い | 金融・決済 |
| 非同期 | プライマリにコミット後、後でレプリカに伝播。速いがデータロスの可能性 | 一般的なWeb系 |
読み取り分散(リードレプリカ)
書き込みはプライマリのみ、読み取りはレプリカに分散することでスループットを向上させます。AWS RDS・Aurora・Google Cloud SQLではリードレプリカを数クリックで追加できます。
アプリ → 書き込み → プライマリDB ─→ レプリカDB1(読み取り専用)
└→ レプリカDB2(読み取り専用)
アプリ → 読み取り → レプリカDB(ロードバランサーで分散)
フェイルオーバー
プライマリに障害が発生した場合、レプリカが自動的にプライマリに昇格(プロモーション)して処理を継続します。RDS Auroraは障害検知から昇格まで約30秒で完了します。
関連する用語 (データベース)
全23件を見るデータベースインデックス(索引)
データベースの検索速度を向上させるためのデータ構造。B木・ハッシュ・全文検索等の種類があり、適切なインデックス設計はクエリパフォーマンスを劇的に改善する。
IT用語: Redisとは|高速インメモリデータストアの仕組みと活用パターン
メモリ上にデータを保存し高速なキャッシュ・セッション管理・Pub/Subを実現するRedisの仕組みと主要データ型を解説。
NoSQL(非リレーショナルデータベース)
固定スキーマを持たない非リレーショナル型データベースの総称。ドキュメント型・キーバリュー型・カラム型・グラフ型などがあり、水平スケーリングと柔軟なデータ構造が特徴。
シャーディング(データベース水平分割)
データを複数のサーバー(シャード)に水平分割して分散させるDBスケーリング手法。1台のサーバーに収まらない大規模データの処理に使われる。モンゴDBやCassandraが得意とする。
SQL
リレーショナルデータベース(RDB)を操作・検索するための標準言語。
IT用語: データベース正規化とは|データの重複をなくすテーブル設計の基本
第1〜第3正規形(1NF・2NF・3NF)を使いデータの冗長性を排除するデータベース正規化の手順を解説。