我正在用将Azure Databricks中的数据帧写入sql数据仓库
res.write
.format("jdbc")
.option("url", url)
.option("dbtable", table)
.option("user", user)
.option("password", password)
.save()
有了这个,我得到了一个错误Column 'username' has a data type that cannot participate in a columnstore index.
如何完全消除列存储,或者更改列的数据类型以适应列存储?
我有一些列将被视为integer,还有一些列将是varchar。
将此选项子句添加到编写语句中。它取代了CREATETABLE(AS(语句的with((子句:
.option ("tableOptions","heap,distribution=MY_DISTRIBUTION")
参考如下:
https://docs.databricks.com/spark/latest/data-sources/azure/sql-data-warehouse.html
根据以下指导为MY_DISTRIBUTION选择一个值:
https://learn.microsoft.com/en-us/azure/sql-data-warehouse/sql-data-warehouse-tables-distribute