スポンサーリンク
NoSQL

【テクニカル・上級編】 キーバリューストアの概念 – Redis

Redisの深淵:単なるKVSという「誤解」を解く、データ構造の物理レイヤ「Redisはただのキーバリューストア(KVS)である」。もし君がそう定義しているなら、今すぐその認識を捨てろ。それは、Ferrariを「タイヤが4つ付いた移動手段」...
PostgreSQL

【テクニカル・上級編】 GEQO (遺伝的クエリ最適化) – PostgreSQL

迷宮の探索者:PostgreSQLのGEQOと、最適化の「コスト」を巡る物語PostgreSQLを長く触っていると、必ずと言っていいほど「悪夢のようなクエリ」に出会うはずです。数千行に及ぶ巨大なテーブルが10個、20個と複雑にJOINされ、...
データ構造とスキーマ定義言語 (DDL)

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

REPL(Replace)呼び出しの深層:階層型DBMSにおける「その場書き換え」の呪縛と実務解チーフアーキテクトの私だ。コードレビューの場で、若手エンジニアが「リレーショナル脳」のまま階層型DBMS(IMS DBやその系譜を引く超高速トラ...
Cloud Spanner

【実務・中級編】 分散クエリ実行プラン – Cloud Spanner

分散クエリ実行プランの深層:Cloud Spannerオプティマイザを飼いならす技術テックリードの私だ。本日のコードレビュー、あるいは設計レビューの場において、Cloud Spannerのクエリパフォーマンスについて議論しよう。「なぜこのク...
NoSQL

【テクニカル・上級編】 インメモリデータストアの特性 – Redis

Redisの神髄:メモリ・レイテンシ・そしてアーキテクチャの極致多くのエンジニアは、Redisを「高速なKVS」と呼ぶ。それは半分正解で、半分は本質を見誤っている。Redisの真の価値は、単にメモリにデータを置くことではない。「計算機資源の...
PostgreSQL

【実務・中級編】 GEQO (遺伝的クエリ最適化) – PostgreSQL

「なあ、ちょっといいか? 今日のDBチューニングの件なんだけどさ。」現場でPostgreSQLをいじっていると、一度はぶつかる壁があるんだよね。「結合(JOIN)するテーブル数が多すぎて、クエリがいつまで経っても返ってこない」っていうあの現...
データ構造とスキーマ定義言語 (DDL)

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

階層型DBMSの深層:DLET呼び出しと「削除連鎖」の非情なるメカニズムこんにちは。チーフアーキテクトの私だ。今日のコードレビュー、あるいは基本設計レビューで、また君たちは「とりあえずセグメントを消せばいいや」という甘い認識でDLET(De...
Cloud Spanner

【実務・中級編】 2相コミット(2PC) – Cloud Spanner

Cloud Spannerの2相コミット(2PC):分散トランザクションの深淵とその手懐け方こんにちは。テクニカルリードの私だ。今日のコードレビュー、あるいはアーキテクチャ設計レビューで、こんな質問を受けたとしよう。「複数スプリット(シャー...
NoSQL

【テクニカル・上級編】 Redisの概要 – Redis

Redisの深淵:インメモリ・ストアの解剖学とアーキテクチャの真実「Redisはただの高速なキーバリューストアである」。もし君がそう思っているなら、それはRedisの表面を撫でているに過ぎない。Redisの真髄は、ネットワークI/O、メモリ...
PostgreSQL

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

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