スポンサーリンク
データ構造とスキーマ定義言語 (DDL)

【実務・中級編】 DBD生成(DBDGEN) – 階層型DBMS

DBD生成(DBDGEN)の極意:物理と論理の境界線を支配せよこんにちは。チーフアーキテクトの私だ。今日のコードレビューで、また「なんとなく動く」だけの場当たり的なDBD(Database Description)定義を見かけた。「なぜこの...
Cloud Spanner

【実務・中級編】 データ局所性最適化 – Cloud Spanner

【Cloud Spanner極限最適化】データ局所性(Data Locality)を支配し、ネットワーク転送を撲滅せよこんにちは。テックリードの私だ。今日のコードレビュー、あるいは設計レビューで、君たちはまた「なんとなくインターリーブ(In...
NoSQL

【テクニカル・上級編】 Luaスクリプト – Redis

Redis Luaスクリプト:アトミシティの代償と「単一スレッド」の深淵多くのエンジニアが「RedisのLuaスクリプトは便利だ」というレベルで止まっている。しかし、システムが極限の負荷にさらされたとき、その実装が「劇薬」にも「特効薬」にも...
PostgreSQL

【テクニカル・上級編】 cursor_tuple_fractionの調整 – PostgreSQL

「最初の一歩」でプランナを騙すな――cursor_tuple_fractionが隠し持つ最適化の深淵PostgreSQLのクエリプランナは、基本的に「全行をフェッチする」という前提で最適化を行います。これは理にかなっています。データベースの...
データ構造とスキーマ定義言語 (DDL)

【実務・中級編】 PSB生成(PSBGEN) – 階層型DBMS

PSBGENの深層:アプリケーション要件をDBMSの物理構造に縛り付けるなこんにちは。チーフアーキテクトの私だ。今日のコードレビューで、また「全セグメントが見える巨大なPSB」を平然と定義しているプルリクエストを見かけた。「とりあえず動くか...
Cloud Spanner

【実務・中級編】 スナップショット読み取りタイムスタンプ – Cloud Spanner

Cloud Spannerの真価:「スナップショット読み取りタイムスタンプ」を極限まで使い倒す設計論こんにちは。テクニカルリードの私だ。今日のコードレビューで、あるジュニアエンジニアが書いたクエリを見て思わず天を仰いだ。「過去のデータが欲し...
NoSQL

【テクニカル・上級編】 Redisトランザクション (MULTI/EXEC) – Redis

Redisトランザクションの深淵:MULTI/EXECと楽観的ロックの「真の制約」を解剖するRedisのトランザクションは、しばしばRDBMSのACID特性と混同される。しかし、アーキテクトとして断言しよう。Redisの`MULTI/EXE...
PostgreSQL

【実務・中級編】 cursor_tuple_fractionの調整 – PostgreSQL

「FETCH FIRST 10 ROWS」でクエリが遅い? PostgreSQLの隠れた調整弁 `cursor_tuple_fraction` の話やあ。最近、PostgreSQLのパフォーマンスチューニングでこんな経験はないかな?「アプリ...
データ構造とスキーマ定義言語 (DDL)

【実務・中級編】 スパース索引(Sparse Indexing) – 階層型DBMS

階層型DBMSの極意:スパース索引(Sparse Indexing)による物理層の支配こんにちは。チーフアーキテクトの私だ。今日のコードレビュー、あるいは昨日のデータベース設計レビューで、君たちはまた「すべてのレコードにB-Treeのインデ...
Cloud Spanner

【実務・中級編】 読み取り専用トランザクション最適化 – Cloud Spanner

Cloud Spanner 読み取り専用トランザクションの極意:ロックフリーの世界で秒間数十万クエリをさばく設計最適化こんにちは。テクニカルリードの私だ。今日のコードレビュー、あるいはアーキテクチャ設計レビューで、こんなクエリやトランザクシ...
スポンサーリンク