すべてのプロダクト
Search
ドキュメントセンター

Elasticsearch:データ移行ソリューションの選択

最終更新日:Jan 11, 2025

Logstash、reindex API、またはオブジェクトストレージサービス(OSS)を使用して、Alibaba Cloud Elasticsearchクラスター間、セルフマネージドElasticsearchクラスターからAlibaba Cloud Elasticsearchクラスター、またはサードパーティのElasticsearchソースからAlibaba Cloud Elasticsearchクラスターにデータを移行できます。このトピックでは、各データ移行ソリューションのユースケースと制限事項について説明します。ビジネス要件に基づいてソリューションを選択できます。

重要
  • Alibaba Cloud Elasticsearchのネットワークアーキテクチャは2020年10月に調整されました。2020年10月より前に作成されたElasticsearchクラスターは、元のネットワークアーキテクチャにデプロイされています。 2020年10月以降に作成されたElasticsearchクラスターは、新しいネットワークアーキテクチャにデプロイされています。 元のネットワークアーキテクチャにデプロイされたクラスターと新しいネットワークアーキテクチャにデプロイされたクラスター間では、reindex、検索、レプリケーションなどのクラスター間の操作を実行することはできません。 2つのクラスター間でこれらの操作を実行する場合は、クラスターが同じネットワークアーキテクチャにデプロイされていることを確認する必要があります。 中国(張家口)リージョンおよび中国以外のリージョンでネットワークアーキテクチャが調整された時期は不明です。このようなリージョンで、2020年10月より前に作成されたクラスターと2020年10月以降に作成されたクラスターの間で上記の操作を実行する場合は、チケットを送信して、Alibaba Cloudテクニカルサポートに連絡し、クラスターを接続できるかどうかを確認してください。

  • 名前がピリオド(.)で始まるシステムインデックス(.monitoring、.kibana、.securityインデックスなど)は移行しないことをお勧めします。これらのインデックスを移行すると、Kibanaが失敗する可能性があります。

Alibaba Cloud Elasticsearchクラスター間のデータ移行

移行ソリューション

ユースケース

使用上の注意

OSSスナップショット

  • ソースには、ギガバイト、テラバイト、またはペタバイトのデータが格納されています。

  • 同じAlibaba Cloudアカウントまたは異なるAlibaba Cloudアカウントに属し、同じリージョンまたは異なるリージョンにあるAlibaba Cloud Elasticsearchクラスター間でスナップショット内のデータを移行する場合。

    説明

    異なるリージョンにあるAlibaba Cloud Elasticsearchクラスター間でデータを移行する場合は、スナップショットの作成とデータの復元に使用するElasticsearchコマンドを、OSSによって提供されるクロスリージョンレプリケーション(CRR)機能とともに使用できます。

  • このソリューションを使用して増分データを移行する場合は、Elasticsearchサービスを停止し、データ移行前に宛先インデックスを無効にする必要がある場合があります。

  • 共有OSSリポジトリを構成する前に、ソースと宛先のElasticsearchクラスターが次の要件を満たしていることを確認する必要があります。

    • クラスターは同じリージョンにあります。

    • クラスターは同じAlibaba CloudアカウントまたはRAMユーザーに属しています。

    • ソースクラスターのバージョンは、宛先クラスターのバージョン以前と同じか、それ以前です。バージョンの互換性については、スナップショットからのデータ復元のバージョンの互換性を参照してください。

  • スナップショットの作成とデータの復元に使用するElasticsearchコマンドを使用して、異なるAlibaba Cloudアカウントに属するAlibaba Cloud Elasticsearchクラスター間でスナップショット内のデータを移行する場合は、クラスターに同じAccessKeyペアを使用する必要があります。これは、共有OSSリポジトリを構成するときに、目的のOSSバケットが属するアカウントのAccessKeyペアを指定する必要があることを示しています。

