データの保護と共有

Snowflake アーキテクチャ

Emily Melhuish

Technical Curriculum Developer, Snowflake

問題が発生したとき

変形前

  • subscription テーブルには847行あります
DELETE FROM subscriptions
WHERE status = 'inactive';

woopsie.png

変形後

  • subscription テーブルには 0 行あります
  • Snowflake は、すべての変更前のデータの状態を保持します
  • 時間枠の設定

timetravel.png

Snowflake アーキテクチャ

タイムトラベル

  • 保持期間内の任意の時点でデータをクエリする
  • DATA_RETENTION_TIME_IN_DAYSアカウント、データベース、スキーマ、またはテーブル で設定できます(最下位レベルが優先されます)
  • 標準: 1日間のウィンドウが最大データ保持時間です
  • エンタープライズ: 最大90日(エディションおよびオブジェクトルールごと)
  • SELECT クエリ {{4}} に限らない

現在と90日前を示すタイムライン

Snowflake アーキテクチャ

履歴の操作: タイムスタンプとオフセット

  • AT BEFORE(STATEMENT) / BEFORE(STATEMENT)

    • クエリ ID {{2}} を使用して回復を関連付ける
    • その発言 {{3}} の前のデータの状態に戻ります
  • UNDROP

    • たとえば、UNDROP TABLE t
    • 回復可能な間のみ機能します
Snowflake アーキテクチャ

履歴の操作: ステートメントとアンドロップ

  • AT BEFORE(STATEMENT) / BEFORE(STATEMENT)

    • クエリ ID {{2}} を使用して回復を関連付ける
    • その発言 {{3}} の前のデータの状態に戻ります
  • UNDROP

    • たとえば、UNDROP TABLE t
    • 回復可能な間のみ機能します
Snowflake アーキテクチャ

フェイルセーフ

  • タイムトラベル後も データをさらに7日間自動保持(フェイルセーフ)
  • デフォルト、有効化不要
  • Snowflake サポートが必要です
  • フェイルセーフ内のデータは請求額に加算されます

オプションを示すタイムライン

Snowflake アーキテクチャ

ゼロコピークローン

SQL

CREATE TABLE SUBSCRIPTIONS_BACKUP 
  CLONE subscriptions;

出力

Table SUBSCRIPTIONS_BACKUP 
successfully created.
  • クローンは基盤となるストレージを共有します
  • テーブルが分岐し始めたときのみ、ストレージ料金が発生します

クローンとゼロ共有ストレージを表示

Snowflake アーキテクチャ

Snowflake Marketplace

Snowflakeマーケットプレイスのスクリーンショット

Snowflake アーキテクチャ

練習しましょう!

Snowflake アーキテクチャ

Preparing Video For Download...