Ошибка при использовании метода записи объекта dataframe для блоков данных

Я пытаюсь записать некоторые данные в хранилище данных SQL Azure, используя Azure Databricks и Python. Код, который я использую, выглядит следующим образом:

salesdf.write\
   .format('com.databricks.spark.sqldw')\
   .option('url', sqlDwUrlSmall)\
   .option('dbtable', 'StgSales')\
   .option( 'forward_spark_azure_storage_credentials','True')\
   .option('tempdir', tempDir)\
   .mode('overwrite')\
   .save()

Этот метод не работает без определенного сообщения об ошибке. Отследить также не имеет никакого смысла. Я уверен, что все параметры и формат указаны правильно, но он все еще не работает.

1 ответ

Не уверен, но я думаю, что проблема с синтаксисом. Это то, что я нашел в официальной документации.

df.write \
  .format("com.databricks.spark.sqldw") \
  .option("url", "jdbc:sqlserver://<the-rest-of-the-connection-string>") \
  .option("forwardSparkAzureStorageCredentials", "true") \
  .option("dbTable", "my_table_in_dw_copy") \
  .option("tempDir", "wasbs://<your-container-name>@<your-storage-account-name>.blob.core.windows.net/<your-directory-name>") \
  .save()

Проверьте .option("forwardSparkAzureStorageCredentials", "true") в своем коде, кажется, вы поставили (_) подчеркивание.

Другие вопросы по тегам