メインコンテンツまでスキップ
バージョン: Latest-3.4

データエクスポート

Alibaba Cloud OSS バックアップとリストア

StarRocks は、アリクラウド OSS / AWS S3(または S3 プロトコルと互換性のあるオブジェクトストレージ)へのデータのバックアップをサポートしています。DB1 クラスターと DB2 クラスターという 2 つの StarRocks クラスターがあると仮定します。DB1 のデータをアリクラウド OSS にバックアップし、必要に応じて DB2 にリストアする必要があります。バックアップとリカバリーの一般的なプロセスは次のとおりです。

クラウドリポジトリの作成

DB1 と DB2 でそれぞれ SQL を実行します:

CREATE REPOSITORY `repository name`
WITH BROKER `broker_name`
ON LOCATION "oss://bucket name/path"
PROPERTIES
(
"fs.oss.accessKeyId" = "xxx",
"fs.oss.accessKeySecret" = "yyy",
"fs.oss.endpoint" = "oss-cn-beijing.aliyuncs.com"
);

a. DB1 と DB2 の両方で作成する必要があり、作成された REPOSITORY 名は同じである必要があります。リポジトリを表示します:

SHOW REPOSITORIES;

b. broker_name にはクラスター内のブローカー名を記入する必要があります。BrokerName を表示します:

SHOW BROKER;

c. fs.oss.endpoint の後のパスにはバケット名を含める必要はありません。

データテーブルのバックアップ

バックアップするテーブルを DB1 のクラウドリポジトリにバックアップします。DB1 で SQL を実行します:

BACKUP SNAPSHOT [db_name].{snapshot_name}
TO `repository_name`
ON (
`table_name` [PARTITION (`p1`, ...)],
...
)
PROPERTIES ("key"="value", ...);
PROPERTIES は現在、次のプロパティをサポートしています:
"type" = "full": これはフルアップデートであることを示します(デフォルト)。
"timeout" = "3600": タスクのタイムアウト。デフォルトは 1 日です。単位は秒です。

StarRocks は現時点でフルデータベースバックアップをサポートしていません。バックアップするテーブルまたはパーティションを ON (...) で指定する必要があり、これらのテーブルまたはパーティションは並行してバックアップされます。

進行中のバックアップタスクを表示します(同時に実行できるバックアップタスクは 1 つだけです):

SHOW BACKUP FROM db_name;

バックアップが完了したら、OSS にバックアップデータが既に存在するかどうかを確認できます(不要なバックアップは OSS で削除する必要があります):

SHOW SNAPSHOT ON OSS repository name; 

データリストア

DB2 でのデータリストアには、DB2 でリストアするテーブル構造を作成する必要はありません。リストア操作中に自動的に作成されます。リストア SQL を実行します:

RESTORE SNAPSHOT [db_name].{snapshot_name}
FROM `repository_name`
ON (
'table_name' [PARTITION ('p1', ...)] [AS 'tbl_alias'],
...
)
PROPERTIES ("key"="value", ...);

リストアの進行状況を表示します:

SHOW RESTORE;