Таблицы сохранения хранилища баз данных Azure Databricks

Я использую следующий код для написания таблицы хранилища 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. Я обнаружил, что новая таблица создания имеет циклическое распределение. чего я не хочу

  1. длина столбца отличается от длины исходной таблицы, varchar (256)

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


person mytabi    schedule 27.06.2019    source источник


Ответы (1)


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

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

Q3: Я думаю, что ваш подход верен, но альтернативой может быть использование параметра preActions по той же ссылке и ОБРЕЗКА таблицы перед загрузкой.

person Ron Dunn    schedule 27.06.2019