本文へ移動

FORWARD DEPLOYED ENGINEER

FDE 基礎読本

Databricks と Claude で身につける、FDE の基礎知識

Databricks学習ガイド

レイクハウスと Delta Lake

Databricks のデータの土台になる Delta Lake の仕組みと、タイムトラベル・MERGE・OPTIMIZE・VACUUM などの基本操作を学びます。

概要

Databricks では、テーブルのデータを Delta Lake の形式で保存するのが基本です。Delta Lake は、クラウドストレージ上のデータファイルに「トランザクションログ」を組み合わせることで、データベースのような ACID トランザクションや、過去の状態へのアクセスを実現します。

データエンジニアの資格では、こうした操作と保守の考え方が、データの変換や最適化の分野の土台になります。

押さえるべきポイント

  1. 一、トランザクションログが変更の履歴を記録する

    Delta テーブルへの書き込みは、すべてトランザクションログ(_delta_log)にバージョンとして記録されます。DESCRIBE HISTORY で、いつ・誰が・どの操作をしたかを確認できます。

  2. 二、タイムトラベルで過去の状態を読む・戻す

    SELECT ... VERSION AS OF(または TIMESTAMP AS OF)で過去のバージョンを読み、RESTORE TABLE で過去の状態に戻せます。誤った更新を取り消すときに使います。

  3. 三、MERGE INTO でアップサートする

    変更データを既存のテーブルに反映するときは MERGE INTO を使います。一致した行の更新と、一致しない行の挿入を、1 つのアトミックな操作で行えます。

  4. 四、OPTIMIZE で小さなファイルをまとめる

    小さなファイルが大量にあると、読み取りが遅くなります。OPTIMIZE はファイルをまとめて(コンパクション)読み取りの性能を改善します。データの配置を工夫する方法として、Z-ORDER やリキッドクラスタリングもあります。

  5. 五、VACUUM で不要なファイルを削除する

    VACUUM は、現在のバージョンから参照されず、保持期間(既定は 7 日)を過ぎたデータファイルを削除します。削除したファイルを必要とする古いバージョンには、タイムトラベルできなくなります。

重要な用語

用語意味
Delta Lakeデータファイルとトランザクションログで、ACID トランザクションやタイムトラベルを実現するテーブルの形式。
トランザクションログテーブルへの変更をバージョンとして記録するログ(_delta_log)。
タイムトラベル過去のバージョンやタイムスタンプを指定して、テーブルを読む機能。
OPTIMIZE小さなファイルをまとめて、読み取りの性能を上げる操作。
VACUUM参照されなくなった古いデータファイルを削除する操作。
リキッドクラスタリングCLUSTER BY でクラスタリングのキーを指定し、データの配置を最適化する仕組み。

おすすめの教材

いずれも公式の情報です。内容は更新されることがあるため、最新の版を確認してください。

問題で確かめる