gpt4 book ai didi

scala - Apache Spark-从Elasticsearch加载数据太慢

转载 作者:行者123 更新时间:2023-12-02 23:19:26 25 4
gpt4 key购买 nike

我是Apache Spark的新手,正在尝试从我正在其上运行的scala脚本中加载一些elasticsearch数据。

这是我的脚本:

import org.apache.spark.sql.SparkSession

val sparkSession = SparkSession.builder.appName("Simple Application").getOrCreate()
val options = Map("es.nodes" -> "x.x.x.x:9200", "pushdown" -> "true")

import sparkSession.implicits._
val df = sparkSession.read.format("org.elasticsearch.spark.sql").options(options).load("my_index-07.05.2018/_doc").limit(5).select("SomeField", "AnotherField", "AnotherOne")

df.cache()
df.show()

它确实有效,但是 非常慢。我在这里做错什么吗?

连接性根本不应该成为问题,我要查询的索引大约有20万个文档,但是我将查询限制为5个结果。

顺便说一句,我不得不通过在命令行中传递elasticsearch-hadoop依赖项作为参数来运行spark-shell(或提交)(-packages org.elasticsearch:elasticsearch-hadoop:6.3.0)。这是正确的方法吗?有什么办法可以构建包括所有依赖项的sbt包吗?

非常感谢

最佳答案

您是否在单台计算机上本地运行?如果是这样,那可能很正常...您
将必须检查您的网络,Spark Web UI等...

关于提交所有依赖关系而无需在 shell 中使用spark-submit指定它们,通常我们使用sbt程序集创建FAT jar。

http://queirozf.com/entries/creating-scala-fat-jars-for-spark-on-sbt-with-sbt-assembly-plugin

关于scala - Apache Spark-从Elasticsearch加载数据太慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51247524/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com