Ошибка при использовании метода записи объекта 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") в своем коде, кажется, вы поставили (_) подчеркивание.