Alibaba Cloud から ES へのデータのインポート (オフライン)
Alibaba Cloud は、豊富なクラウドストレージとデータベースプロダクトを提供しています。 これらのプロダクトのデータの分析や検索をする場合、Data Integration を使用してください。Data Integration では、オフラインデータを 5 分ごとに Elasticsearch に同期させることができます。
サポートされているデータソース
- Alibaba Cloud データベース (MySQL、PostgreSQL、SQL Server、PPAS、MongoDB、HBase)
- DRDS
- MaxCompute
- OSS
- Table Store
- 自社開発の HDFS、Oracle、FTP、DB2、および以前のクラウドデータベースの自社開発バージョン
手順
オフラインデータをインポートするには、次の手順を実行します。
- VPC 内で Elasticsearch とやり取り可能な ECS インスタンスを準備します。 この ECS インスタンスはデータソースを取得し、ES データを書き込むジョブを実行します (このジョブは Data Integration によって一元的に実行されます)。
- Data Integration サービスを有効化して、実行可能ジョブリソースとして ECS インスタンスを Data Integration サービスに登録する必要があります。
- データ同期スクリプトを設定し、定期的に実行させます。
-
Elasticsearch サービスと同じ VPC にある ECS インスタンスを購入します。 パブリック IP アドレスを ECS インスタンスに割り当てるか、ECS インスタンスの Elastic IP アドレスを有効にします。 コストを抑えるため、既存の ECS インスタンスを使用できます。 ECS インスタンスの購入方法は、「手順 2: インスタンスの作成」をご参照ください。
注- CentOS 6、CentOS 7、AliyunOS を推奨します。
- 追加された ECS インスタンスで MaxCompute または同期タスクを実行する必要がある場合、ECS インスタンスの現在の Python バージョンが 2.6 または 2.7 かどうかを確認します (CentOS 5 の Python バージョンは 2.4 ですが、他のオペレーティングシステムの Python バージョンは 2.6 以降)。
- ECS インスタンスにパブリック IP アドレスが割り当てられていることを確認します。
-
Data Integration コンソールにログインして、ワークベンチを開きます。
Data Integration または DataWorks が有効化されている場合、次のように表示されます。Data Integration または DataWorks が有効化されていない場合、次のメッセージが表示されます。 手順に従って、Data Integration サービスを有効化します。 有料サービスなので、見積もり価格を予算と照らし合わせてチェックしてください。
-
Data Integration サービスの [Project Management-Scheduling Resource Management] ページに移動し、VPC の ECS インスタンスをスケジューリングリソースとして設定します。 詳細は、「スケジューリングリソースの追加」をご参照ください。
-
Data Integration サービスでデータ同期スクリプトを設定します。 設定手順は、「スクリプトモードの設定」をご参照ください。 Elasticsearch の設定方法は、「ElasticSearch Writer の設定」をご参照ください。
注- 同期スクリプトの設定は 3 つの部分に分けられます。Reader は、アップストリームデータソース (データ同期のクラウドプロダクト) の設定、Writer は ES の設定、setting はパケットロス率や最大同時性などの同期の設定です。
- ES Writer の accessId と accessKey は、それぞれ Elasticsearch のユーザー名とパスワードです。
-
スクリプトを設定したら、データ同期ジョブを送信します。 ジョブの実行サイクルを設定し、[OK] をクリックします。
注- 定期スケジュールを設定する場合、このポップアップウィンドウでジョブ開始時間、実行間隔、ジョブライフサイクルなどのパラメーターを設定します。
- 設定したルールに従って、翌日の 00:00 に定期ジョブが実行されます。
-
送信後、[O&M Center-Task Scheduling] ページに移動して送信されたジョブを見つけ、デフォルトのスケジューリングリソースから、設定したスケジューリングリソースに変更します。
リアルタイムデータのインポート
この機能は現在開発中です。今後利用可能になる予定です。