オープンデータレイク上に広がるデータとAIを活用するためのプラットフォーム
データブリックスの技術スタックは、オープンデータレイク(Microsoft AzureならADLS、AWSならS3、Google CloudならGCSなどのオブジェクトストレージからなるもの)の上で稼働するプロダクトで構成されている。
一般的にデータレイクだけではデータ品質管理が難しくなるので、オープンデータレイク上にロジカルにデータウェアハウス機能を付与した「Delta Lake」、さらに統合セキュリティ、ガバナンス、カタログの機能を持つ「Unity Catalog」を重ねることで、データ環境を固める。
その上で、データサイエンス&AI「Databricks AI」、ETL&リアルタイム分析「Delta Live Tables」、オーケストレーション「Workflows」、データウェアハウス「Databricks SQL」も実現している。これら全体を1つのプラットフォームおよびユーザーインタフェースで提供している。
これらのプロダクトがどう機能するか、処理の流れを表したのが下図のリファレンス・アーキテクチャだ。左側にあるデータソースから、いろいろと加工や処理が流れて右側の分析やアウトプットへとつながる。
今回はプラットフォームの上部にあるETL、オーケストレーション、データウェアハウスからはじまり、次にカタログ、そしてデータサイエンスの順で概要を紹介していく。
ETL、オーケストレーション、ウェアハウス
ここはデータエンジニアの仕事に関わる機能となる。データ処理において、データは収集したRAWデータからETL/ETLで整備し、変換し、分析に適したきれいな形にして、分析ツールや機械学習へと送られる。データエンジニアはこうした一連の処理を遂行するためにパイプラインを整備していく。
データインテリジェンスプラットフォームはAIを活用することで、データエンジニアの仕事を効率化する。例えばデータ処理の調整時にAIアシスタントがコードを修正したり、ほしいデータを取得するためのSQLが分からない時にData Roomsがレコメンドしたりなどだ。
実際に作業する様子を桑野章弘氏が披露した。例えばSQLを編集する画面でエラーが出ていたとする。ここでAIアシスタントを使い「エラーの修正」ボタンを押すと、修正の提案がなされる。ユーザーは内容を確認して、修正を適用する。桑野氏は「ユーザーはAIアシスタントと二人三脚で直していくことができます」と言う。
Data Roomは「こんなデータがほしい」と自然言語で指示するだけでAIがデータを整えてくれる。SQLを書く必要がない。使う時は、まず新しいData Roomを作成して、対象となるテーブルなどを指定する。後はユーザーが自然言語で「国別のユーザー数を出して」「年齢層別にユーザーの内訳を出して」「時系列で解約ユーザーの推移を表示して」と問い合わせればいい。ほしいデータがすぐ手に入る。またどのようなSQLを発行しているかも確認することができるのもメリットだ。