hive常常用命令.docx
文本预览下载声明
???大数据学习总结?
? 公司对大数据方面也做了不少的培训,自己也学习了一些,在实际应用中也有所体会。针对大数据和关系型数据库有几点感触比较深刻:1.数据存储位置不同。Hive 是建立在 Hadoop 之上的,所有 Hive 的数据都是存储在 HDFS 中的。而数据库则可以将数据保存在块设备或者本地文件系统中。2.数据更新。由于 Hive 是针对数据仓库应用设计的,而数据仓库的内容是读多写少的。因此,Hive 中不支持对数据的改写和添加,所有的数据都是在加载的时候中确定好的。而数据库中的数据通常是需要经常进行修改的,因此可以使用 INSERT INTO ...? VALUES 添加数据,使用 UPDATE ... SET修改数据.这也是在汇总数据比较痛苦的地方。~~(_)~~3.访问速度。hive 在查询时有延迟,因为没有索引需要扫描整个表,还有就是mapreduce框架,MapReduce本身具有较高的延迟,所以在利用它来执行hive 查询时就会多的延迟了。Hive 不适合在线数据查询,针对数据量比较小的表数据库更快一些。目前来说除了详单其他数据量还不是特别大,访问速度很多时候没有关系型数据库查询的快。????还有很多不同的地方,这里就不多说了,就简单说一下常用的命令吧:一、Hive?1.1建表:CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name? [(col_name data_type [COMMENT col_comment], ...)]? [COMMENT table_comment]? [PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)]? [CLUSTERED BY (col_name, col_name, ...)? [SORTED BY (col_name [ASC|DESC], ...)] INTO num_buckets BUCKETS]? [ROW FORMAT row_format]? [STORED AS file_format]? [LOCATION hdfs_path]举例说明:CREATE EXTERNAL TABLE IF NOT EXISTS IN_BILL_GG_D1512(? SOURCE_TYPE???????????????? STRING? ,BIZ_TYPE?????????????????? STRING...)PARTITIONED BY (dt string)ROW FORMAT DELIMITED? FIELDS TERMINATED BY , LINES TERMINATED BY \nLOCATION /etldata/cdr/gg/1512;1.2Hive下查看数据表信息的方法:方法1:查看表的字段信息??desc table_name;方法2:查看表的字段信息及元数据存储路径??desc extended table_name;方法3:查???表的字段信息及元数据存储路径??desc formatted table_name;
Ef:
hive desc formatted t_cdr_wn1609;
OK
# col_name data_type comment
system_type string
record_type string
msisdn string
real_number string
start_datetime string
end_datetime string
call_duration int
session_id
显示全部