問題タブ [elasticsearch-hadoop]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
apache-spark - Elasticsearch への Spark 書き込みのパフォーマンスが遅い
Elasticsearch への Spark の書き込みが非常に遅く、最初の接続を確立するのにかなりの時間がかかる (約 15 分) という問題に遭遇したようです。その間、Spark と Elasticsearch の両方がアイドル状態のままです。エラスティック コミュニティで同じ問題を強調する別のスレッドがありますが、解決策がないままクローズされました。
これは、Spark から ES への書き込み方法です。
vgDF.write.format("org.elasticsearch.spark.sql").mode('append').option("es.resource", "demoindex/type1").option("es.nodes", "*ES IP*").save()
火花仕様
Spark 2.1.0
3 cpu x 10 gb ram x 6 executors
running on 3 gce nodesSpark 2.1.0
エラスティックサーチの仕様:
8 cpu * 30 gb RAM single node
ES バージョン:
Elasticsearch: 6.2.2
ES-Hadoop: 6.2.2
参考までに、Spark は Cassandra DB からデータを読み取り、結果を処理し (ただし、このプロセスは非常に高速で、約 1 ~ 2 分かかります)、Elasticsearch に書き込みます。
どんな助けでも大歓迎です
[編集]
また、データのサイズを数百万レコードからわずか 960 レコードに変更しようとしましたが、最初の遅延は同じです (約 15 分)。