本文介紹如何使用Databricks數據洞察訪問ElasticSearch數據源。
前提條件
通過主賬號登錄阿里云Databricks控制臺。
已創建ElasticSearch實例,具體參見創建阿里云Elasticsearch實例。
已創建DDI集群,具體請參見創建集群。
創建集群并通過knox賬號訪問NoteBook。
使用DDI讀寫ElasticSearch數據源
打通DDI集群與ElasticSearch數據源的網絡
點擊上部選擇實例所在region。
點擊實例ID進入實例詳情頁面。
查看基本信息找到對應的VPV和VSwitch。
選擇集群所在region進入集群列表。
點擊集群實例進入集群詳情頁面。
點擊詳情頁面上方數據源頁簽進入數據源頁面點擊添加。
選擇通用網絡,選擇對應的VPC和VSwith點擊下一步點擊確認等待創建成功。
說明
如果沒有接入請按照幫助文檔訪問外部數據源進行添加。
使用NoteBook訪問ElasticSearch數據源
在NoteBook引入依賴。
%spark.conf spark.jars.packages org.elasticsearch:elasticsearch-spark-30_2.12:8.2.0
讀取JSON數據,并將數據寫入到ElasticSearch。
%spark
//讀取oss數據
val path="oss://your bucket/data/es_case.json"
val data = spark.read
.option("header", "true")
.option("inferSchema", "true")
.json(path)
//數據處理展示
data.na.drop.show(10)
//寫入數據到ES
data.write
.format("org.elasticsearch.spark.sql")
.option("es.nodes.wan.only","true")
.option("es.port","443")
.option("es.net.http.auth.user", "your es username")
.option("es.net.http.auth.pass", "your es password")
.option("es.net.ssl","true")
.option("pushdown"," true")
.option("es.nodes", "your es url")
.mode("Overwrite")
.save("product_info/products")
讀ElasticSearch數據源數據。
%spark
val reader = spark.read
.format("org.elasticsearch.spark.sql")
.option("es.nodes.wan.only","true")
.option("es.port","443")
.option("es.net.http.auth.user", "your es username")
.option("es.net.http.auth.pass", "your es password")
.option("es.net.ssl","true")
.option("pushdown"," true")
.option("es.nodes", "your es url")
reader.load("product_info/products").show()
文檔內容是否對您有幫助?