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

Мы используем мастер копирования данных фабрики данных для переноса данных с сервера базы данных mongo в Azure SQL. При этом для одной из таблиц мы сталкиваемся с проблемой размера буфера данных, поскольку эта конкретная таблица содержит большие текстовые значения

Даже во время предварительного просмотра мы получаем ошибку, как показано ниже

Ошибка во время предварительного просмотра

Ошибка при обработке запроса: неизвестная ошибка из оболочки. 'Type=,Message=SUCCESS_WITH_INFO [01004] [Microsoft][ODBC] (10160) Строка Право данных строки: Строковые данные слишком велики для буфера выходных данных и были усечены.,Source=,' ActivityId: 2ec717e2-5f0a-4fe4-ВЕВС-a68af0d23a69

Мы проигнорировали это и продолжили миграцию, и мы все еще получили эту ошибку, но немного больше информации, как показано ниже

При копировании произошла внутренняя ошибка сервиса. Для получения дополнительной информации, отправьте это сообщение в службу поддержки. ErrorCode: 8601 GatewayNodeName= имя сервера,ErrorCode=SystemErrorOdbcWrapperError,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message= Неизвестная ошибка из оболочки.,Source=Microsoft.DataTransfer.Common,''Type=Microsoft.DataTransfer..Odbc.Interop.OdbcException,Message=SUCCESS_WITH_INFO [01004] [Microsoft][ODBC] (10160) Строковое усечение данных справа: слишком большое для строкового буфера выходных данных и было усечено.,Source=Microsoft.DataTransfer.ClientLibrary.Odbc.Wrapper ".

Я попытался увеличить writeBatchSize для приемника до 1000000, а также увеличил writeBatchTimeout до 00:05:00. Но это не помогло.

Пожалуйста, дайте нам знать, как решить эту проблему

1 ответ

Обратившись в Microsoft, мы узнали, что это произошло из-за ограничения их драйвера mongodb. Они поддерживают только до 130 тыс. Символов для значения, которое будет вставлено в поле кортежа. Если он превышает 130 тыс. Символов, он выдаст ошибку выше

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