2012年1月28日土曜日

MongoDB 環境構築(その2: Sharding)。

前回に続き今回は MongoDB の Sharding 環境を構築してみる。
Sharding 環境を構築する事でデータを効果的に分散させて保持し、パフォーマンスの向上を狙う。MongoDB の Sharding では分割用のキーを指定する事でデータが分散して登録される。今回は下記4つの項目を持つログを登録するが、その中で Sharding 用のキーとして {ym, account_id} の2項目を用いる事とする。

登録ドキュメント形式
id ID
uid ユーザID
ymd 年月
timestamp yyyy-mm-dd hh:mm:ss


今回の目標: 3ノードによる Sharding 環境を構築し、データを分散登録する。


2012年1月23日月曜日

MongoDB 環境構築(その1: Replica Set)。

今年明けてすぐに gmail アカウントが乗っ取られるという事態になり復旧するまで google アカウントに紐づいたサービスが全て使用不可となってしまった。
セキュリティは大事だと思った。復旧後すぐに二段階認証を導入しました。


MongoDB の環境構築をする必要に迫らてしばらく MongoDB の勉強をしてみたので記録を残す事にする。
とりあえず3回くらいに分けて下記の順序で環境構築を実施してみたいと思う。
  1. Replica Set
  2. Sharding
  3. Replica Set + Sharding
今回の目標: 3台構成の Replica Set 構築

MongoDB の Replica Set は2台以上のサーバで構成される master/slave の拡張(的な理解)である。Replica Set はフェイルオーバ機能を備えており、Primary サーバが停止した事が検知されると自動的に Secondary サーバが Primary へと昇格する事で障害時にもサービスを自動的に継続し続ける事が可能となる。

フェイルオーバ機能