Spark 写入 Elasticsearch 性能低下
Spark writing to Elasticsearch slow performance
我似乎遇到了一个问题,Spark 写入 Elasticsearch 的速度非常慢,并且在建立初始连接时需要花费大量时间(大约 15 分钟),在此期间 Spark 和 Elasticsearch 都处于空闲状态。
elastic community 中还有一个thread highlighting same issue 但已经关闭,没有任何解决方案。
这就是我从 Spark 写入 ES 的方式:
vgDF.write.format("org.elasticsearch.spark.sql").mode('append').option("es.resource", "demoindex/type1").option("es.nodes", "*ES IP*").save()
Spark 规格
Spark 2.1.0
3 cpu x 10 gb ram x 6 executors
running on 3 gce nodesSpark 2.1.0
Elasticsearch 规范:
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 分钟)。
ES 连接似乎超时。检查您提供的 IP 地址是否可以访问 ES。如果您使用的是 public IP,请尝试将其更改为私有 IP
我似乎遇到了一个问题,Spark 写入 Elasticsearch 的速度非常慢,并且在建立初始连接时需要花费大量时间(大约 15 分钟),在此期间 Spark 和 Elasticsearch 都处于空闲状态。 elastic community 中还有一个thread highlighting same issue 但已经关闭,没有任何解决方案。
这就是我从 Spark 写入 ES 的方式:
vgDF.write.format("org.elasticsearch.spark.sql").mode('append').option("es.resource", "demoindex/type1").option("es.nodes", "*ES IP*").save()
Spark 规格
Spark 2.1.0
3 cpu x 10 gb ram x 6 executors
running on 3 gce nodesSpark 2.1.0
Elasticsearch 规范:
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 分钟)。
ES 连接似乎超时。检查您提供的 IP 地址是否可以访问 ES。如果您使用的是 public IP,请尝试将其更改为私有 IP