Logstash

  • フルデータまたは増分データを移行し、データ移行のリアルタイムパフォーマンスに高い要件がない場合。

    重要

    Logstashクラスターを使用して、異なるAlibaba Cloudアカウントに属し、異なるリージョンに存在するElasticsearchクラスター間でデータを移行し、ElasticsearchクラスターとLogstashクラスターが異なるVPCに存在する場合は、Logstashクラスターのネットワークアドレス変換(NAT)ゲートウェイを構成する必要があります。次に、ゲートウェイを使用して、インターネット経由でLogstashクラスターをElasticsearchクラスターに接続します

  • クエリ結果のみを移行する場合。

  • 移行するデータはフィルタリングする必要がある場合。

  • 異なるメジャーバージョンのクラスター間でデータを移行する場合。たとえば、V5.Xクラスターから V6.Xまたは V7.Xクラスターにデータを移行する場合。バージョンの互換性については、互換性マトリックスを参照してください。

  • ソースElasticsearchクラスター、Logstashクラスター、および宛先Elasticsearchクラスターは、同じVPCに存在する必要があります。異なるVPCに存在する場合は、LogstashクラスターのNATゲートウェイを構成し、ゲートウェイを使用してインターネット経由でLogstashクラスターをElasticsearchクラスターに接続する必要があります。詳細については、インターネット経由のデータ送信用のNATゲートウェイの構成を参照してください。

  • ソースElasticsearchクラスター、Logstashクラスター、および宛先Elasticsearchクラスターのバージョンは、互換性要件を満たしている必要があります。詳細については、互換性マトリックスを参照してください。

  • 増分データを移行する場合は、ソースインデックスIDが宛先インデックスIDと同じであることを確認し、スケジュールされた移行タスクを構成する必要があります。

reindex API

  • ソースには少量のデータが格納されており、データ移行の速度に高い要件がない場合。

  • Kibanaコンソールでクエリステートメントを実行して取得したクエリ結果のみを移行する場合。

ソースと宛先のElasticsearchクラスターは、同じネットワークアーキテクチャにデプロイする必要があります。詳細については、reindex APIを使用した以前のバージョンのマルチタイプインデックスのデータの移行を参照してください。

reindex APIを使用したデータの移行

elasticsearch-dump

少数のインデックスを持つシナリオで少量のデータを移行する場合。

ソースElasticsearchオブジェクト、宛先Elasticsearchクラスター、および elasticsearch-dumpツールがインストールされているサーバー間でネットワーク接続を確立する必要があります。

elasticsearch-dumpを使用したデータの移行

OSSスナップショットと reindex API

  • フルデータと増分データを移行する場合。

  • 異なるメジャーバージョンのAlibaba Cloud Elasticsearchクラスター間でデータを移行する場合。データ形式に互換性がない可能性があるため、OSSスナップショットのみを使用してこのようなクラスター間でデータを移行することはできません。

    たとえば、V6.Xクラスターから V8.Xクラスターにデータを移行するには、V6.Xクラスターのスナップショットを使用して V6.Xクラスターから V7.Xクラスターにデータを移行し、V7.Xクラスターで reindex APIを呼び出してデータを再インデックス化し、V7.Xクラスターのスナップショットを使用して V7.Xクラスターから V8.Xクラスターにデータを移行できます。

中間バージョンのクラスターは、ソースクラスターと宛先クラスターの両方と互換性があります。詳細については、Elasticバージョンの変更と互換性を参照してください。

セルフマネージドElasticsearchクラスターからAlibaba Cloud Elasticsearchクラスターへのデータ移行

移行ソリューション

ユースケース

使用上の注意

OSSスナップショット

  • ソースには、ギガバイト、テラバイト、またはペタバイトのデータが格納されています。

  • 同じAlibaba Cloudアカウントまたは異なるAlibaba Cloudアカウントに属し、同じリージョンまたは異なるリージョンにあるセルフマネージドElasticsearchクラスターとAlibaba Cloud Elasticsearchクラスター間でスナップショット内のデータを移行する場合。

  • elasticsearch-repository-ossプラグインは、Alibaba Cloud Elasticsearchクラスターの各ノードにインストールする必要があります。プラグインのバージョンは、セルフマネージドElasticsearchクラスターの各ノードにインストールされているプラグインのバージョンと同じである必要があります。

  • このソリューションを使用して増分データを移行する場合は、Elasticsearchサービスを停止し、データ移行前に宛先インデックスを無効にする必要がある場合があります。

OSSを使用してセルフマネージドElasticsearchクラスターからAlibaba Cloud Elasticsearchクラスターにデータを移行する

