このトピックでは、データ管理 (DMS) の専用ストレージにデータをアーカイブする方法、専用ストレージからObject storage Service (OSS) にデータを転送する方法、およびアーカイブされたデータを専用ストレージから削除する方法について説明します。
前提条件
データをアーカイブするソースデータベースは、次のいずれかのタイプです。
MySQL: ApsaraDB RDS for MySQL、PolarDB for MySQL、およびAnalyticDB for MySQL V3.0
説明ソースデータベースがMySQLデータベースの場合、ソースデータベースのデータベースアカウントにはREPLICATION CLIENT権限が必要です。
PostgreSQL: ApsaraDB RDS for PostgreSQLおよびPolarDB for PostgreSQL
ApsaraDB for MongoDB V3.6以降
説明物理データベースと論理データベースの両方がサポートされています。
ソースデータベースは、安定した変更またはセキュリティコラボレーションモードで管理されます。
説明定期的なデータアーカイブタスクを設定し、ソースデータベースインスタンスが安定した変更モードで管理されている場合は、データベースインスタンスのセキュリティホスティングを有効にするか、データベースインスタンスの制御モードをsecurity Collaborationに変更することを推奨します。 そうしないと、インスタンスのログインの有効期限が切れてデータアーカイブタスクが失敗する可能性があります。 詳細については、「セキュリティホスティング」トピックのセキュリティホスティングの有効化セクションとインスタンスの制御モードの変更をご参照ください。
データをアーカイブするソーステーブルには、主キーまたは一意のキーが必要です。
説明ソーステーブルの各データ変更操作の時間を示すフィールドを指定することをお勧めします。 ソーステーブルからデータをアーカイブするときに、このフィールドをフィルター条件として使用できます。
課金
パブリックプレビュー中にデータアーカイブ機能を無料で使用できます。 この機能の料金が請求される前に通知されます。
使用上の注意
データは、専用ストレージの記憶容量の制限なしに専用ストレージにアーカイブすることができる。
ソーステーブルに3つの列で構成される複合主キーがある場合、またはソーステーブルに3つ以上の一意のキーがある場合、データアーカイブタスクは失敗する可能性があります。 データアーカイブを実行する前に、3列の複合主キーを持つソーステーブルを完全にテストするか、データベースバックアップ (DBS) などの他のアーカイブ方法を使用することをお勧めします。
データアーカイブ機能をサポートしているのは、シンガポールおよびインドネシア (ジャカルタ) リージョンのみです。
手順
DMSコンソールV5.0 にログインします。
上部のナビゲーションバーで、 を選択します。
説明DMSコンソールをシンプルモードで使用する場合は、左上隅のアイコンの上にポインターを移動し、
を選択します。[データアーカイブチケット] ページの右上隅で、データアーカイブ をクリックします。
チケット申し込みページで、パラメーターを設定してデータアーカイブチケットを作成します。 下表に、各パラメーターを説明します。
パラメーター
必須
説明
アーカイブ先
可
データをアーカイブする宛先。 [専用ストレージ] を選択します。
ソースデータベース
可
データをアーカイブするソースデータベース。
アーカイブ設定
可
データをアーカイブする1つ以上のテーブル。
オプションです。 指定したテーブルにアーカイブするデータを照会するためのフィルター条件を1つ以上指定します。 例:
gmt_modified<='${6_month_ago}'
説明6か月前に生成されたデータのアーカイブなどのシナリオで時間変数を使用する場合は、アーカイブ設定セクションでパラメーターを設定する前に、[変数設定] セクションで変数を設定できます。
オプション。 [追加] をクリックして、ソーステーブルを追加します。
アーカイブテーブルのマッピング
任意
専用ストレージで使用するテーブル設定。 テーブル名、列、データベースシャードキーなど、専用ストレージにアーカイブされたテーブルデータに関する情報を表示できます。
変数設定
任意
アーカイブデータをフィルタリングするための条件を設定するときに使用される変数。 たとえば、
6_month_ago
という名前の変数をyyyy-MM-dd形式で作成し、オフセットを-6 Monthに設定したとします。 この場合、現在の日付が2021年8月12日である場合、変数${6_month_ago}
の値は、2021年2月11日を示す2021-02-11です。 時間変数の設定方法の詳細については、「変数」トピックの時間変数の設定セクションをご参照ください。事後行動
任意
ソーステーブルからアーカイブデータを削除するかどうかを指定します。 元のテーブルのアーカイブデータのクリーンアップ (削除-ロックなし) を選択した場合、アーカイブデータはソーステーブルから自動的に削除されます。
DELETE
文を実行して、一時バックアップテーブルを削除できます。 一時バックアップテーブルは、ソーステーブルが削除されたときにアーカイブされたデータを格納するためにソースデータベースに生成されます。 ソースデータベースに十分なストレージスペースがあることを確認して、ストレージスペース不足によるインスタンスの使用不能を防ぎます。データがアーカイブされ、アーカイブされたデータが正しいことを確認したら、通常のデータ変更チケットを作成して、ソースデータベースから一時バックアップテーブルを消去できます。
元のテーブルのアーカイブデータのクリーンアップ (削除-ロックなし) を選択しない場合、アーカイブデータはソーステーブルから削除されません。 この場合、ソーステーブルからデータを手動で削除し、ストレージ使用量を最適化する必要があります。
ソーステーブルからアーカイブデータを削除するには、通常のデータ変更チケットを作成します。 詳細については、「定期的なデータ変更の実行」をご参照ください。
ソーステーブルのストレージ使用量を最適化するには、ロックフリーの変更チケットを作成します。 詳細については、「ロックフリーDDL操作の実行」をご参照ください。
操作モード
可
データアーカイブタスクの実行に使用するメソッド。 有効な値:
シングル実行: データアーカイビングチケットが承認された後、DMSはデータアーカイビングタスクを1回だけ実行します。
周期的なスケジューリング: データアーカイブチケットが承認されると、DMSは指定したスケジュールに基づいてデータアーカイブタスクを実行します。 詳細については、「Lindormインスタンスへのデータのアーカイブ」トピックの「周期的スケジューリング」セクションをご参照ください。
送信 をクリックします。
データアーカイブチケットが承認された後、システムはデータアーカイブタスクを自動的に実行します。 データアーカイブタスクが完了するまで待ちます。
データアーカイブタスクの実行に失敗した場合は、[実行] ステップの [操作] 列の [詳細] をクリックして、データアーカイブタスクのログを表示し、タスクの失敗の原因を特定できます。 ネットワークまたはデータベース接続の障害が原因で問題が発生した場合は、[ブレークポイントの再試行] をクリックしてタスクを再起動します。
説明アーカイブされたデータはParquet形式で保存され、データ量は圧縮されます。
アーカイブされたデータを照会します。 詳細については、「OSSバケットまたは専用ストレージにアーカイブされたデータの照会」トピックの「専用ストレージにアーカイブされたデータの照会」セクションをご参照ください。
アーカイブされたデータをソースデータベースに復元する
課金
アーカイブされたデータをソースデータベースに無料で復元できます。
制限事項
この機能は、ソースデータベースエンジンがApsaraDB RDS for MySQL、PolarDB for MySQL、またはAnalyticDB for MySQL V3.0の場合にのみ使用できます。
手順
データアーカイブのチケットページで、表示パラメーターをチケットビューに設定します。
管理するチケットを見つけて、アクション列で詳細をクリックします。
[チケットの詳細] ページで、[実行] をクリックします。 [実行] セクションで、[操作] 列の [ソースデータベースに復元] をクリックします。
表示されるメッセージで、OKをクリックします。
データ復元タスクが作成されます。 システムは自動的にデータ復元タスクを実行します。 タスクが完了するまで待ちます。 このプロセスの期間は、復元するデータの量によって異なります。
重要アーカイブされたデータをソースデータベースに復元すると、システムは自動的にソースデータベースに一時テーブルを作成します。 これにより、ソースデータベースのストレージ容量が不足する可能性があります。 作業は慎重に行ってください。
復元されたデータを照会します。
基本情報[チケットの詳細] ページのセクションで、[データベース] の横にあるデータベース名の上にポインターを移動して [変更] をクリックします。クエリポップアップウィンドウで。
テーブル名をダブルクリックし、実行 をクリックします。
復元されたデータは、SQLConsoleタブの下部に表示される [実行履歴] タブで確認できます。
アーカイブされたデータファイルをマージする
ファイルのマージ操作は元に戻せません。 作業は慎重に行ってください。
ファイルマージ機能を使用すると、一度にアーカイブされるデータファイルを再編成して並べ替えることができます。 たとえば、2つのデータファイルを1つのファイルにマージできます。 ファイルがマージされると、アーカイブされたデータのクエリのパフォーマンスが向上します。
課金
アーカイブされたデータファイルは無料でマージできます。
使用上の注意
アーカイブされたデータファイルがマージされた後、マージされたデータファイルはより多くのストレージスペースを占有します。 ほとんどの場合、マージされたデータファイルは、元のアーカイブされたデータファイルによって占有されるストレージスペースの1.5から2倍を占有します。
ファイルのマージ中に、アーカイブされたデータを期待どおりにクエリできます。
手順
データアーカイブのチケットページで、表示パラメーターをチケットビュー に設定します。
管理するチケットを見つけ、アクション列で詳細をクリックします。
[チケットの詳細] ページで、[実行] をクリックします。 [実行] セクションで、[操作] 列の [詳細] > [ファイルのマージ] を選択します。
表示されるメッセージで、OK をクリックします。
ファイルマージタスクが作成されます。 ファイルマージタスクが自動的に実行されます。 タスクが完了するまで待ちます。 このプロセスの期間は、アーカイブされたデータの量によって異なります。
説明ファイルマージタスクが完了すると、システムは自動的にデータソースをマージされたファイルに置き換えます。
マージされたファイルのデータを照会します。 詳細については、「OSSバケットまたは専用ストレージにアーカイブされたデータの照会」トピックの「専用ストレージにアーカイブされたデータの照会」セクションをご参照ください。
アーカイブされたデータを専用ストレージから削除
アーカイブされたデータが専用ストレージから削除された後、削除されたデータを復元することはできません。 作業は慎重に行ってください。
データアーカイブチケットを使用してアーカイブされたデータを専用ストレージから物理的に削除すると、アーカイブされたデータが占有していたストレージ容量が解放されます。
使用上の注意
アーカイブデータが削除された後、アーカイブデータを照会したり、アーカイブデータをソースデータベースに復元したりすることはできません。
手順
[データアーカイブチケット] ページで、[表示] パラメーターを [チケット表示] に設定します。
管理するチケットを見つけて、[操作] 列の [詳細] をクリックします。
[チケットの詳細] ページで、[実行] をクリックします。 [実行] セクションで、[操作] 列の [詳細] > [削除] を選択します。
表示されたメッセージボックスで、[OK] をクリックします。
よくある質問
Q: 論理データベースのアーカイブデータを照会すると、論理データベース内のテーブルが1つの物理テーブルにマージされますか。
A:はい。 論理データベースのデータがアーカイブされると、論理データベース内のすべてのテーブルが1つの物理データベーステーブルにマージされます。 したがって、[データアーカイブチケット] ページで、[ビュー] パラメーターを [アーカイブビュー] に設定すると、論理テーブルを選択して、論理データベース内のテーブルのすべてのデータを照会できます。
Q: データアーカイブチケットに定期的なアーカイブが設定されている場合、特定の期間内にアーカイブされたデータを照会できますか?
A:はい。 データアーカイブチケットに定期的なアーカイブが設定されている場合、データは指定したスケジュールサイクルに基づいて異なる期間内にアーカイブされます。 したがって、データアーカイブタスクが実行された特定の時点に基づいて、特定の期間内にアーカイブされたデータを照会できます。
Q: テーブルから定期的にアーカイブされたすべてのデータ、またはデータアーカイブチケット全体でテーブルからアーカイブされたすべてのデータを照会するにはどうすればよいですか。
A: Logical data warehouseページで、左側のサイドバーの [データソース] タブをクリックします。 [データソース] タブで、
を選択します。 データベースリストで、ソースデータベースを見つけ、データを照会するテーブルの名前またはチケット番号をダブルクリックします。 クエリSQL文は, [SQLConsole] タブの文実行領域に自動的に入力されます。 SQLConsoleタブの左上隅にある [実行] をクリックします。 次に、[論理データウェアハウス] ページの下部に表示される [実行履歴] タブで、アーカイブされたデータを表示できます。Q: ApsaraDB RDSデータベースから専用ストレージにデータをアーカイブするときに、元のテーブルのアーカイブデータのクリーンアップ (削除-ロックなし) を選択した場合、ソースデータベースの一時バックアップテーブルのデータはどのくらいのストレージ容量を占有しますか。
A: 一時テーブルのデータは、ソースデータベースのデータが占有するストレージ容量の最大2倍を占有します。