Всякий раз, когда я пытаюсь сохранить указанный c DataFrame в DW, я получаю сообщение:
ОШИБКА: при вызове o692.save произошла ошибка. : com.databricks.spark.sqldw.SqlDWSideException: SQL DW не удалось выполнить запрос JDB C, созданный соединителем. Базовые исключения SQLException: - com.microsoft.sqlserver.jdb c .SQLServerException: HdfsBridge :: recordReaderFillBuffer - Обнаружена непредвиденная ошибка при заполнении буфера чтения записей: HadoopSqlException: строка или двоичные данные будут усечены. [ErrorCode = 107090] [SQLState = S0001]
Я проверил размер строк в моем CSV-файле. У большего есть 38 символов.
Это мой метод сохранения / записи (работал для других фреймов данных):
df.write\
.format('com.databricks.spark.sqldw') \
.option('url', conn_string_dw) \
.option('maxStrLength', '4000') \
.option('forwardSparkAzureStorageCredentials', 'true') \
.option('dbTable', db_table_name) \
.option('tempDir', dw_temporary_path_url) \
.option('truncate', 'False')\
.mode('append')\
.save()
Что здесь может происходить?