はじめに
今回からは、2021年に公開された論文「Napa: Powering Scalable Data Warehousing with Robust Query Performance at Google」を元にして、Google社内で利用されている、Napaと呼ばれるデータウェアハウスシステムを紹介していきます。Napaは、さまざまなアプリケーションがリアルタイムに生成するデータをストリーミングで受け取り、SQLで分析可能にするためのデータウェアハウスシステムです。前身となるシステムからの置き換えを経て、2021年時点で、数年間の利用実績があるシステムです。
Napaの役割と基本構成
Napaは、Google社内のさまざまなアプリケーションチームが共有で利用するデータウェアハウスシステムです。アプリケーションがリアルタイムに生成するログデータをストリーミングで保存して、最新のデータをなるべく短時間で分析できるようにすることがその目的です。Napaもまた、その他のGoogleのデータ処理システムと同様に、並列分散処理システムとして設計されていますので、処理に使用するリソースを増やす事で、次の時間を短縮することができます。
(1) 最新のデータが利用可能になるまでの待ち時間
(2) クエリーの応答時間
しかしながら、使用するリソースを増やせば、そのために必要なリソースのコストも増加します。Napaを利用するそれぞれのプロジェクトチームは、リソースコストとのトレードオフを考えながら、(1)(2)に対する性能要求をカスタマイズできるように設計されています。Napaは、このようなカスタマイズを可能にするために、図1の3つの段階に分けてストリーミングデータを処理します。
この続きは以下をご覧ください
(リンク »)
お問い合わせにつきましては発表元企業までお願いいたします。