• hive的初识(基本操作)


     1.2 语法
     	创建数据库
     		create database if not exists orders;
     	查询建表的方式
     		create table as select 方式:根据查询的结果自动创建表,并将查询结果数据插入新建的表中。
     	克隆表
     		create table like tablename 方式:是克隆表,只复制tablename的表结构。
     	1、创建一个分区表,以dt为分区列:
     		create table if not exists invites 
     		(
     			id int,
     			name string
     		) 
     		partitioned by 
     		(
     			dt string
     		) 
     		row format delimited fields terminated by '	' [stored as textfile];
    
     	2、将数据添加到时间为2017-12-07这个分区中:
     		load data local inpath '/home/orders.csv' overwrite into table invites partition (dt='2017-12-07');
     		load data local inpath '/home/orders.csv' overwrite into table invites partition (dt='2017-11-11');
     	3、从一个分区中查询数据:
     		select * from invites where dt='2017-12-07';
     	4、往一个分区表的某一个分区中添加数据:
     		insert overwrite table invites partition (dt='2017-12-07') select id,max(name) from test group by id;
     	5、查看分区的具体情况
     		show partitions tablename; eq: hive> show partitions orders;
    
     	【
     		精解:
     			这个日志表以dt字段分区,dt是个虚拟的字段,dt下并不存储数据,而是用来分区的,实际数据存储时,dt字段值一样的数据存入同一个子目录中,插入数据或者导入数据时,
     			同一天的数据dt字段赋值一样,这样就实现了数据dt日期分区存储。
     			当hive查询数据时,如果指定了dt筛选条件,那么只需要到对应的分区下去检索数据即可,大大提高了效率。所以对于分区表查询时,尽量添加上分区字段筛选条件。
     	】
    

      

  • 相关阅读:
    手机操作
    模拟手机操作
    get_attribute_value
    test_order
    信息收集-FOFA资产收集与FOFA api
    html中form讲解
    安装redis
    yum vs rpm
    yum 安装java环境
    显示当前目录所有文件大小的命令ls -lht
  • 原文地址:https://www.cnblogs.com/mologa-jie/p/8170180.html
Copyright © 2020-2023  润新知