Я пытаюсь настроить Hive на EMR Amazon, чтобы извлекать данные из таблицы DynamoDB и выгружать их на S3. Я следовал инструкциям, найденным here, и имел успех в большинстве наших таблиц. Однако с одной таблицей DynamoDB я получаю сообщение об ошибке (показано ниже).Максимальное количество столбцов в улей Внешние таблицы
В данной таблице есть лот столбцов (> 100), и сокращение разрезания до всего лишь их подмножества позволяет сценарию запускаться, поэтому я предполагаю, что это проблема, но я не может найти никакой документации по этому поводу.
Есть ли какой-то жесткий лимит на количество столбцов, которые я могу определить? Или есть какой-то другой предел, который я, вероятно, буду бить здесь? Есть ли способ обойти это?
Ошибка я получаю выглядит следующим образом:
FAILED: Error in metadata: javax.jdo.JDODataStoreException: Put request failed : INSERT INTO `TABLE_PARAMS` (`PARAM_VALUE`,`TBL_ID`,`PARAM_KEY`) VALUES (?,?,?)
NestedThrowables:
org.datanucleus.store.mapped.exceptions.MappedDatastoreException: INSERT INTO `TABLE_PARAMS` (`PARAM_VALUE`,`TBL_ID`,`PARAM_KEY`) VALUES (?,?,?)
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask
Сценарий я пытаюсь запустить выглядит следующим образом:
CREATE EXTERNAL TABLE hive_WSOP_DEV_STATS_input (col1 string, col2 string...)
STORED BY 'org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler'
TBLPROPERTIES ("dynamodb.table.name" = "DYNAMO_TABLE_NAME",
"dynamodb.column.mapping" = "col1:col1,col2:col2...");
Это похоже на проблему. Мы вроде изменили тактику, и проблема стала спорной, хотя. –
Мы столкнулись с той же проблемой. Не совсем после ответа, хотя, где можно настроить эту переменную? – Alexey