メインコンテンツまでスキップ

Time Machine の概要

Time Machine では、テーブルの過去の状態と、2 つの時点の間で何が変わったかを確認できます。誤ったデータを書き込んだ夜間ジョブの調査や、監査担当者に特定の日のデータを示す場面で利用できます。

Time Machine はデータの読み取りのみを行います。特別な SQL は不要で、テーブルを復元したりコピーしたりする必要もありません。

snapshot の仕組み​

テーブルにデータが書き込まれるたびに、Lakehouse は新しい snapshot を保存します。snapshot は、その時点のテーブル全体を固定した読み取り専用のバージョンです。古い snapshot も残るため、いつでも過去の状態に戻って確認できます。

各 snapshot には、書き込まれた日時、書き込みの種類(たとえば append や overwrite)、追加されたレコード数が記録されます。

できること​

タスクわかることページ
snapshot のタイムラインを表示するテーブルがいつ、どのように変更されたか。テーブルの snapshot タイムラインを表示する
過去のデータをプレビューするその時点の行がどのような内容だったか。過去の snapshot のデータをプレビューする
構造を比較するカラム、partition、ファイル、レコード数が変わったか。2 つの snapshot の構造を比較する
データを比較するどの行が追加、削除、変更されたか。2 つの snapshot のデータを比較する

調査の基本的な流れ​

  1. テーブルのタイムラインを開き、数値が変わった snapshot を見つけます。
  2. その直前の snapshot をプレビューして、当時のデータを確認します。
  3. 2 つの snapshot の構造を比較します。短時間で完了し、schema やレコード数が変わったかどうかがわかります。
  4. 2 つの snapshot のデータを比較して、変更された行を正確に特定します。

データの比較は、構造の比較よりもはるかに多くのデータを読み取ります。そのため Time Machine は先にサイズを見積もり、実行前に確認を求めます。

利用できるテーブル​

Time Machine は、snapshot を保持する Lakehouse のテーブル形式のテーブルで利用できます。ビューや他の形式のテーブルには snapshot がないため、Time Machine で開けません。

snapshot がまだない新しいテーブルでは、タイムラインは空で表示されます。比較するには、テーブルに 2 つ以上の snapshot が必要です。

データアクセス権限が適用されます​

Time Machine は、自分のアカウントでデータを読み取ります。Query Editor と同じルールが適用されます。つまり、読み取れるテーブル、表示できるカラム、行フィルター、Data Security のマスクされたカラムが対象です。Time Machine が、自分でクエリできる範囲を超えてデータを表示することはありません。

デフォルトの制限​

制限は、共有の Lakehouse を非常に大きな読み取りから守るためのものです。管理者が変更できます。

制限デフォルト
プレビューで表示される行数1,000
1 回のデータ比較で読み取るデータ量(実行前に見積もり)10 GB
1 回のデータ比較で読み取る行数50,000,000
1 回のデータ比較で返される差分の数10,000
見積もり表示後にデータ比較を実行できる時間5 分
1 回のリクエストの制限時間5 分
同時に実行できるデータ比較の数1

Time Machine を利用できるユーザー​

権限できること権限を持つ role
time_machine:readsnapshot のタイムラインの表示と、過去のデータのプレビュー。portal_admin, data_engineer, data_analyst
time_machine:metadata_diff2 つの snapshot の構造の比較。portal_admin, data_engineer, data_analyst
time_machine:data_diff2 つの snapshot のデータの比較。portal_admin, data_engineer, data_analyst

ポータルの role と権限を参照してください。

次のステップ​