データレイク編 第7章 / 全11章
DWHとレイクハウスとは
Data Warehouse ・ Lakehouse
整理された倉庫と、湖のいいとこ取りポイント
- DWH:整った表データを、SQLで高速に集計するための置き場
- レイクハウス:データレイクのファイルに、表としての管理機能を足したもの
- いまは、レイクとDWHを1つにまとめるレイクハウス型が主流になりつつある
名前の由来
DWHは整理整頓された倉庫。レイクハウスは、湖(レイク)の安さと自由さに、倉庫(ハウス)の使いやすさを足したもの。
仕事の現場では
くわしく(正確な話)
- DWHは分析向けに列指向で保存し、大量の集計を高速に行う。
- 分析用の表は、数値の「ファクト」と、切り口の「ディメンション」に分けて設計する(スタースキーマ)。
- Delta Lake・Apache Icebergなどのテーブル形式が、レイクのファイルに更新・削除・履歴管理(タイムトラベル)をもたらした。
- 代表的なサービスは BigQuery・Amazon Redshift・Microsoft Fabric・Snowflake・Databricks。
うまれ:DWHの考え方は1990年ごろビル・インモンが広めた。レイクハウスは2020年ごろDatabricksが提唱。
この章の用語(意味と語源)
- DWH(データウェアハウス) Data Warehouse
整ったデータを、SQLで高速に集計するための分析用の置き場。
覚えておく:整理済み / SQL / 高速集計
語源data(資料)+ warehouse(倉庫)。ware は「品物」。
- レイクハウス Lakehouse
データレイクに、DWHのような表の管理機能を足したもの。
安いオブジェクトストレージにデータを置いたまま、更新・削除・履歴管理・高速なSQLができます。
語源lake(湖)+ warehouse の house。湖のほとりの家、という意味も掛けた造語。
- Delta Lake / Apache Iceberg テーブル形式
Parquetファイルの集まりを、1つの「表」として正しく管理するための仕組み。
どのファイルが最新か、誰がいつ変えたかを記録し、ACID(全部成功か全部取り消し)の更新や履歴管理を可能にします。
語源delta(三角州:川が湖や海に注ぐところ)。iceberg(氷山:見えている部分の下に大量のデータが眠る)。
- タイムトラベル Time Travel
表の「過去のある時点」の状態を読んだり、元に戻したりできる機能。
誤ってデータを消しても、昨日の状態に戻せます。
覚えておく:例:VERSION AS OF 1
語源time(時間)+ travel(旅)。
- スタースキーマ Star Schema ・ ファクト / ディメンション
分析用の表を「数値(ファクト)」と「切り口(ディメンション)」に分けて、星形につなぐ設計。
売上のファクト表を中心に、日付・店舗・商品のディメンション表が星の先のように並びます。
語源star(星)+ schema(形)。fact は「事実」、dimension は「次元・寸法」。