レイクハウスとは
これまでの記事でも触れているように、レイクハウスは従来のデータプラットフォームの課題を解決するために、データウェアハウスとデータレイクの長所を組み合わせた新たなデータプラットフォームである。以下の図に示しているように、レイクハウスではテーブルなどの「構造化データ」、ログやJSON(JavaScript Object Notation)のような「準構造化データ」、画像・音声・テキストのような「非構造化データ」といったすべてを格納することが可能だ。さらに、データウェアハウスを活用して行われていたビジネスインテリジェンス(BI)や、データレイクの主なユースケースであるデータサイエンスや機械学習の取り組みなどを一つのプラットフォームで行える。
レイクハウスの構成要素
レイクハウスのアーキテクチャを以下に示す。一番上の緑の箱は、ユースケースあるいはペルソナである。このように、データ×AIという取り組みにおいて、考えつくであろうすべてのユースケースをカバーしているのがレイクハウスの特徴だ。
レイクハウスにおいては、データをクラウド上のオープンなデータレイクに格納することでデータの種類やサイズを問わず「そのままの状態」で保持することが可能である。これにより、ベンダーロックインを回避できるだけでなく、将来的に取り組むであろうユースケースに備えて柔軟にデータを蓄積できるのだ。
しかし、データレイクには上述の長所がある一方で、以前の記事でも触れたようにデータ品質やパフォーマンスの課題がある。どんなデータを格納できたとしても、そのままではただの“ゴミ”だらけになってしまう。そのため、従来のデータレイクは「データスワンプ(沼)」と揶揄されることもあった。
レイクハウスでは、この課題を解決するために「ストレージ層」と「ガバナンス層」を導入している。このアーキテクチャはDatabricksやGoogleの「BigLake」などでも共通している。
ストレージ層
データレイク上にストレージ層を存在させることで、データレイクの長所はそのままで高い性能やデータ品質を維持することが可能となる。ストレージ層の製品としては「Delta Lake」や「BigQuery」などが挙げられ、堅牢性、パフォーマンス、バージョン管理、トランザクション保証のような機能を提供している。
ガバナンス層
データガバナンスは、組織内のデータをセキュアに管理するために実装されるポリシーとプラクティスをまとめ上げるものである。データの量と複雑性は増加し続けており、コアとなるビジネス成果を確実なものとするために、多くの企業がデータガバナンスを必要としている。
このようなデータガバナンスを実現するのがガバナンス層だ。代表的な製品に、Databricksの「Unity Catalog」やGoogle Cloud Platformで提供されている「Dataplex」が挙げられる。レイクハウスで管理されるファイル、データベース、テーブルなどのデータ資産のメタデータ、セキュリティの一元管理を可能にし、さらにはデータリネージ(データの依存関係の管理)、データ共有のような高度な機能などが提供されている場合もある。
また、レイクハウスにおいて、データやAIに関わる様々なユースケースを実現するには、多くのペルソナがコラボレーションしながらプロジェクトを進める必要がある。特に最近ではリモートワーク環境下では顕著だ。
従来のツールやプラットフォームでは、各ペルソナが得意とするツールを活用することがほとんどで、リモートワークを行いながら迅速なコラボレーションを行うことは困難だった。結果として、データサイエンティストが期待していたデータが用意されていなかったり、データサイエンティストが構築したモデルが他の人にとってブラックボックスになっていたり、ビジネスアナリストが可視化に使用したデータが古くなっていたりなどの問題が少なくなかった。このような問題を解決するために、レイクハウスにはオンラインでのコラボレーションを促進するための機能が求められているのだ。