2015-06-21 3 views
0

Я сгенерировал файл последовательности с использованием куста и попытался импортировать его в bigtable, мое задание на импорт не работает с ошибкой ниже.Ошибка импорта большого стола

2015-06-21 00:05:42,584 INFO [AsyncDispatcher event handler] org.apache.hadoop.mapreduce.v2.app.job.impl.TaskAttemptImpl: Diagnostics report from attempt_1434843251631_0007_m_000000_1: Error: java.lang.ClassCastException: org.apache.hadoop.io.BytesWritable cannot be cast to org.apache.hadoop.hbase.io.ImmutableBytesWritable 
at com.google.cloud.bigtable.mapreduce.Import$Importer.map(Import.java:127) 
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:145) 
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:784) 
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341) 
at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:163) 
at java.security.AccessController.doPrivileged(Native Method) 
at javax.security.auth.Subject.doAs(Subject.java:415) 
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1628) 
at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:158) 

Я использую определение таблицы и таблицы ниже для генерации файла последовательности.

create table ilv_bigtable_test(
item_id int 
) 
stored as sequencefile 
LOCATION 'gs://zxx/xx/aa1_temp/ilv_bigtable_test/' 
TBLPROPERTIES('serialization.null.format'='') 
; 

SET hive.exec.compress.output=true; 
SET mapred.max.split.size=256000000; 
SET mapred.output.compression.type=BLOCK; 

insert overwrite table ilv_bigtable_test 
select 
item_id 
FROM xxx 
; 

Ниже HBase создать таблицу заявление

create 'test', 'item_id' 
+0

Какая версия Hive, HBase, Hadoop вы используете? Из трассировки стека это не похоже на проблему Cloud Bigtable, вы пробовали ее на чистом HBase? –

+0

Это похоже на ошибку в не-Cloud код Bigtable: Ошибка: java.lang.ClassCastException: org.apache.hadoop.io.BytesWritable не может быть приведен к org.apache.hadoop.hbase.io.ImmutableBytesWritable – Max

+0

Мы находимся на улей 0,13 на хауоп 2.4. Да, мы могли загружать одни и те же данные в hbase, используя csv bulkload. Hadoop fs -text дает правильные результаты в файле последовательности, поэтому не уверен, связана ли эта проблема с плохим файловым форматом hadoop fs -text gs: // zzz/ssss/aa1_temp/ilv_bigtable_test/* –

ответ

0

Вам нужно гораздо более позднюю версию Apache Hive - 1.1.0 является первой версией, поддерживающей HBase 1.0, который требует Облако Bigtable. Вы можете попробовать с Hive 1.2.1 по крайней мере.

Смежные вопросы