Таблицы сохранения хранилища базы данных Azure - PullRequest
0 голосов
/ 27 июня 2019

Я использую следующий код для записи таблицы хранилища Azure

df_execution_config_remain.write
  .format("com.databricks.spark.sqldw")
  .option("user", user) 
  .option("password", pswd)
  .option("url","jdbc:sqlserver://"+sqlserver +":"+port+";database="+database)
  .option("forwardSparkAzureStorageCredentials", "true")
  .option("dbTable", execution_config)
  .option("tempDir", dwtmp)
  .mode("Overwrite")
  .save()    

Но перезапись сбрасывает таблицу и воссоздает заново.

Вопрос 1. Я обнаружил, что новая таблица создания имеет распределение по круговой схеме.который я не хочу

столбец имеет другую длину с исходной таблицей, varchar (256)

Я не хочу использовать добавление, потому что я хотел бы очистить строкив текущей таблице

1 Ответ

0 голосов
/ 27 июня 2019

Q1: обратитесь к параметру tableOptions по следующей ссылке: https://docs.databricks.com/spark/latest/data-sources/azure/sql-data-warehouse.html#parameters

Q2: на вас влияет параметр maxStrLength по той же ссылке?

Q3: я думаю, что вашподход оправдан, но альтернативой может быть использование параметра preActions по той же ссылке и TRUNCATE таблицы перед загрузкой.

...