簡體   English   中英

如何從Google Cloud SQL調用表或將表導入Spark數據框?

[英]How to call or import a table from Google cloud SQL into Spark dataframe?

我已經在Google Dataproc中創建了一個實例,並且正在其上運行pyspark。 我試圖將數據從表導入此pyspark。 因此,我在Google雲平台SQL中創建了一個表。 但是我不知道如何從其他pyspark調用或導入該表。 就像我沒有任何指向該表的URL一樣。 您能否在這方面提供幫助。

通常,您可以使用spark.read.jdbc()如何使用MySQL和Apache Spark?

Cloud SQL面臨的挑戰是網絡-找出如何連接到實例。 有兩種主要方法可以做到這一點:

1)安裝Cloud SQL代理

您可以使用此初始化操作為您執行此操作 請遵循“無需配置Hive Metastore”下的說明,因為您不需要這樣做:

gcloud dataproc clusters create <CLUSTER_NAME> \
    --scopes sql-admin \
    --initialization-actions gs://dataproc-initialization-actions/cloud-sql-proxy/cloud-sql-proxy.sh \
    --metadata "enable-cloud-sql-hive-metastore=false"

代理是一個本地守護程序,您可以在localhost:3306上連接到該守護程序,並代理到雲sql實例。 您需要在spark.read.jdbc()的jdbc連接uri中包括localhost:3306。

2)如果您願意添加到驅動程序類路徑,則可以考慮安裝Cloud SQL Socket工廠

這里有一些有關如何執行此操作的討論: https : //groups.google.com/forum/# ! topic/cloud-dataproc-discuss/Ns6umF_FX9g以及這里: Spark-將JDBC驅動程序JAR添加到Google Dataproc中

聽起來您可以將其打包到pom.xml中的陰影應用程序jar中,也可以通過在--jars添加它來在運行時提供它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM