LoginSignup
2
3

More than 3 years have passed since last update.

Amazon DocumentDBのオンラインセミナー受けてみた

Last updated at Posted at 2019-08-06

AWS Black Belt Online Seminar Amazon DocumentDB」の自分向けメモ
DocumentDB知ってるけど使ったことない......レベルの人向け

ドキュメント指向DBとは

  • クライアント、アプリ間はJSON、アプリとDBはテーブルで変換が必要
  • JSON-likeで保持することでORマッパーの利用も限定的になる
  • クライアントからDBまで一気通貫でデータ連携できる
  • 柔軟性のあるスキーマ、インデックス
  • Javascriptで表現可能なクエリ
  • 開発を高速にする

概要

既存の課題

  • セットアップが大変
  • 管理が大変
  • スケールラビリティ
  • セキュリティの担保
  • バックアップの整合性

特徴

  • 秒間100万リクエスト
  • 15台のリードレプリカ
  • 数分でスケールアップ
  • オートスケーリング

フルマネージド

  • 従量課金
  • 自動フェイルオーバー
  • S3へのバックアップ
  • データ冗長

MongoDBとの互換性

  • MongoDB driverやツールが利用可能

セキュリティ

  • VPC内
  • 暗号化
  • 最適化されたデフォルト設定値
  • 第三者の認証

バックアップ

  • 性能影響がないバックアップ
  • 最大35日のポイントインタイムリカバリー
  • 35日以上はスナップショット取得で保存可能

概要まとめ

  • JSON-likeなデータストア
  • MongoDBとの互換性
  • 高可用性
  • 高パフォーマンス

アーキテクチャ

コンピュートとストレージの分離

  • 個別にスケールリング可能

6コピーとクオラムによるデータの堅牢性

  • 3つのAZに2つずつコピーする
  • AZが障害になっても、問題なし

エンドポイント

  • クラスタエンドポイント:書き込み用
  • リーダーエンドポイント:読み込み用

障害復旧

  • 他インスタンスにフェイルオーバー

バックアップ

  • S3にバックアップ
  • 性能影響のないストリーミングバックアップ

MongoDBの構成と異なり、シャーディングは不要

  • 読み込みスケール:15代のリードレプリカ
  • 書き込みスケール:インスタンスのスケールアップが容易
  • ストレージスケール:64TBまでストレージ自動拡張

使い方

サービス概要

  • DBクラスタ
    • マスタとリードレプリカをひとめまとめにしたもの
  • クラスタエンドポイント
    • フェイルオーバーが発生しても常にマスタを参照する
  • リーダーエンドポイント
    • リードレプリカ群を指し示す

暗号化

  • 通信の暗号化
    • TLS対応
    • セキュリティグループによるアクセス制御
    • IAMポリシー
  • 保存データの暗号化
    • AES-256を使用
    • KMSを使用

監査ログ

  • Audit logをCloudWatch Logsに直接転送可能

モニタリング

  • CloudWatchメトリクスを収集
  • クエリチューニングやスケールアウト、アップを判断できる

使い分け

RDSを選ぶ場合

  • トランザクションあり
  • 金融、認証などの事前に定義されたスキーマに従う
  • OSS利用時

DynamoDBを選ぶ場合

  • スケーラブル

移行パターン

  • ダンプツール
    • MongoDB標準ツールだけで可能
    • 停止時間は長い
  • DMS(Database Migration Service)を活用
    • 停止時間は数分レベル
    • フルロードが終わるまで時間がかかる
  • ハイブリッド
    • アプリ停止時間は短い
    • 手順は複雑

料金

  • インスタンス
    • サイズ×時間
  • I/Oカウント
    • リクエスト数
  • ストレージ
    • 容量×月
  • バックアップ
    • 容量×月

まとめ

  • DBの選択肢が増える
  • クラスタ運用なしに堅牢かつ高速なドキュメント指向DBの利用が可能
2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3