はじめに
本書は、データベース管理者(DBA)が次に進むべき道、いわば上級職として、データベースリライアビリティエンジニア(DBRE)に進化するためのフレームワークです。データベース管理者と聞いて何を思い浮かべましたか。それがソフトウェアであれシステムであれ、いままでデータベース管理者と一緒に関わった数々の思い出には、枚挙にいとまがないはずです。
歴史的にデータベース管理者は、データベース(DB)内部に精通し、そこを己の城としました。息をするかのようにオプティマイザやクエリエンジンをチューニングし、パフォーマンスを改善し、システムが望むとおりのデータベースを構築してきました。データベースをもっとうまく運用できることがあれば、何にせよ貪欲に吸収していったのです。その結果、CPUやディスクを巡る負荷分散の効率的な取り回し、CPUの親和性の高め方、そしてストレージサブシステムの効果的な運用法をその身に染み込ませてきました。
データベースのメトリクスの可視化が必要になれば、カギとなるメトリクスのグラフをどのように描画するかに腐心し、アーキテクチャの見直しが迫られたときには、キャッシュの使い方を研究しました。個々のノードの処理性能の限界に直面したときには、シャーディングのような新しい設計を採用することによって限界を超えてきました。DBAはこうした挑戦を通してキャッシュ無効化、データバランシング、そして変更適用のローリング化といった運用テクニックを獲得していったのです。
長い間DBAは自分たちで築きあげた城、つまりDBをテリトリーとし、その番人として生きてきました。DBAが使うツールはほかのエンジニアとは異なります。ハードウェアは、もちろんプログラミング言語も職種によってさまざまです。DBAはSQL、システムエンジニアはPerl、ソフトウェアエンジニアはC++、ウェブ開発者はPHP、ネットワークエンジニアは各々贔屓にしているベンダの言語を使用します。バージョン管理システムは、そこまでばらつきはなく、1種類か2種類にとどまりますが、それでも決してお互いの芝生、つまりレポジトリには足を踏み入れようとはしません。なぜでしょうか? ...
Get データベースリライアビリティエンジニアリング ―回復力のあるデータベースシステムの設計と運用 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.