我已经成功地将csv文件推送到我的elasticsearch中。
val spark=SparkSession.builder()
.appName("eswithfunctions")
.config("spark.master","local")
.config("spark.es.nodes","localhost")
.config("spark.es.port","9200")
.getOrCreate()
println("Enter path of file saved locally")
val path=scala.io.StdIn.readLine()
val dataframe=spark.read
.option("inferSchema", "true").csv(path)
println("Enter the name you want to save dataframe in Elasticsearch")
val index=scala.io.StdIn.readLine()
dataframe.saveToEs(index-name) 如何在spark中以表格格式读取每个服务器的弹性搜索结果。
发布于 2020-06-14 13:10:21
您还可以手动指定将与要传递给数据源的任何额外选项一起使用的数据源。数据源是由它们的完全限定名称(例如,org.apache.spark.sql.parquet)指定的,但是对于内置源,您也可以使用它们的短名称(json、parquet、jdbc、orc、libsvm、csv、text)。可以使用此语法将从任何数据源类型加载的DataFrames转换为其他类型。
要加载JSON文件,您可以使用:
val peopleDF = spark.read.format("json").load("examples/src/main/resources/people.json")
peopleDF.select("name", "age").write.format("parquet").save("namesAndAges.parquet")更多关于spark Here的信息。
https://stackoverflow.com/questions/62368348
复制相似问题