スポンサーリンク
Cloud Spanner

【実務・中級編】 生成列(Generated Columns) – Cloud Spanner

Cloud Spanner「生成列(Generated Columns)」:単なる便利機能と侮るな、これはクエリ最適化の最終兵器だ設計レビューの場で、よくこんな議論になる。「この計算ロジック、アプリケーション側でやりますか? それともデータ...
NoSQL

【実務・中級編】 トランザクションコマンド – Redis

Redisトランザクションの「嘘」と「現実」:なぜ君の設計はスケールしないのかRedisのトランザクション(`MULTI`, `EXEC`, `WATCH`)について、教科書的な説明はもう十分だろう。しかし、現場のコードレビューでこれらを見...
レガシーDBMS

【実務・中級編】 GNP (Get Next within Parent) 呼び出し – 階層型DBMS

GNP(Get Next within Parent)という「呪縛」と、その制御術現代のエンジニアがRDBのクエリに慣れきった頭で階層型DBMS(IMSなど)の設計を覗くと、決まって「なぜこんな原始的な命令が必要なのか」と首を傾げる。だが、...
Cloud Spanner

【実務・中級編】 列オプション(ALLOW_COMMIT_TIMESTAMP) – Cloud Spanner

Cloud Spannerの「見えない守護者」:ALLOW_COMMIT_TIMESTAMPが支えるデータ整合性の極意Spannerの設計において、「いつデータが書き込まれたか」という問いは、単なるメタデータ以上の意味を持つ。分散データベー...
NoSQL

【実務・中級編】 キー管理コマンド – Redis

Redisキー管理:その「当たり前」の背後に潜むパフォーマンスの罠を読み解くRedisを単なる「高速なKVS」と捉えているなら、それは宝の持ち腐れだ。システムがスケールした瞬間、君たちが何気なく叩いたその `DEL` や `KEYS` が、...
レガシーDBMS

【実務・中級編】 GN (Get Next) 呼び出し – 階層型DBMS

GN(Get Next)の真実:階層型DBMSにおける「ポインタの呪縛」と最適化の哲学現場のエンジニア諸君。リレーショナルデータベース(RDBMS)全盛の今、あえて階層型DBMS(IMS等)の深淵を覗こうとする君たちの勇気を称賛する。だが、...
Cloud Spanner

【実務・中級編】 オンラインスキーマ更新 – Cloud Spanner

Cloud Spannerのオンラインスキーマ更新:その「魔法」と「代償」を正しく理解するCloud Spannerを触るエンジニアが最初に驚くのは、「巨大なトラフィックを捌きながら、無停止でスキーマを変更できる」という事実だろう。従来のR...
NoSQL

【実務・中級編】 Streamsコマンド群 – Redis

Redis Streams:なぜ「ただのメッセージキュー」として使うと地獄を見るのかRedisを単なるキャッシュやKVSとしてしか見ていないエンジニアが多すぎる。特に`Streams`が登場して以降、Redisは本格的な分散メッセージングの...
レガシーDBMS

【実務・中級編】 GU (Get Unique) 呼び出し – 階層型DBMS

GU(Get Unique)呼び出し:階層型DBMSの「急所」を突く精密射撃術諸君、アーキテクチャの深淵へようこそ。現代のRDB全盛の時代において、階層型DBMS(IMSなど)を扱うことは、さながら「古の魔法」を操るようなものだ。だが、誤解...
Cloud Spanner

【実務・中級編】 インデックスのパーティショニング – Cloud Spanner

Cloud Spannerのインデックスは「ただの索引」ではない:物理分散を制する者がスループットを制すCloud Spannerを触り始めて数年、あるいは大規模プロジェクトの火消しに回った経験があるなら、一度は直面するはずだ。「なぜ、特定...
スポンサーリンク