1

我正在使用 sqoop 导入工具将数据导入 HBASE 表。而且我创建了一个自定义的 PutTransformer 类,并提供了 jar 和属性以使用自定义转换器,但它没有考虑自定义转换器类。

谁可以帮我这个事。

Sqoop 命令:

sqoop import -libjars /home/ghk/hbase/poc/customsqoop.jar -D sqoop.hbase.insert.put.transformer.class=com.sqoop.transformer.CustomPutTransformer --connect 'jdbc:oracle:thin:@// XX.XY.XA.XZ:1521/a701' --table XYZ.TEMP_HBASE_TYPE2 --columns 'TID、HBASE_TYPE、DESCRIPTION、IS_DELETED、CREATED' --hbase-create-table --hbase-table 'TEMP_HBASE_TYPE2' --column -family CLMN --hbase-row-key 'TID' --fetch-size '10000' --class-name 'HBaseType' --split-by 'TID' --username xxx--password xxxyy --compress --压缩编解码器 org.apache.hadoop.io.compress.SnappyCodec --num-mappers 3 --outdir /home/ghk/hbase/poc/SqoopClasses

问候, GHK。

4

1 回答 1

0

使用 /etc/sqoop/conf/sqoop-env.sh 中定义的环境变量“SQOOP_USER_CLASSPATH” 不要使用libjars参数。

$ grep USER /etc/sqoop/conf/sqoop-env.sh 
export SQOOP_USER_CLASSPATH="`ls ${HIVE_HOME}/lib/libthrift-*.jar 2> /dev/null`:${SQOOP_USER_CLASSPATH}"
$ export SQOOP_USER_CLASSPATH=/custom/lib01.jar:/custom/lib02.jar
$ sqoop import ...
于 2018-09-11T08:50:40.737 回答