在 azure sql 数据仓库中禁用列存储

disable column store in azure sql dataware house

我正在使用

将 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.

我怎样才能完全消除列存储,或者更改列的数据类型以适应列存储?

我有一些列将被视为整数,一些将被视为 varchar。

将此选项子句添加到您的写入语句中。它取代了 CREATE TABLE (AS) 语句的 with() 子句:

.option ("tableOptions","heap,distribution=MY_DISTRIBUTION")

参考在这里:

https://docs.databricks.com/spark/latest/data-sources/azure/sql-data-warehouse.html

根据以下指南为 MY_DISTRIBUTION 选择一个值:

https://docs.microsoft.com/en-us/azure/sql-data-warehouse/sql-data-warehouse-tables-distribute