バックアップと復元の概要
はじめに
Dorisはバックアップおよび復元操作をサポートしています。これらの機能により、ユーザーはデータベース、テーブル、またはパーティションからリモートストレージシステムにデータをバックアップし、必要に応じて復元することができます。
要件
- 管理者権限: ADMIN権限を持つユーザーのみがバックアップおよび復元操作を実行できます。
主要な概念
Snapshot: Snapshotは、データベース、テーブル、またはパーティション内のデータの特定時点でのキャプチャです。Snapshotを作成する際は、snapshotラベルを指定する必要があり、完了時にタイムスタンプが生成されます。これにより、Repository、snapshotラベル、およびタイムスタンプを通じてsnapshotを識別できます。
Repository: バックアップファイルが保存されるリモートストレージの場所です。サポートされているリモートストレージには、S3、Azure、GCP、OSS、COS、MinIO、HDFS、およびその他のS3互換オブジェクトストレージが含まれます。
Backup Operation: バックアップ操作では、データベース、テーブル、またはパーティションのsnapshotを作成し、snapshotファイルをリモートRepositoryにアップロードし、バックアップに関連するメタデータを保存します。
Restore Operation: 復元操作では、リモートRepositoryからバックアップを取得し、それをDorisクラスターに復元します。
主要な機能
-
データのバックアップ: Dorisでは、snapshotを作成することで、テーブル、パーティション、またはデータベース全体からデータをバックアップできます。データはファイル形式でバックアップされ、HDFS、S3、またはその他のS3互換リモートストレージシステムに保存されます。
-
データの復元: リモートRepositoryからバックアップデータを任意のDorisクラスターに復元できます。これには、データベース全体の復元、テーブル全体の復元、およびパーティションレベルの復元が含まれ、柔軟なデータ回復が可能です。
-
Snapshot管理: データはsnapshotの形でバックアップされます。これらのsnapshotはリモートストレージシステムにアップロードされ、必要時に復元できます。復元プロセスでは、snapshotファイルをダウンロードし、ローカルメタデータにマッピングして有効にします。
-
データ移行: バックアップと復元に加えて、この機能は異なるDorisクラスター間でのデータ移行もサポートしています。データをリモートストレージシステムにバックアップし、別のDorisクラスターに復元することで、クラスター移行シナリオを促進できます。
-
レプリケーション制御: データを復元する際、復元されたデータのレプリカ数を指定して、冗長性と耐障害性を確保できます。
制限事項
-
ストレージとコンピューティングの分離: ストレージ・コンピューティング分離モデルは、バックアップと復元をサポートしていません。
-
非同期マテリアライズドビュー(MTMV)はサポートされていません: 非同期マテリアライズドビュー(MTMV)のバックアップまたは復元はサポートされていません。これらのビューは、バックアップおよび復元操作では考慮されません。
-
ストレージポリシーを使用するテーブルはサポートされていません: storage policiesを使用するテーブルは、バックアップおよび復元操作をサポートしていません。
-
増分バックアップ: 現在、Dorisは完全バックアップのみをサポートしています。増分バックアップ(最後のバックアップ以降に変更されたデータのみを保存)はサポートされていません。特定のパーティションをバックアップすることで増分バックアップを実現できます。
-
colocate_with属性: バックアップまたは復元操作中、Dorisはテーブルの
colocate_with属性を保持しません。復元後、コロケートされたテーブルについてはこの属性を再設定する必要がある場合があります。 -
動的パーティションサポート: テーブルを復元した後、
ALTER TABLEコマンドを使用してこの属性を手動で有効にする必要があります。 -
単一同時実行: 単一データベース下では、バックアップまたは復元タスクは同時に1つしか実行できません。