sqoop从sqlserver导入数据操作指令及hive创建表过程

sqoop从sqlserver导入数据操作指令及hive创建表过程

#sqoop从sqlserver导入数据到HDFS上,指定存储目录。设置m(mr)数量

bin/sqoop import \

--connect 'jdbc:sqlserver://xx.xx.xx.xxx:1433;database=库名' \

--username 'root' \

--password 'root' \

--table 'bbb' \

--target-dir /user/hive/warehouse/bbb \

--m 1

 

#导入数据到hive中,需要加--hive-import

bin/sqoop import \

--connect 'jdbc:sqlserver:// xx.xx.xx.xxx:1433;database=库名' \

--username 'root' \

--password 'root' \

--table 'bbb' \

--hive-import

 

#导入数据的时候自动创建hive表,默认为内部表

sqoop import  \

--connect 'jdbc:sqlserver:// xx.xx.xx.xxx:1433;database=库名' \

--username 'root' \

--password 'root' \

--table 'bbb' \

--hive-import  \

--create-hive-table \

--m 1

 

 

Hive创建表

--创建外部表chc

create external table t2(

   id      int

  ,name    string

  ,hobby   array

  ,add     map

)

row format delimited

fields terminated by ','

location '/user/bbb'

 

#location指->这里使用导入到HDFS上的数据

 

 

--导入数据到指定表命令(非必要)

load data local inpath'/user/hive/warehouse/bbb' overwrite into table bbb;

 

--查询指定userid  

select * from chc whereuserid='A6C996A8-86E8-4A4C-AC77-CAE2A866CDD5'

 

--其他字段指定设置举例

create external table t2(

   id      int

  ,name    string

  ,hobby   array

  ,add     map

)

row format delimited

fields terminated by ','

collection items terminated by '-'

map keys terminated by ':'

location '/user/t2'

;

 

--原数据---上例

1,xiaoming,book-TV-code,beijing:chaoyang-shagnhai:pudong

2,lilei,book-code,nanjing:jiangning-taiwan:taibei

3,lihua,music-book,heilongjiang:haerbin

 

外部表和内部表的区别与联系---下篇(有空写)


你可能感兴趣的:(Hadoop,sqoop,hive)