MySQL的密码是:123456

1、hive创建标准表(以后均可以按照这样创建):

  create [external] table [if not exists] records

(year STRING [comment "year备注消息"],

   temperature INT [comment "temperature 备注消息"],

quality INT [comment "quality 备注消息"]

   )

  [comment "表records备注消息"]

  [partitioned by (col_name,col_name, ... )]

  [clustered by (col_name,....) into nums buckets]

  [ sorted by (col_name [ASC | DESC],...) into num_buckets BUCKETS ]

  row format delimited fields terminated by ‘\t’;

  [stored as file_format]

  [location hdfs_path]

解析:第一行声明一个records表,包括三列(3个字段):year,temperature,quality。分别指定数据类型为:string,int,int。//第一行解析与MySQL创建表一样

   第二行是HiveQL所特有,数据文件中每一行都是由制表符分隔的文本。若将文本导入由本地或者hdfs导入hive时必须按照此格式即每行三个字段,每个字段由制表符分隔,每行由换行符分隔

注意:row format delimited  分隔符设置的开始语句

     fields terminated by ‘\t’  设置字段与字段之间的分隔符,此时使用制表符分隔

     collection items terminated by "."  设置一个复杂类型(array,struct)字段中的各个item之间的分隔符,此时用点表示

     map keys terminated by "."  设置复杂类型map字段的key和value之间的分隔符,此时用电表示

     lines terminated by   设置行与行之间的分隔符

 例如:row format delimited
    fields terminated by '\t'
    collection items terminated by ','
    map keys terminated by ':'
    lines terminated by '\n';
    OK
    Time taken: 0.287 seconds
    ROW FORMAT DELIMITED 必须在其它分隔设置之前,也就是分隔符设置语句的最前
    LINES TERMINATED BY必须在其它分隔设置之后,也就是分隔符设置语句的最后,否则会报错

  PS:表名records在hdfs中其实是目录名;

2、将数据文件导入hive

  load data local inpath “/home/hdc/sample.txt”

  overwrite into table records;

解析:将本地文件sample导入records表中,其中overwrite可加可不加,如果加表示hive删除表对应目录中已有的所有文件,再将sample.txt文件送到records下;

   若不加表示hive简单的把sample.txt文件加入目录(若此目录有同名的文件则自动修改文件存储)。

3、--将HDFS中 /input/student.txt 导入到t3(此种方法是移动即student.txt文件将在t3文件夹下)

  load data inpath '/input/student.txt' overwrite into table t3;

4、将数据导入分区表:

  load data local inpath '/home/hdc/data_1.txt' into table partition_table partition(gender='M');

5、导出数据本地或者hdfs上:

  insert overwrite local directory ‘/home/hdc’  //除掉local,把路径改成hdfs上的路径就可以导入到hdfs上

  select * from student

6、通过查询语句向表中插入输入(从另外一个中的数据复制到另外一个表,两个表的字段要相同,并且其分区字段也相同即两表结构要一样)

  静态插入:

    insert into table employee  //insert overwrite table emplyee

    partition(country='US',state='OR')

    select * from staged_emplyee se

    where se.cnty='US' and se.st='OR';

  动态插入(以select语句后面的两个字段为分区字段):

    insert into table employee

    partition(country,state)

    select ....,se.cnty,se.st

    from staged_emplyee se;

  可以混合使用静态插入和动态插入(静态分区间键必须在动态分区键的前面)

    insert overwrite table emplyee

    partition(country='US',state)

    select ....,se.cnty,se.st

    from staged_emplyee se

    where se.cnty='US'

7.创建外部表及其指定数据位置

  create table stu(name string,score int)

  row format delimited fields terminated by '\t'

  location '/data'(外部表关联hdfs上的文件)

  

