我正在尝试通过 pyspark 中的以下代码将 sql server 表转换为 .csv 格式。
from pyspark import SparkContext
sc = SparkContext("local", "Simple App")
from pyspark.sql import SQLContext, Row
sqlContext = SQLContext(sc)
df = sqlContext.read.format("jdbc").option("url","jdbc:sqlserver://server:port").option("databaseName","database").option("driver","com.microsoft.sqlserver.jdbc.SQLServerDriver").option("dbtable","table").option("user","uid").option("password","pwd").load()
df.registerTempTable("test")
df.write.format("com.databricks.spark.csv").save("full_path")
所以,如果我想转换多个表,我需要编写多个数据框。所以,为了避免这种情况,我想为数据库名称和用户的表名取命令行参数,同时通过迭代数据框for 循环。
甚至可能吗?如果是,有人可以通过 spark-submit 指导我如何做到这一点吗?