いずれかのコマンドでターゲットへのデータのコピーに失敗した場合は、それらのコマンドを再実行します。

jar と同じディレクトリにある次のファイルで、インデックスのステータスを確認します。

  • migration_output*success.csv
  • migration_output*failure.csv

ファイル名の例:

  • metadata_migration_output__ALL_SUCCESS_1691428484168.csv
  • migration_output_Final__ALL_SUCCESS_1691021040147.csv
  • metadata_migration_output_HAS_FAILURE_1691428484168.csv
  • migration_output__HAS_FAILURE_1691428484168.csv

移行が正常に完了したら、次の curl コマンドを使用して、INDEX_COMPACTION_PARENT_JOB インデックスのジョブ圧縮を有効にします。

curl -H 'Content-type: application/json' -XPOST 'http://<ELB_hostname_of_Events_Service_23.x>:<ElasticSearch_Port>/job_framework_job_details_v1/_update_by_query' -d '{ "query": { "term": { "name": "INDEX_COMPACTION_PARENT_JOB" } }, "script": { "inline": "ctx._source.jobDataMap.enabled = true", "lang": "painless" } }'
CODE

移行のリセット

移行中に変更を元に戻し、最初からやり直すには、次の手順を実行します。

  1. dataMigration.db を削除するか、既存の db ファイルの rename/move を実行します。
  2. metadataIndices_history.json または rename/move metadataIndices_history.json を削除します。

  3. 移行手順を繰り返します。

特定のインデックスの移行をやり直すには、それぞれのインデックスに対して次の手順を実行します。

  1. コマンドラインから SQLite に接続します。

    sqlite3 <Your_Database_name>
    CODE
  2. 次のコマンドを実行して、インデックスのステータスを削除します。

    DELETE FROM tasks WHERE candidate_index = <index_name> and task_status = "SUCCESS";
    SQL
  3. そのインデックスのデータ移行を再度実行します。「イベントサービスデータの移行」を参照してください。

便利なコマンド

移行ユーティリティに関する情報を取得するには、次のコマンドを実行します。

java -jar analytics-on-prem-es2-es8-migration-LATESTVERSION-exec.jar --help
CODE

SQL コマンド

オプションで、ログの代わりに dataMigration.db を使用して移行ステータスを決定できます。移行データベース(dataMigration.db)では、次のテーブルにお客様のインデックス移行の詳細が保存されます。

  • WORKFLOW:データ移行ジョブの各反復が含まれます。すべての反復には、一意のワークフロー ID があります。
  • CANDIDATES:ユーティリティが移行のために検出したインデックスのリストが含まれます。
  • TASKS:各タスクを追跡します。これには、一般的なタスクとインデックス固有のタスクが含まれます。一般的なタスクには、candidate_index value = "ALL" があります。
  • REINDEX_TASK_STATUS:各候補のインデックスの再インデックス状態が含まれます。

dataMigration.db にはメタデータインデックスのステータスが保存されないことに注意してください。メタデータインデックスの移行の詳細については、metadataIndices_history.json を確認してください。


  • SQLite を使用して移行ステータスをモニターするには、次のコマンドを実行します。
sqlite3 dataMigration.db (dataMigration.db will be generated in the same folder where the jar file resides, hence you must run this either on the same folder or provide absolute path). select * from tasks;
CODE
  • 移行中に障害が登録されていない以下のインデックスを取得するには:

    • 再インデックス化された、または正常に再インデックス化されたドキュメントの合計数。

    • イベントサービス 23.x で作成されたドキュメント。

    • イベントサービス 23.x で更新されたドキュメント。

      SELECT candidate_index, total, created, updated from REINDEX_TASK_STATUS where completed == 1 and is_failed = 0 
      SQL
  • 移行中に障害が登録された以下のインデックスを取得するには:
    • 再インデックス化された、または正常に再インデックス化されたドキュメントの合計数。

    • イベントサービス 23.x で作成されたドキュメント。

    • イベントサービス 23.x で更新されたドキュメント。

      SELECT candidate_index, total, created, updated from REINDEX_TASK_STATUS where completed == 1 and is_failed = 1 
      SQL



  • 再インデックスが進行中のドキュメントのステータスを表示するには:

    SELECT candidate_index, total, created, updated from REINDEX_TASK_STATUS where completed == 0
    SQL

移行中にエラーが発生する場合があります。「移行の問題のトラブルシューティング」を参照して解決してください。