Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

事業を横断してデータベース運用を支援するビズリーチの「DBRE(Database Reliability Engineering)」チーム

BizReach Tech Blog 第5回

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

 本連載では、株式会社ビズリーチのエンジニアが、急成長を続ける事業の中で得られた実践的なノウハウをつづります。ビズリーチでは横断組織としてDBRE(Database Reliability Engineering)チームを発足しました。第5回となる今回は、チーム発足の意図と日本ではあまり聞き慣れないDBREについて紹介したいと思います。

目次

DBREとは?

 「Database Reliability Engineering(DBRE)」は、日本語にすると「データベース信頼性エンジニアリング」となります。Site Reliability Engineering(SRE)は一般に広く使われるようになりましたが、DBREに関しては海外ではオライリー本が発売されていますが、日本ではあまり聞かない名称だと思います。

 DBREの主な役割と求められる能力として挙げられているのが、

  • Educator and Mentor(開発チームに対する教育)
  • Platform Builder(プラットフォーム構築)
  • Force multiplier(自律化、自動化推進による生産性向上)
  • Operations Expert(データストア運用のスペシャリスト)
  • t-shaped(DB・データストアへの深い知識に加え他分野のスペシャリストと分野)

を超えてコラボレーションし、自分以外の専門知識を適用するといったものです。

 我々は事業においてデータストア層(DB)は非常に重要だと考えています。データストア層が良くないとデータ登録・取得の処理が複雑化し、レスポンスが悪くなるなどアプリケーションにも、影響を及ぼします。そのため、DB(設計)の問題を解消するためには、DBもアプリケーションも修正する必要があります。

 またデータストア層がプロダクトの可用性、信頼性、保守性の重要なファクターを占めていて、これは事業が成長し長期の運用になればなるほど顕著になります。お客様に安心してサービスを使っていただくためには、データストアおよびデータの信頼性・可用性が大事になってきます。

DBAとDBREの違い

 今までのDBAとの違いについてですが、DBAはその名のとおりのデータの管理者、門番といったイメージが強いですが、DBREはデータストア教育者でありメンターでありプラットフォーマーあると定義されています。

DBA DBRE
データベースのAdministrator(管理者) Reliability Engineering(信頼性エンジニア)
Platform Builder(仕組み化によってデータを守る)
「データ」の最後の門番 開発チームへのデータストアの技術知見のメンター
データを蓄積する 運用のエキスパート
DBのスペシャリスト エンジニアリングチームと協力して課題解決する

 業務のイメージとしては、

  • 信頼性と再利用性の高い(resilient)データストアを開発し、プロビジョニング用のコンポーネントを開発チームに提供する
  • チームの作業を支援するためのプラクティスと知識の提供
  • SLOを確実に達成できるように、データアクセスとストレージの微妙な違いを理解して教える(RDB/NoSQLでのデータ構造の違いなど)
  • データストアのトラブルシューティング、リカバリーの専門知識を持って開発チームを支援する
  • セキュリティなどの担保

などが挙げられます。

 感覚としては、データストア領域でのSRE、DBA+Infrastructure as Code(コード化・自動化の実現)といった概念になるかもしれません。

 まとめると、開発チームがデータストアを正しく扱えるように導き、データストアにかかわる作業の自律化、自動化、再利用性を推進することで開発チーム全体の生産性向上させながらデータの信頼性も向上させる、ということです。


  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

バックナンバー

連載:BizReach Tech Blog
All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5