学習ロードマップ
RDB との違いから入り、ドキュメント DB・KVS・グラフ DB の使い所を見極める力を養うロードマップ。MongoDB と Redis を中心に扱う。
このロードマップが扱うもの
このロードマップは、RDB は使い慣れているが NoSQL を採用する場面に自信がないバックエンドエンジニアを対象にしています。学び終えたときには、ドキュメント DB(MongoDB)、KVS(Redis)、グラフ DB の特性を理解し、用途ごとにデータモデルとアクセスパターンを選べる状態を目指します。
このロードマップの全体像
このロードマップは、RDB は使い慣れているが NoSQL を採用する場面に自信がないバックエンドエンジニアを対象にしています。学び終えたときには、ドキュメント DB(MongoDB)、KVS(Redis)、グラフ DB の特性を理解し、用途ごとにデータモデルとアクセスパターンを選べる状態を目指します。
1. RDB と NoSQL の違いを整理する: スキーマ柔軟性、スケール戦略、一貫性モデル、トランザクションの扱いを対比します。 2. MongoDB のデータモデリング: 埋め込み vs 参照、アクセスパターン駆動の設計、インデックス、アグリゲーションパイプラインを学びます。 3. Redis の代表的ユースケース: キャッシュ、セッション、レートリミット、キュー、Pub/Sub、ソート付きセットなど、データ構造の特性を活かした使い方を押さえます。 4. グラフ DB と他の選択肢: 関係性が主役の領域に対するグラフ DB の強み、時系列 DB や検索エンジンとの棲み分けを知ります。 5. 一貫性・スケール・運用: レプリケーション、シャーディング、バックアップ、フェイルオーバーの考え方と限界を整理します。 6. 採用判断とアーキテクチャ: RDB と NoSQL を組み合わせるアーキテクチャ、マイクロサービス単位でのストア選択の判断軸を身につけます。
NoSQL は「なんでも速い」わけではなく、アクセスパターンに合わせて設計しないと、RDB より遅く高コストになることもあります。スキーマレス = 設計しなくて良い、ではなく、アプリ側で不変条件を守る責任が増えます。Redis は永続化・メモリ・障害時挙動を理解しないとデータ消失の原因になります。周辺では、RDB と SQL、分散システム基礎(CAP、レプリケーション、コンセンサス)、キャッシュ戦略、データモデリング、クラウドのマネージド DB、監視と運用、コスト管理を並行して押さえておくと、適材適所の判断がぶれなくなります。
ロードマップ