Я пытаюсь экспортировать данные из HDFS в SQL Server. Исходная таблица имеет более 500 столбцов, и каждый раз, когда я выполняю работу по экспорту Sqoop, она застревает, показывая, что mapreduce завершен на 100%. Я создал две фиктивные таблицы, как показано ниже, чтобы узнать, где точно сохраняется проблема. Единственное различие между таблицей 1 и таблицей 2 состоит в том, что у более поздней версии есть один дополнительный столбец [col14 varchar (5)]Экспорт Sqoop в SQL Server терпит неудачу/зависает для большего количества столбцов
Во-первых, я выполнил экспортное задание для Table1, которое имеет 13 столбцов [тип данных varchar (5)]. Задание успешно завершено и экспортировано все 3 записи на SQL Server.
Затем я выполнил экспортное задание для Table2 с 14 столбцами. Когда я запускал это задание, я не видел сообщений об ошибках/исключениях, но он зависает навсегда после завершения карты на 100%. Монитор активности SQL Server показывает, что процесс создается, но он не получает никаких данных/подготовленных заявлений от Hadoop.
Эта проблема существует только с SQL Server? Есть ли ограничение на количество столбцов, экспортированных на SQL Server? Нужно ли мне настраивать изменения конфигурации в моем кластере? Пожалуйста, порекомендуйте.
Конфигурация
Hadoop Версия - Cloudera 2.6.0-CDH-5.5.2 | Sqoop Version - 1.4.6 | Версия SQL Server - 2008 R2
6 Узел Кластер - 1 NN & 5DN | Задача карты - 2 ГБ/1vCPU | Уменьшить Задача - 2 Гб/1vCPU
Table1
CREATE TABLE [dbo].[tbldummy1]
(
[col1] [varchar] (5) NOT NULL,
[col2] [varchar](5) NULL,
[col3] [varchar](5) NULL,
[col4] [varchar](5) NULL,
[col5] [varchar](5) NULL,
[col6] [varchar](5) NULL,
[col7] [varchar](5) NULL,
[col8] [varchar](5) NULL,
[col9] [varchar](5) NULL,
[col10] [varchar](5) NULL,
[col11] [varchar](5) NULL,
[col12] [varchar](5) NULL,
[col13] [varchar](5) NULL,
CONSTRAINT [PK_dummy1] PRIMARY KEY ([col1] ASC))
Sqoop Команда для Table1
sqoop export \
--connect “jdbc:sqlserver://x.x.x.x:port;database=xxxxxxx” \
--username xxxxxx --password yyyyyy \
--table tbldummy1 \
--export-dir /user/hue/Out1 \
--input-fields-terminated-by '|' \
-m 1 \
--verbose
входных данных для таблицы 1
aa|01|02|03|04|05|06|07|08|09|10|11|12
bb|01|02|03|04|05|06|07|08|09|10|11|12
cc|01|02|03|04|05|06|07|08|09|10|11|12
Таблица 2
CREATE TABLE [dbo].[tbldummy2](
[col1] [varchar] (5) NOT NULL,
[col2] [varchar](5) NULL,
[col3] [varchar](5) NULL,
[col4] [varchar](5) NULL,
[col5] [varchar](5) NULL,
[col6] [varchar](5) NULL,
[col7] [varchar](5) NULL,
[col8] [varchar](5) NULL,
[col9] [varchar](5) NULL,
[col10] [varchar](5) NULL,
[col11] [varchar](5) NULL,
[col12] [varchar](5) NULL,
[col13] [varchar](5) NULL,
[col14] [varchar](5) NULL,
CONSTRAINT [PK_dummy2] PRIMARY KEY ([col1] ASC))
Sqoop Команда для таблицы 2
sqoop export \
--connect "jdbc:sqlserver://x.x.x.x:port;database=xxxxxxx" \
--username xxxxxx --password yyyyyy \
--table tbldummy2 \
--export-dir /user/hue/Out2 \
--input-fields-terminated-by '|' \
-m 1 \
--verbose
Входные данные для таблицы 2
aa|01|02|03|04|05|06|07|08|09|10|11|12|13
bb|01|02|03|04|05|06|07|08|09|10|11|12|13
cc|01|02|03|04|05|06|07|08|09|10|11|12|13
Журналы консоли для таблицы 2
16/03/16 23:35:01 INFO mapreduce.Job: Running job: job_1458150283440_0028
16/03/16 23:35:07 INFO mapreduce.Job: Job job_1458150283440_0028 running in uber mode : false
16/03/16 23:35:07 INFO mapreduce.Job: map 0% reduce 0%
16/03/16 23:35:18 INFO mapreduce.Job: map 100% reduce 0%