科目A-2(多肢選択式・四肢択一、25問)
大量データを扱うシステムでシャーディング(水平分割)を導入する際の設計の進め方として、最も適切な順序はどれか。
- A各シャードへのデータ配置を完了させてから、後からパーティションキー(シャーディングキー)を決定する
- Bアプリケーションの実装を完了させてから、システム運用開始後にパーティションキーを決定する
- ✓パーティションキー(シャーディングキー)を選定する → そのキーに基づくデータ分散方式(レンジ方式・ハッシュ方式など)を決定する → 運用時のリバランス(再分散)方針を検討する
- D障害復旧の手順を確立してから、パーティションキーとデータ分散方式を決定する
解説
シャーディング設計では、まずアクセスパターンを踏まえてどの列をシャーディングキーとするかを選定し、次にそのキーをどう各シャードへ振り分けるか(レンジ方式かハッシュ方式かなど)の分散方式を決め、最後に将来のデータ増加に備えたリバランス(再分散)方針を検討するのが一般的な流れである。データ配置や実装を先に完了させてからキーを決めるのは順序が逆である。
根拠シラバス「データベース技術の動向」分散データベース・データ資源管理の技法(シャーディング設計)