Sqoop 加载数据到ORC表

sqoop目前支持直接从RDBMS加载数据到Hive的ORC表,这可以通过两种方式实现。

  • 先创建Hive ORC表,然后用sqoop import命令将数据导入到Hive ORC表
  • 利用sqoop import同时创建Hive ORC表并加载数据

这里简单测试一下用sqoop从Oracle表导入到Hive ORC表,具体方法如下
(1)

//hive CLI创建orc测试表
hive> create table hive_orc1(a int, b string, c string, d int, e string, f string) stored as orc;
OK
Time taken: 0.254 seconds
hive> show create table hive_orc1;
OK
CREATE TABLE `hive_orc1`(
  `a` int,
  `b` string,
  `c` string,
  `d` int,
  `e` string,
  `f` string)
ROW FORMAT SERDE
  'org.apache.hadoop.hive.ql.io.orc.OrcSerde'
STORED AS INPUTFORMAT
  'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'
OUTPUTFORMAT
  'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat'
LOCATION
  'hdfs://nameservice1/user/hive/warehouse/hive_orc1'
TBLPROPERTIES (
  'transient_lastDdlTime'='1490084866')

//sqoop import命令加载数据
sqoop-import --connect jdbc:oracle:thin:@10.10.11.16:1521/esgyn --username system --password 12345 --table TEST_GROUPBY --split-by A --hcatalog-table hive_orc1 --hive-overwrite --null-string '\\N' --null-non-string '\\N' --verbose

(2)

//sqoop import直接创建hive orc表并加载数据
sqoop-import --connect jdbc:oracle:thin:@10.10.11.16:1521/esgyn --username system --password 12345 --table TEST_GROUPBY --split-by A --create-hcatalog-table --hcatalog-table hive_orc2 --hcatalog-storage-stanza 'stored as orc tblproperties ("orc.compress"="SNAPPY")'

//检查创建的hive orc表
hive> show create table hive_orc2;
OK
CREATE TABLE `hive_orc2`(
  `a` decimal(38,0),
  `b` char(10),
  `c` char(10),
  `d` decimal(38,0),
  `e` char(10))
ROW FORMAT SERDE
  'org.apache.hadoop.hive.ql.io.orc.OrcSerde'
STORED AS INPUTFORMAT
  'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'
OUTPUTFORMAT
  'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat'
LOCATION
  'hdfs://nameservice1/user/hive/warehouse/hive_orc2'
TBLPROPERTIES (
  'orc.compress'='SNAPPY',
  'transient_lastDdlTime'='1490086049')
Time taken: 0.066 seconds, Fetched: 17 row(s)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据源的港湾

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值