hive基础知识or基本操作命令的更多相关文章

  1. 《Programming Hive》读书笔记(两)Hive基础知识

    <Programming Hive>读书笔记(两)Hive基础知识 :第一遍读是浏览.建立知识索引,由于有些知识不一定能用到,知道就好.感兴趣的部分能够多研究. 以后用的时候再具体看.并结 ...

  2. Hive基础知识梳理

    Hive简介 Hive是什么 Hive是构建在Hadoop之上的数据仓库平台. Hive是一个SQL解析引擎,将SQL转译成MapReduce程序并在Hadoop上运行. Hive是HDFS的一个文件 ...

  3. Hive基础知识

    一.产生背景 1.MapReudce编程繁琐,需要编写大量的代码 2.HDFS中存放的都是文件,在HDFS中没有Scheme的概念,无法用SQL进行快速的查询. 二.Hive的概念 Hive是基于Ha ...

  4. (cdh)hive 基础知识 名词详解及架构

    过程 启动 hive 之后出现的 CLI 是查询任务的入口,CLI 提交任务给 Driver Driver 接收到任务后调用 Compiler,Executor,Optimizer 将 SQL 语句转 ...

  5. hive基础知识五

    Hive 主流文件存储格式对比 1.存储文件的压缩比测试 1.1 测试数据 https://github.com/liufengji/Compression_Format_Data ​ M 1.2 T ...

  6. hive基础知识四

    1. hive表的数据压缩 1.1 数据的压缩说明 压缩模式评价 可使用以下三种标准对压缩方式进行评价 1.压缩比:压缩比越高,压缩后文件越小,所以压缩比越高越好 2.压缩时间:越快越好 3.已经压缩 ...

  7. hive基础知识三

    1. 基本查询 注意 SQL 语言大小写不敏感 SQL 可以写在一行或者多行 关键字不能被缩写,也不能分行 各子句一般要分行写 使用缩进提高语句的可读性 1.1 全表和特定列查询 全表查询 selec ...

  8. hive基础知识二

    1. Hive的分区表 1.1 hive的分区表的概念 在文件系统上建立文件夹,把表的数据放在不同文件夹下面,加快查询速度. 1.2 hive分区表的构建 创建一个分区字段的分区表 hive> ...

  9. hive基础知识一

    1. Hive是什么 1.1 hive的概念 Hive:由Facebook开源,用于解决海量(结构化日志)的数据统计. Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表 ...

随机推荐

  1. (2)用C语言实现面向对象---封装、继承和多态

    封装:struct中封装成员变量和函数指针. 继承:结构体中嵌套结构体. 多态:子类对象动态指向父类的现象叫多态. void  pFunction2(void) { printf(“函数2”): } ...

  2. linux如何查看端口被哪个进程占用的方法

    linux如何查看端口被哪个进程占用的方法: 1.lsof -i:端口号2.netstat -tunlp|grep 端口号 都可以查看指定端口被哪个进程占用的情况[步骤一]lsof -ilsof -i ...

  3. Seek the Name, Seek the Fame (poj2752

    Seek the Name, Seek the Fame Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 14561   Ac ...

  4. 170814关于Cookie的知识点

    1.会话控制 Http协议   Http协议两个缺陷: 1.HTTP协议是纯文本的    2.HTTP协议是无状态的 服务器不能简单的通过HTTP协议来区分多次请求是否发自同一个用户    虽然通过H ...

  5. android7.0对于SharedPreferences设置模式的限制

    错误信息: 03-28 10:16:12.701   830   932 E AndroidRuntime: FATAL EXCEPTION: Thread-903-28 10:16:12.701   ...

  6. 云计算openstack核心组件——keystone身份认证服务

    一.Keystone介绍:       keystone 是OpenStack的组件之一,用于为OpenStack家族中的其它组件成员提供统一的认证服务,包括身份验证.令牌的发放和校验.服务列表.用户 ...

  7. Centos7.2命令安装图形化界面

    版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/liang_operations/arti ...

  8. Vagrant 手册之 Provisioning - file 配置程序

    原文地址 Provisioner 命令:"file" 通过 file 配置程序可以上传宿主机的文件或目录到虚拟机中. 使用场景:将宿主机的 ~/.gitconfig 复制到虚拟机中 ...

  9. DEDE网站地图优化技巧

    DEDE网站地图优化技巧-把网站地图生成在系统根目录,利于搜索引擎收录相信恨多用DEDECMS做站的朋友,为避免将data目录内的东西随便外泄,在robots中将data目录屏蔽了,但是DEDE默认的 ...

  10. 模拟赛毒瘤状压DP题:Kronican

    Kronican 内存限制:32 MiB 时间限制:2000 ms 标准输入输出 题目类型:传统 评测方式:文本比较 上传者: cqbzgm 题目描述 Mislav有N个无限体积的杯子,每一个杯子中都 ...