aws memo

AWS関連の備忘録 (※本ブログの内容は個人的見解であり、所属組織及び企業の意見を代弁するものではありません。1年以上古いエントリは疑ってかかってください)

複数のデータセンターにMongoDBを配備する戦略

MongoDB: Strategies for Multiple Data Center Deployment | Architects Zone

MongoDB NY 2012の資料から。

 

これ、普通にオンプレミスやってたら縁遠いけど、AWSだと複数のリージョンをまたがせてすぐに試せるので、グローバルなアプリケーション作る時の参考になるかも。

 

===

例として、3拠点(US,ヨーロッパ,オーストラリア)のユーザにサービス提供するソーシャルネットワークのシステムを考える。

チャレンジングなことは、データの一貫性、ユーザ体験の維持、スケールである。

USにDBがあると遅いのでユーザ体験が悪くなる。

USにR/WのDB, それ以外にROのDBを置くと参照は速くなるが、ユーザのデータは局所的であるはずなので、データローカリティを意識し、グローバルな障害に耐えるようにし、リモートのデータも早く操作できるようにしたい。

MongoDBだと、Replica Setsを各拠点に設置することでクリアできる。

でも、アプリは参照先を意識する必要がある。将来的には GeoAware Shardingができるようになる。シャードキーに、GeoAwareなキーを加えるらしい。