スポンサーリンク
PostgreSQL

【入門編】 GEQO (遺伝的クエリ最適化) – PostgreSQL

データベースの「究極の迷路」をどう攻略する?GEQOという魔法の杖の話こんにちは!データベースエンジニアの日常へようこそ。日々、PostgreSQLとお付き合いしていると、「SQLがなんだか遅いな?」と感じる瞬間に出会うことがありますよね。...
データ構造とスキーマ定義言語 (DDL)

【実務・中級編】 ISRT (Insert) 呼び出し – 階層型DBMS

階層型DBMSの心臓部:`ISRT` 呼び出しのメカニズムと、生き残るための設計哲学こんにちは。チーフアーキテクトの私だ。今日のコードレビューで、誰かが「リレーショナル脳のまま」階層型DBMSのスキーマにパッチを当てようとしていた。……おい...
Cloud Spanner

【実務・中級編】 分散トランザクションプロトコル – Cloud Spanner

Cloud Spannerの分散トランザクション解体新書:2PCとPaxosが織りなす「限界なき整合性」の舞台裏テックリードの私だ。今回のコードレビューで、また「Spannerなら何をやってもトランザクションが安全にスケールする」というフワ...
NoSQL

【実務・中級編】 メモリ割り当てとアロケータ – Redis

Redisのメモリ破綻を防ぐ:アロケータの解剖学とメモリ断片化の極限制御Redisを運用していて「`maxmemory`にはまだ余裕があるはずなのに、なぜかOSのOOM Killerにプロセスが殺された」「レイテンシのスパイクが不定期に発生...
PostgreSQL

【テクニカル・上級編】 temp_buffersの最適化 – PostgreSQL

「なぜか遅い」を解決する。PostgreSQLにおける `temp_buffers` の深淵PostgreSQLのチューニングにおいて、`shared_buffers` や `work_mem` に注力するエンジニアは多い。だが、システムの...
データ構造とスキーマ定義言語 (DDL)

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

【第4回】階層型DBMSの深層:GNP (Get Next Within Parent) の極意とスコープ制御の美学こんにちは。チーフアーキテクトの私だ。今日のコードレビュー、あるいは基本設計レビューで、また「なんとなくGU(Get Uni...
Cloud Spanner

【実務・中級編】 データ配置ポリシー – Cloud Spanner

Cloud Spannerデータ配置ポリシーの極意:物理的制約をハックし、レイテンシとコンプライアンスを支配するこんにちは。テックリードの私だ。今日のコードレビュー、あるいはアーキテクチャ設計レビューで、こんなセリフを耳にして頭を抱えなかっ...
NoSQL

【実務・中級編】 メモリ使用量メトリクス – Redis

---Redisのメモリ指標を「雰囲気」で監視するな:`INFO memory` から紐解くカーネル・アロケータ・OS物理メモリの真実「`used_memory` はまだ上限の60%程度。にもかかわらず、なぜかカーネルの OOM Kille...
PostgreSQL

【実務・中級編】 temp_buffersの最適化 – PostgreSQL

「遅いな…」と思ったらここを見ろ。PostgreSQLの `temp_buffers` チューニングで一時処理を爆速にする方法現場でPostgreSQLを触っていると、必ずと言っていいほどぶつかる壁がある。「なぜか複雑なJOINや集計処理だ...
データ構造とスキーマ定義言語 (DDL)

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

階層型DBMSの深層:GN(Get Next)呼び出しのメカニズムと実務的極意こんにちは。チーフアーキテクトの私だ。今日のコードレビューで、また「なんとなく古い仕様だから」という理由でIBM IMSなどの階層型DBMS(Hierarchic...
スポンサーリンク