Hive操作

首先启动hadoop与mysql服务

切换到hadoop用户,输入命令: hive

查看数据库show databases;

图片

PS:hive默认只有一个defalut数据

 

可以通过create database 库名创建数据库

图片

PS:其实一个库就是一个虚拟路径

 

以在hive命令行输入show create database dm;查看详细信息

 图片

 

 

切换数据库 use 数据库;

图片

 

创建表

CREATE TABLE IF NOT EXISTS test100 (

ID int,Homephone String,NAME String,CARD_ADN_OTHERCARD String)

COMMENT 'test100'

ROW FORMAT DELIMITED

FIELDS TERMINATED BY ','

LINES TERMINATED BY '\n'

STORED AS TEXTFILE;

上面的我指定的分隔符逗号,也可以填不可见字符以unicode的方式

PS创建表的时候需要指定分隔符(有的客户指定不可见分割符 \u0001 ,具体参照ASCII码表前96),如果键盘上有键盘的话可以按住Alt+码表数字,打出不可见字符,须在notepad打

 

CREATE TABLE IF NOT EXISTS CS2 (

ID int,NAME String,IDENTIFICATION_CARD String,PHONE String,EMAIL String,ADRESS String,BANK_CARD String,BUSINESS_NAME String,BUSINESS_LICENSES String,ORGANIZATION_CODE String,TAXPAYER_IDENTITY_NUMBER String,POSTCODE String,NAME_AND_BUSINESS_NAME String,CARD_ADN_OTHERCARD String)

COMMENT 'cs2'

ROW FORMAT DELIMITED

FIELDS TERMINATED BY ','

LINES TERMINATED BY '\n'

STORED AS TEXTFILE;

 

查看创建表详细信息 show create table 表名

图片

 

test100.txt文件中的数据列之间是使用\t分割的,可以通过下面的语句将这个文件里面的数据导入到wyp表里面,操作如下:

hive> load data local inpath ‘tmp/test100.txt' into table dm;

Copying data from file:/home/wyp/wyp.txt

Copying file: file:/home/wyp/wyp.txt

Loading data to table default.wyp

Table default.wyp stats:

[num_partitions: 0, num_files: 1, num_rows: 0, total_size: 67]

OK

Time taken: 5.967 seconds

posted @ 2018-09-07 15:52  黒貓  阅读(250)  评论(0编辑  收藏  举报