Database Excellence ステージ
ミッション
積極的なヘルス管理、卓越したオペレーション、戦略的なイネーブルメントを通じて、GitLab のデータベースを確実に稼働させ続けます。私たちは、飽和ポイントを特定して緩和することでオペレーションの余力を維持し、自動化されたスケーラブルなプロセスでインフラを運用し、チームが持続可能な形で機能を構築できるツールとフレームワークを提供します。主な焦点は GitLab.com ですが、セルフマネージドのお客様にも役立つデータベースヘルスフレームワークとツールを提供するように範囲を拡大しています。
ステージのリーダーシップ
| Name | Role |
|---|---|
Alex Ives | Backend Engineering Manager, Database |
Raghu Sontam | Principal Database Engineer, Database |
グループ
このステージは以下のグループで構成されています。
Database Architecture
Database Architecture グループは、データ配置のための意思決定フレームワーク、データ増加のコントロール、すべてのデータストアにわたるデータベースレビュープロセスの調整を提供することで、チームがデータを使って持続可能な形で構築できるようにします。
優先事項:
- チームが持続可能なデータアーキテクチャの意思決定を行えるようにする
- データベースのパフォーマンス問題が本番環境に到達する前に防止する
- データライフサイクルのベストプラクティスを確立し維持する
Database Health
Database Health グループは、飽和ポイントのシフトレフトでの特定を含め、GitLab.com とセルフマネージドの両方のデプロイメントでデータベースを健全に保つためのモニタリング、オブザーバビリティ、ヘルスフレームワークを提供します。
優先事項:
- データベースの飽和ポイントを積極的に管理することでオペレーションの余力を維持する
- すべてのデプロイメントタイプにわたってデータベースのヘルスを可視化する
- データベースのリソース利用とコスト効率を最適化する
Database Automation
Database Automation グループは、GitLab の Postgres データベースをスケールで運用しやすくする自動化フレームワーク、ツール、テンプレートを所有しており、手動の個別プロセスを標準化された反復可能な自動化に置き換えます。3 つのチームすべてが自動化に貢献しますが、Database Automation がフレームワークを所有し、インフラ変更の計画負荷を管理します。
優先事項:
- 手動のデータベース運用を標準化された自動化プロセスに置き換える
- データベースのプロビジョニング、設定、アップグレードのための再利用可能なツールを構築する
- デプロイメントタイプを横断して信頼性が高く反復可能なデータベース運用を実現する
以前のチーム
以前は、このステージは Database Frameworks と Database Operations の 2 つのチームで構成されていました。これらのチームは本番データベースシステムをカバーする非常に大きく重複した範囲を持っていましたが、自由に使えるツールが異なっていました。これにより、チームは 2 つの点で困難を抱えていました。同じ目標に対して異なるツールで異なるプロジェクトを進めてしまうことと、各チームが合理的に計画したり達成したりできる以上の範囲を抱えていたことです。
FY27 の Q1 に、私たちはいくつかのことを達成するためにチームを現在の構造に再編成しました。
- プロジェクトや領域の間を行き来することによる疲労を防ぐために、チームの範囲を狭める
- チームが現在のサイズの制限を超えて成長できるように、より多くのマネジメントサポートを提供する
- セルフマネージドのお客様に影響を与えるトピックを含めるように、部門全体の範囲を拡大する
Database Frameworks
Database Frameworks グループは、データベースシステムとインターフェースして通信する Rails アプリケーションコードを管理していました。
Database Operations
Database Operations グループは、GitLab.com の PostgreSQL データベースを支えるインフラと自動化を管理していました。
私たちの働き方
Database Excellence 内の各チームは、バックエンドエンジニアとリライアビリティエンジニア(SRE/DBRE)の混成で構成されています。バランスはチームによって異なり、Database Architecture と Database Health は主にバックエンドエンジニア、Database Automation は主にリライアビリティエンジニアですが、すべてのチームに両方の専門分野が含まれています。
各チームは明確な重点領域を持っていますが、いくつかの責任はステージ全体で共有されています。データベースレビューは Database Architecture が調整しますが、3 つのチームすべてのメンバーが担当します。オンコールのローテーションはステージ全体のリライアビリティエンジニアから編成されます。飽和の緩和やインシデント対応といったオペレーション上のニーズは、単一のグループが所有するのではなく、すべてのチームに分散されています。インフラ管理とデータベースのアップグレードもチーム間で共有されています。3 つのグループの地域分布(AMER、EMEA、APAC にまたがる)により、フォロー・ザ・サンのカバレッジが可能になるためです。この共有モデルにより、オペレーションの知識が幅広く保たれ、単一のチームがボトルネックになることがありません。
支援の依頼
緊急事態、サポートのエスカレーション、責任を持つチームの特定を含む、データベースの問題に関する支援を得るための完全なガイドについては、データベースの問題に関する支援を得るを参照してください。
インシデントのエスカレーション
データベースインシデントのエスカレーションは、オンコールのルーティングに incident.io を使用します。
- 範囲: Incident Manager On Call、Engineer On Call、Security チームが提起した GitLab.com の S1 および S2 本番インシデント。GitLab Dedicated のサポートはコンサルティング的です。セルフマネージドのサポートは裁量的で、ケースバイケースで評価されます。
- エスカレーション: インシデントの Slack チャンネルで
/inc escalateを使用します。緊急でない問題については、トリアージローテーションを使用するか、#s_database_excellenceに投稿します。 - 対応: ベストエフォート、現地タイムゾーン、平日のみのカバレッジ(24/5)。オンコールエンジニアは、コンサルティング的な立場で主題の専門家として参加します。
- プロセスの詳細: 対応手順とシャドーイングの指示については、完全なエスカレーションプロセスを参照してください。
リライアビリティ関連の依頼
TBD
Tier-2 オンコール
Database Excellence オンコール は Tier-2 ローテーションです。
24x5 のカバレッジ体制で、チームのキャパシティにより 05:00 - 07:00 および 22:00 - 23:00 がローテーションにおける既知のギャップです。
長期的な Stable Counterpart またはレビュアーの依頼
安定したカウンターパートやレビュアーといった長期的な依頼は、ステージレベルで処理されます。これらの依頼は カウンターパート依頼 として提出してください。
トリアージローテーション
Database Excellence には毎週のトリアージ Issueがあり、この Issue は自動化によって毎週自動的に作成され、Database Excellence の入力と継続的なモニタリングが必要なさまざまなセクション(例: DB の飽和、テーブルサイズのモニタリングなど)を構築します。
これは Database Excellence ステージのバックエンドエンジニアと SRE が担当します。 彼らは責任を分担し、必要に応じて適切な担当者(つまり、アプリケーション関連の項目は BE、インフラ関連の項目は SRE)をタグ付けします。
Note
次のステップ: トリアージ Issue 内のセクションはbackend、infra、shared に分類されます。これにより、アサインされた DRI が同じ Issue をトリアージする必要がなくなります。計画プロセス
TBA
データベース関連の問題でヘルプを得る
Database Automation チーム
Database Operations チーム
データベースアーキテクチャチーム
Database Framework グループ
データベースステークホルダー
c955a93f)
Alex Ives
Raghu Sontam
Alexander Sosna
Imanpal Singh
Leonardo da Rosa
Maxime Orefice
Panos Kanellidis
Prabakaran Murugesan
Vamshidhar Poralla
Krasimir Angelov
Mei Yang
Niko Belokolodov
Rafael Henchen
Simon Tomlinson
Manager, Infrastructure
Biren Shah
Matt Kasa
Jon Jenkins
Prashans Mistry
Amrita Sinha Mohapatra