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. php面试专题---17、MySQL的SQL语句编写考点

    php面试专题---17.MySQL的SQL语句编写考点 一.总结 一句话总结: 注意:只写精品 1.MySQL的关联UPDATE语句? 关键UPDATE A,B:UPDATE A,B SET A.c ...

  2. oracle sqldeveloper选择性复制备份数据库

    有时需要复制的数据库比较大,复制太慢,或容易出错. 数据库小,简单的 就没这么复杂了,直接导出dmp或用工具都可以.这篇是针对比较大,选择性复制,且复制总是失败的情况. 方法如下. 工具 sqldev ...

  3. NuGet-Doc:NuGet.Server

    ylbtech-NuGet-Doc:NuGet.Server 1.返回顶部 1. NuGet.Server 2018/03/13 NuGet.Server 是由 .NET Foundation 提供的 ...

  4. 解决Win7部分便笺的元数据已被损坏的方法

    Win7部分便笺的元数据已被损坏的方法 我们使用键盘上"Win+F"组合键搜索功能,直接找到"inkobj.dll"这个文件,一般会搜索出来好多,先随便选一个. ...

  5. SSH 的原理和实践

    最近自己在学习使用SSH,现将自己理解的SSH原理和实践SSH的操作写成一篇博客,以供日后查看. 一.SSH是什么?为什么会出现SSH? SSH英文全称是Secure Shell,即安全外壳.首先SS ...

  6. HTML--JS 9*9乘法口诀

    <html> <head> <title>9*9乘法口诀</title> <script language="JavaScript&qu ...

  7. HTML --JS 选择框

    <html> <head> <title>选择框</title> <script language="JavaScript"& ...

  8. v-if指令

    <!doctype html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. poj2010 Moo University - Financial Aid 优先队列

    Description Bessie noted that although humans have many universities they can attend, cows have none ...

  10. Ngnix VS Apache

    Ngnix和Apache各有优缺点, Ngnix在并发性能上比Apache好太多了 原因是,Ngnix是采用的epoll网络I/O模型, 而Apache采用的是select网络I/O模型 具体参见:  ...