Logstash

  • データ移行のリアルタイムパフォーマンスに高い要件がない場合。

  • クエリ結果のみを移行する場合。

  • 移行するデータはフィルタリングする必要がある場合。

  • 異なるメジャーバージョンのクラスター間でデータを移行する場合。たとえば、5.xクラスターから V6.Xまたは V7.Xクラスターにデータを移行する場合。バージョンの互換性については、互換性マトリックスを参照してください。

  • ソースElasticsearchクラスター、Logstashクラスター、および宛先Elasticsearchクラスターは、同じVPCに存在する必要があります。異なるVPCに存在する場合は、LogstashクラスターのNATゲートウェイを構成し、ゲートウェイを使用してインターネット経由でLogstashクラスターをElasticsearchクラスターに接続する必要があります。詳細については、インターネット経由のデータ送信用のNATゲートウェイの構成を参照してください。

  • ソースElasticsearchクラスター、Logstashクラスター、および宛先Elasticsearchクラスターのバージョンは、互換性要件を満たしている必要があります。詳細については、互換性マトリックスを参照してください。

  • 増分データを移行する場合は、ソースインデックスIDが宛先インデックスIDと同じであることを確認し、スケジュールされた移行タスクを構成する必要があります。

reindex API

  • ソースには少量のデータが格納されており、データ移行の速度に高い要件がない場合。

  • Kibanaコンソールでクエリステートメントを実行して取得したクエリ結果のみを移行する場合。

  • 以前のバージョン(6.xなど)のセルフマネージドElasticsearchクラスターから、後のバージョン(V8.Xなど)のAlibaba Cloud Elasticsearchクラスターにデータを移行する場合。この場合、PrivateLinkを使用して、クラスターが存在するVPC間にプライベート接続を確立し、reindex APIを使用してデータを移行する必要があります。

ソースと宛先のElasticsearchクラスターは、同じネットワークアーキテクチャにデプロイする必要があります。詳細については、reindex APIを使用した以前のバージョンのマルチタイプインデックスのデータの移行を参照してください。

reindex APIを使用してセルフマネージドElasticsearchクラスターからAlibaba Cloud Elasticsearchクラスターにデータを移行する

elasticsearch-dump

少数のインデックスを持つシナリオで少量のデータを移行する場合。

ソースElasticsearchオブジェクト、宛先Elasticsearchクラスター、および elasticsearch-dumpツールがインストールされているサーバー間でネットワーク接続を確立する必要があります。

elasticsearch-dumpを使用したデータの移行

サードパーティのElasticsearchソースからAlibaba Cloud Elasticsearchクラスターへのデータ移行

移行ソリューション

ユースケース

使用上の注意

OSSスナップショット

ソースには、ギガバイト、テラバイト、またはペタバイトのデータが格納されています。

このソリューションを使用して増分データを移行する場合は、Elasticsearchサービスを停止し、データ移行前に宛先インデックスを無効にする必要がある場合があります。

Amazon OpenSearch ServiceからAlibaba Cloud ElasticsearchにElasticsearchインデックスデータを移行する

説明

このソリューションはクラウドサービスプロバイダーに限定されず、Elasticsearchスナップショットメカニズムに依存します。たとえば、Alibaba Cloudが提供するデータオンライン移行サービスを使用して、Tencent Cloudオブジェクトストレージ(COS)バケットからAlibaba Cloud OSSバケットにスナップショット内のElasticsearchデータを移行できます。次に、宛先クラスターにデータを復元します。 Tencent COSバケットからAlibaba Cloud OSSバケットにデータを移行する方法については、データの移行を参照してください。スナップショット内のデータを復元する方法については、手動スナップショットの作成と手動スナップショットからのデータの復元を参照してください。

宛先Elasticsearchクラスターのバージョンは、ソースElasticsearchオブジェクトと同じかそれ以上である必要があります。バージョンの互換性については、スナップショットからのデータ復元のバージョンの互換性を参照してください。

elasticsearch-dump

少数のインデックスを持つシナリオで少量のデータを移行する場合。

ソースElasticsearchオブジェクト、宛先Elasticsearchクラスター、および elasticsearch-dumpツールがインストールされているサーバー間でネットワーク接続を確立する必要があります。

elasticsearch-dumpを使用したデータの移行