このドキュメントでは、データクリーンアップチケットを提出することでデータをクリーンアップする方法について説明します。
背景
OB Cloudでは、ソースデータベースのデータをターゲットデータベースにアーカイブした後、ソースデータベースのデータを削除することができます。これにより、データベースクエリのパフォーマンスを向上させ、オンラインストレージコストを削減できます。
このドキュメントでは、新規データクリーンアップを例に、OB Cloud内でtest1データベースのemployeeテーブルをクリーンアップする方法を説明します。
説明
本文中で使用されているのはすべてサンプルデータです。実際の状況に応じてデータを置き換えてください。
前提条件
SQLコンソールにログインするための現在のテナントのデータベースアカウントとパスワードを所有していること。
クリーンアップするテーブルには主キーが含まれている必要があります。
注意事項
前提条件:
- MySQLデータソースは、現在CPUメモリ爆発機能をサポートしていません。
データソースのクリーンアップは以下をサポートします:
OceanBase MySQLデータソース。
OceanBase Oracleデータソース。
MySQLデータソース。
以下の場合はクリーンアップをサポートしません:
OceanBase MySQLおよびMySQLデータソースの場合、テーブルに主キーPRIMARY KEYまたは一意のNOT NULLインデックスが含まれていない場合は、クリーンアップをサポートしません。
OceanBase Oracleデータソースの場合、テーブルに主キーPRIMARY KEYが含まれていない場合は、クリーンアップをサポートしません。
OceanBase Oracleデータソースの場合、テーブルにJSONやXMLTYPE型のフィールドが含まれている場合は、クリーンアップをサポートしません。
アーカイブ条件にLIMITステートメントが含まれている場合は、クリーンアップをサポートしません。
テーブルに外部キーが含まれている場合は、クリーンアップをサポートしません。
新規データクリーンアップ
データサービス > ライフサイクル > データクリーンアップ をクリックし、ライフサイクル ページで ジョブを作成する > データクリーンアップ をクリックします。
データクリーンアップタスクを作成する ページで、以下の情報を入力します。
情報項目説明データベース情報 データソースとデータベースを選択し、検証対象のターゲット側のデータソースとデータベースの状態も選択できます。 クリーンアップ範囲 - 部分クリーンアップ:クリーンアップ条件に基づいて、データベース内の一部のテーブルをクリーンアップします。
- 定数または、設定変数で定義された変数を参照することで、フィルタ条件を構成できます。例:
time<'${create_time}'。ここで、create_timeは設定変数の変数名、timeはクリーンアップ対象のテーブルのフィールドです。 - その他の設定 > 設定 をクリックすると、指定したパーティションに基づいてデータをクリーンアップできます。

- 定数または、設定変数で定義された変数を参照することで、フィルタ条件を構成できます。例:
- データベース全体のクリーンアップ:データベース内のすべてのテーブルをクリーンアップします。
カスタム変数 オプションです。変数を定義し、時間オフセットを設定することで、条件に合致する行をフィルタリングしてクリーンアップできます。 実行モード 即時実行 / スケジュール実行 / 定期実行 を選択して、ジョブの実行方法を設定します。 タスク設定 - 実行タイムアウト:実行がタイムアウトした後、ジョブは期限切れになります。
- データ取得方式:検索対象のレコード行の取得方法を選択します。フルテーブルスキャンはパフォーマンスが安定しており、ターゲットデータの割合が高いシナリオに適しています。条件マッチングは無駄スキャンを回避し、パフォーマンスが速く、ターゲットデータの割合が低いシナリオに適しています。
- 行数制限:1秒間に操作できるデータの総行数の制限です。
- データ量制限:1秒間に操作できるデータの総サイズの制限です。
- クリーンアップに主キーを使用する:主キーを使用してデータをクリーンアップするかどうかを選択します。
備考 備考 テキストボックスに、200文字以内の説明情報を入力できます。この項目はオプションです。 - 部分クリーンアップ:クリーンアップ条件に基づいて、データベース内の一部のテーブルをクリーンアップします。
SQLプレビュー をクリックして、アーカイブSQLステートメントをプレビューし、送信 をクリックすると、データクリーンアップの新規作成が完了します。

ジョブが生成されると、データクリーンアップ リストでジョブ情報を確認できます。

データクリーンアップジョブの表示
データサービス > ライフサイクル > データクリーンアップ ページにアクセスし、データクリーンアップのリストとクリーンアップ履歴の基本情報を確認します。
データクリーンアップリストで対象のジョブ名をクリックし、ジョブの詳細を確認します。操作列の ··· をクリックして、対象のジョブに対するその他の操作を実行することもできます。
- 停止:ジョブの実行方式が周期実行または定期実行の場合、停止ボタンをクリックしてジョブを終了できます。
- 無効/有効:ジョブの実行方式が周期実行または定期実行の場合、無効ボタンをクリックしてジョブを一時的に停止させることができます。再有効化すると再度適用されます。
- 編集:ジョブの状態が無効の場合、編集ボタンをクリックしてジョブの内容を更新できます。
- 削除:ジョブの状態が完了または停止の場合、削除ボタンをクリックしてジョブを削除できます。
- 詳細:ジョブの内容の詳細を確認します。
- 再度開始:ジョブの実行内容をコピーし、同じ設定の新規ジョブ作成画面をすばやく生成します。
表示されたジョブ詳細の ジョブ情報 タブで、ジョブタイプ、データベース名、変数設定、クリーンアップ範囲などの情報を確認します。
ジョブ詳細パネルで、実行記録 タブをクリックして、ジョブの状態や実行詳細などを確認します。
ジョブ詳細パネルで、運用記録 タブをクリックして、ジョブの状態と記録を確認します。
データクリーンアップジョブのインポート
他のプラットフォームからデータクリーンアップジョブをOB Cloudにインポートできます。例えば、クラウドデータベースOceanBaseのインスタンスをOB Cloudに移行した後、移行済みインスタンスに含まれていたデータクリーンアップジョブをOB Cloudに移行することができます。
ステップ1:他のプラットフォームからデータクリーンアップジョブをエクスポート
クラウドデータベースOceanBase管理コンソールの左側のナビゲーションペインで、インスタンス をクリックします。
インスタンスの 操作 項目の下にある クラウドマーケットへ切り替え をクリックします。

インスタンスの切り替えが完了したら、インスタンスの アクション 項目の下にある データ開発タスクを処理 をクリックします。

データ開発タスクを処理 ページで、すべてを表示してエクスポート をクリックし、スケジュールタスクをローカルにエクスポートします。

ステップ2:データクリーンアップジョブをOB Cloudにインポート
OB Cloudクラウドデータベースコンソールにログインし、データサービス > データライフサイクル をクリックします。その後、データライフサイクル ページで ... もっと > インポートジョブ をクリックします。

ローカルにダウンロードしたデータクリーンアップ構成ファイルをインポートジョブにアップロードします。