いつもどおりメモメモ。ちょいちょいにまとめなおしているので、そのままではありません。 適当に随時更新します。
スケールさせるためには
方法論を変えないといけない。 ツールだけ変えてもだめ(RDBMS→KVS)。
Bigtable?
ぶっちゃけHashMap。
- Distributed
- Sorted
- Map(Array) Sorted Mapってなんぞ?
Available Operation
- Get
- Put
- Delete
- Prefix scan(キーに対する検索)
- 前方一致
- Range scan(キーに対する検索)
- 範囲検索 ポイント
- 1つのプロパティに対してしかfilterできない
- 使えるフィルタは
<, <=, ==, =>, >の5つ - OR, INがない
- Joinできない
- 集約関数使えない
Transaction
Single row transaction
- Atomic Put
- Read committed timestamp
- Write journal
- Apply journal
- Update committed timestamp
- Atomic Get
- Read committed timestamp
- Read entity by timestamp
Datastore
parallelでoperationできる。 スケールを出すためには、このParallelをうまく使うことが必要不可欠
- Table
- Get(+Parallel)
- Put(+Parallel)
- Delete(+Parallel)
- Prefix scan(Ancestor query)
- Index
- Prefix scan
- Range scan
Ancestor query
子テーブル(dataset)の操作にしても、親テーブル(dataset)のtimestampを更新したりしないといかん。
Single property index
kind, property name, valueのセットでindexingされる。 もともとsortされているので、orderすると実質selectが走る。
- only equality filters
- only inequality filter(which can only be of a single property)
- no filters and only one sort order on a property composit indexはあるにはあるけど、お勧めしないそうな。
See also
- SRE Kaigi 2026「ベテランCTOからのメッセージ:AIとか組織とかキャリアとか気になることはあるけどさ、個人の技術力から目を背けないでやっていきましょうよ」登壇しました&裏話 #srekaigi
- デブサミ2025夏で登壇しました「AI時代にも変わらぬ価値を発揮したい: インフラ・クラウドを切り口にユーザー価値と非機能要件に向き合ってエンジニアとしての地力を培う 」 #devsumi
- SRE NEXT 2025 アンカンファレンス オブザーバビリティセッション write up #srenext
- 書籍「バックエンドエンジニアのためのインフラ・クラウド大全」出版記念イベントを開催しました
- #isucon 初回から参加しているベテラン選手が40代前半のいま本選当日に向けて準備したこと