技術は凄いわ、プレゼン上手いわで、感想は「なんだただの天才か」。
スライドが公開されてるのでそっちを見た方が正確です。
けど、一応メモったものを載っけておきます。
NoSQLとは?
スケーラビリティ
- 利用者や仕事の増大に適応できる能力、拡張性
スケールアップ
- 高コスト、見積り
スケールアウト
- 負荷に見合った価格
- 性能向上はソフトに依存
- 最小限のコストで拡張
- 負荷が増えたら拡張
サーバーの台数が増えても可用性を維持する
- 台数が増えると可用性がおちる
- それぞれを二重化する
サーバーの台数が増えても運用コストが増大しない
CAP定理
- Availability サービスが(快適に)利用できる
- Consistency Atomic に書き換え可能
- Partitioning tolerance どんな故障がおこってもまちがった結果を返さない
Consistent Hashing
- ノード追加時 set はいいけど get は前のサーバから。
- double-hash-space
kumofs
- 耐障害性
- 動的な運用
- 超高速
Manager Server群を管理
- Server 実際にデータを保存
- Gateway アプリケーションからの要求を Server に中継
Manager は2台とも故障しても大丈夫。ほぼステートレス。
gem install msgpack-rpc
Q: ノードの担当範囲がバラバラ。ノードの単体性能を意識する必要があるか
A: 意識する必要はないように作ってある。実際には64個に分割して配置されるので問題ない