Amazon Timestream テーブルを復元する
Amazon Timestream テーブルを復元する場合、新しいテーブル名、送信先データベース、ストレージ割り当て設定 (メモリとマグネティックストレージ)、復元ジョブを完了するために使用するロールなど、いくつかのオプションを設定できます。エラーログを保存する Amazon S3 バケットを選択することもできます。マグネティックストレージへの書き込みは非同期で行われるため、エラーを記録しておくとよいでしょう。
Timestream データストレージには、メモリストアとマグネティックストアの 2 つの階層があります。メモリストアは必須ですが、指定したメモリ時間が経過した後に、復元したテーブルをマグネティックストレージに転送することもできます。メモリストアは、スループットの高いデータ書き込みと高速なポイントインタイムクエリに最適化されています。マグネティックストアは、低スループットの遅着データ書き込み、長期間のデータ保存、高速な分析クエリに最適化されています。
Timestream テーブルを復元するときは、そのテーブルを各ストレージ階層に保持する期間を決定します。コンソールまたは API を使用して、両方のストレージ時間を設定できます。ストレージは線形かつシーケンシャルであることに注意してください。Timestream は、復元されたテーブルを最初にメモリストレージに保存し、メモリストレージの時間に達すると自動的にマグネティックストレージに移行します。
注記
マグネティックストアの保持期間は、(コンソールの右上に表示された) 元の保持期間以上でなければなりません。そうでない場合、データは失われます。
例: データを 1 週間保持するようにメモリストア割り当てを設定し、同じデータを 1 年間保持するようにマグネティックストア割り当てを設定したとします。メモリストア内のデータが 1 週間経過すると、そのデータは自動的にマグネティックストアに移動されます。その後、マグネティックストアに 1 年間保存されます。その期間が過ぎると、Timestream と AWS Backup から削除されます。
AWS Backup コンソールを使用して Amazon Timestream テーブルを復元するには
AWS Backup によって作成された Timestream テーブルを AWS Backup コンソールで復元できます。
https://console.aws.amazon.com/backup
で AWS Backup コンソールを開きます。 ナビゲーションペインで、[保護されたリソース] を選択し、復元する Amazon Timestream リソース ID を選択します。
[リソースの詳細] ページには、選択したリソース ID の復旧ポイントのリストが表示されます。リソースを復元するには、[バックアップ] ペインで、リソースの復旧ポイント ID の横にあるラジオボタンをクリックします。ペインの右上隅にある [復元] を選択します。
-
以下を含む新しいテーブル設定を指定します。
2~256 文字 (文字、数字、ダッシュ、ピリオド、アンダースコア) で構成される新しいテーブル名。
ドロップダウンメニューから選択した送信先データベース。
ストレージ割り当て: 復元されたテーブルが最初にメモリストレージに保存される時間を設定し、復元されたテーブルがその後マグネティックストレージに留まる時間を設定します。メモリストレージは、時間単位、日単位、週単位、または月単位で設定できます。マグネティックストレージは、日単位、週単位、月単位、または年単位に設定できます。
(オプション) マグネティックストレージ書き込みを有効にする: マグネティックストレージ書き込みを許可するオプションがあります。このオプションをオンにすると、遅れて到着したデータ、つまりメモリストレージの保持期間外のタイムスタンプが付いたデータが、マグネティックストアに直接書き込まれます。
(オプション) Amazon S3 エラーログの場所: エラーログを保存する S3 の場所を指定できます。S3 ファイルを参照するか、S3 ファイルパスをコピーして貼り付けます。
注記
S3 エラーログの場所を指定する場合、この復元に使用するロールには、S3 バケットへの書き込み用のアクセス許可があるか、そのアクセス許可を持つポリシーが含まれている必要があります。
復元を実行するために渡す IAM ロールを選択します。デフォルトの IAM ロールを使用することも、別のロールを指定することもできます。
[バックアップを復元] をクリックします。
復元ジョブは、保護されたリソースの下に表示されます。更新ボタンまたは CTRL-R をクリックすると、復元ジョブの現在のステータスを確認できます。
API、CLI、または SDK を使用して Amazon Timestream テーブルを復元するには
API 経由で Timestream テーブルを復元するために StartRestoreJob
を使用します。
AWS CLI を使用して Timestream を復元するには、オペレーション start-restore-job.
を使用して次のメタデータを指定します。
TableName: string; DestinationDatabase: string; MemoryStoreRetentionPeriodInHours: value: number unit: 'hours' | 'days' | 'weeks' | 'months' MagneticStoreRetentionPeriodInDays: value: number unit: 'days' | 'weeks' | 'months' | 'years' EnableMagneticStoreWrites?: boolean; aws:backup:request-id
サンプルのテンプレートを次に示します。
aws backup start-restore-job \ --recovery-point-arn "arn:aws:backup:us-west-2:
accountnumber
:recovery-point:1a2b3cde-f405-6789-012g-3456hi789012_beta" \ --iam-role-arn "arn:aws:iam::accountnumber
:role/rolename
" \ --metadata 'TableName=tablename
,DatabaseName=databasename
,MagneticStoreRetentionPeriodInDays=1,MemoryStoreRetentionPeriodInHours=1,MagneticStoreWriteProperties="{\"EnableMagneticStoreWrites\":true,\"MagneticStoreRejectedDataLocation\":{\"S3Configuration\":{\"BucketName\":\"bucketname
\",\"EncryptionOption\":\"SSE_S3\"}}}"' \ --region us-west-2 \ --endpoint-urlurl
DescribeRestoreJob
を使用して情報を復元するのにも役立ちます。
AWS CLI では、オペレーションdescribe-restore-job
を使用して、さらに次のメタデータを使用してください。
TableName: string; DestinationDatabase: string; MemoryStoreRetentionPeriodInHours: value: number unit: 'hours' | 'days' | 'weeks' | 'months' MagneticStoreRetentionPeriodInDays: value: number unit: 'days' | 'weeks' | 'months' | 'years' EnableMagneticStoreWrites?: boolean;
サンプルのテンプレートを次に示します。
aws backup describe-restore-job \ --restore-job-id
restore job ID
\ --regionawsregion
\ --endpoint-urlurl