【发布时间】:2019-01-15 01:06:16
【问题描述】:
我正在尝试使用以下 Pyspark 代码从 Azure Data Lake 读取 Parquet 文件。
df= sqlContext.read.format("parquet")
.option("header", "true")
.option("inferSchema", "true")
.load("adl://xyz/abc.parquet")
df = df['Id','IsDeleted']
现在我想使用以下代码将此数据帧 df 作为表加载到 sql 数据仓库中:
df.write \
.format("com.databricks.spark.sqldw") \
.mode('overwrite') \
.option("url", sqlDwUrlSmall) \
.option("forward_spark_azure_storage_credentials", "true") \
.option("dbtable", "test111") \
.option("tempdir", tempDir) \
.save()
这将在 SQL 数据仓库中创建一个表 dbo.test111,其数据类型为:
- Id(nvarchar(256),null)
- IsDeleted(bit,null)
但我需要这些具有不同数据类型的列,例如 SQL 数据仓库中的 char(255)、varchar(128)。在将数据帧加载到 SQL Dataware house 时如何执行此操作?
【问题讨论】:
标签: sql-server pyspark azure-data-lake azure-sql-data-warehouse