类似Mysql的数据库概念

hive> CREATE DATABASE cui;

hive> USE cui;

创建表

CREATE TABLE test(

first STRING,

second STRING

)

默认记录和字段分隔符

\n   每行一条记录

^A    分隔列(八进制 \001)

^B    分隔ARRAY或者STRUCT中的元素,或者MAP中多个键值对之间分隔(八进制 \002)

^C    分隔MAP中键值对的“键”和“值”(八进制 \003)

自定义分隔符

CREATE TABLE test(

……

)

ROW FORMAT DELIMITED

FIELDS TERMINATED BY '\001'

COLLECTION ITEMS TERMINATED BY '\002'

MAP KEYS TERMINATED BY '\003'

LINES TERMINATED BY '\n'

查看信息

DESCRIBE DATABASE cui;

DESCRIBE DATABASE EXTENDED cui;

分区表

CREATE TABLE test(

……

)

PARTITIONED BY ( country STRING ); #分区键和字段不能重复

------------------------------------------------------------------

加载数据:

LOAD DATA LOCAL INPATH '/path/to/local/files'

OVERWRITE  INTO TABLE test

PARTITION (country='CHINA')

有LOCAL表示从本地文件系统加载(文件会被拷贝到HDFS中)

无LOCAL表示从HDFS中加载数据(注意:文件直接被移动!!!而不是拷贝!!! 并且。。文件名都不带改的。。)

OVERWRITE  表示是否覆盖表中数据(或指定分区的数据)(没有OVERWRITE  会直接APPEND,而不会滤重!)

关于加载数据的LOCAL关键字:

【使用前】:

[cui@node1 ~]$ hadoop fs -ls /workspace
Found 2 items
-rw-r--r--   1 yjt-app1-web1 supergroup    1716110 2016-01-14 16:31 /workspace/IOS_OPERA_STATISTICS_20160113.01.DAT
-rw-r--r--   1 yjt-app1-web1 supergroup  520964539 2016-01-14 21:20 /workspace/bpUserinfo_201511.log

【使用中】:

hive> LOAD DATA INPATH '/workspace/bpUserinfo_201511.log' INTO table testkv;
Loading data to table default.testkv
Table default.testkv stats: [numFiles=3, numRows=0, totalSize=520964575, rawDataSize=0]
OK
Time taken: 1.015 seconds

【使用后】:

[cui@node1 ~]$ hadoop fs -ls /workspace
Found 1 items
-rw-r--r--   1 yjt-app1-web1 supergroup    1716110 2016-01-14 16:31 /workspace/IOS_OPERA_STATISTICS_20160113.01.DAT

[cui@node1 ~]$ hadoop fs -ls /user/hive/warehouse/testkv
Found 5 items
drwxrwxr-x   - yjt-app1-web1 supergroup          0 2016-01-14 21:06 /user/hive/warehouse/testkv/.hive-staging_hive_2016-01-14_21-06-53_158_2726638877292950395-1
drwxrwxr-x   - yjt-app1-web1 supergroup          0 2016-01-14 21:08 /user/hive/warehouse/testkv/.hive-staging_hive_2016-01-14_21-08-59_461_1557138301562621871-1
-rwxrwxr-x   1 yjt-app1-web1 supergroup  520964539 2016-01-14 21:20 /user/hive/warehouse/testkv/bpUserinfo_201511.log
-rwxrwxr-x   1 yjt-app1-web1 supergroup         24 2016-01-14 21:09 /user/hive/warehouse/testkv/part-00000
-rwxrwxr-x   1 yjt-app1-web1 supergroup         12 2016-01-14 21:09 /user/hive/warehouse/testkv/part-00001

如果加载同样文件名的文件,会被自动重命名

【使用前】:

[cui@node1 ~]$ cp ~/oltpUserSqlLogs/crm/data/bpUserinfo_201504.log .
[cui@node1 ~]$ mv bpUserinfo_201504.log bpUserinfo_201511.log
[cui@node1 ~]$ hadoop fs -put bpUserinfo_201511.log /workspace
[cui@node1 ~]$ hadoop fs -ls /workspace                        
Found 2 items
-rw-r--r--   1 yjt-app1-web1 supergroup    1716110 2016-01-14 16:31 /workspace/IOS_OPERA_STATISTICS_20160113.01.DAT
-rw-r--r--   1 yjt-app1-web1 supergroup   40393299 2016-01-15 13:20 /workspace/bpUserinfo_201511.log

【使用中】:

hive> LOAD DATA INPATH '/workspace/bpUserinfo_201511.log' INTO table testkv;
Loading data to table default.testkv
Table default.testkv stats: [numFiles=4, numRows=0, totalSize=561357874, rawDataSize=0]
OK
Time taken: 1.745 seconds

【使用后】:

[cui@node1 ~]$  hadoop fs -ls /workspace                
Found 1 items
-rw-r--r--   1 yjt-app1-web1 supergroup    1716110 2016-01-14 16:31 /workspace/IOS_OPERA_STATISTICS_20160113.01.DAT

[cui@node1 ~]$ hadoop fs -ls /user/hive/warehouse/testkv
Found 6 items
drwxrwxr-x   - yjt-app1-web1 supergroup          0 2016-01-14 21:06 /user/hive/warehouse/testkv/.hive-staging_hive_2016-01-14_21-06-53_158_2726638877292950395-1
drwxrwxr-x   - yjt-app1-web1 supergroup          0 2016-01-14 21:08 /user/hive/warehouse/testkv/.hive-staging_hive_2016-01-14_21-08-59_461_1557138301562621871-1
-rwxrwxr-x   1 yjt-app1-web1 supergroup  520964539 2016-01-14 21:20 /user/hive/warehouse/testkv/bpUserinfo_201511.log
-rwxrwxr-x   1 yjt-app1-web1 supergroup   40393299 2016-01-15 13:20 /user/hive/warehouse/testkv/bpUserinfo_201511_copy_1.log
-rwxrwxr-x   1 yjt-app1-web1 supergroup         24 2016-01-14 21:09 /user/hive/warehouse/testkv/part-00000
-rwxrwxr-x   1 yjt-app1-web1 supergroup         12 2016-01-14 21:09 /user/hive/warehouse/testkv/part-00001

Hive - 建表和加载数据指令小结 以及使用Load data指令的注意事项的更多相关文章

  1. [Hive_3] Hive 建表指定分隔符

    0. 说明 Hive 建表示例及指定分隔符 1. Hive 建表 Demo 在 Hive 中输入以下命令创建表 user2 create table users2 (id int, name stri ...

  2. hive sequencefile导入文件遇到FAILED: SemanticException Unable to load data to destination table. Error: The file that you are trying to load does not match the file format of the destination table.错误

    hive sequencefile导入文件遇到FAILED: SemanticException Unable to load data to destination table. Error: Th ...

  3. hive建表与数据的导入导出

    建表: create EXTERNAL table tabtext(IMSI string,MDN string,MEID string,NAI string,DestinationIP string ...

  4. Apache Hive 建表操作的简单描述

    客户端连接hive [root@bigdata-02 bin]# ./beeline Beeline version by Apache Hive beeline: Connecting : Ente ...

  5. Oracle 自动生成hive建表语句

    从 oracle 数据库导数到到 hive 大数据平台,需要按照大数据平台的数据规范,重新生成建表的 SQL 语句,方便其间,写了一个自动生成SQL的存储过程. ① 创建一张表,用来存储源表的结构,以 ...

  6. CDH集群部署hive建表中文乱码

    背景:部署CDH集群的 hive 服务,选用 mysql 作为 hive 元数据的存储数据库,通过 hive cli 建表时发现中文注释均乱码. 现象:hive端建表中文注释乱码. 定位: 已经确认过 ...

  7. 利用MySQL原数据信息批量转换指定库数据表生成Hive建表语句

    1.写出文件工具类 package ccc.utile; import java.io.*; /** * @author ccc * @version 1.0.0 * @ClassName Write ...

  8. Hive建表和内外部表的使用

    原文链接: https://www.toutiao.com/i6766784274965201415 一.普通建表方式 create table stu_info( id int, name stri ...

  9. hive建表没使用LZO存储格式,可是数据是LZO格式时遇到的问题

    今天微博大数据平台发邮件来说.他们有一个hql执行失败.可是从gateway上面的日志看不出来是什么原因导致的,我帮忙看了一下.最后找到了问题的解决办法,下面是分析过程: 1.执行失败的hql: IN ...

随机推荐

  1. Import the Add Email and Post Configuration to the SiteMap managed solution -Dynamices CRM

    We have prepared a managed solution named Add Email and Post Configuration to SiteMap that you can i ...

  2. C#- 泛型去除重复项

    今天被这个问题纠结了好一会.如何去除重复项,我遇到的问题是,在判断是否重复的条件是有两个,一个信息来源,一个是信息标题. 最后使用了哈希后很好的解决,感觉挺高效的.代码贴下,做一个备忘 //防止群发, ...

  3. STM32 驱动12864液晶显示汉字、图片、画点、横线、竖线、斜线

    我做本实验的软件平台为MDK软件,选用STM32VET6,12864液晶屏5v供电采用并行接法.之前本来想网上找一个现成的程序实验一下,但都没找到合适的,于是就自己编写了一个,最终可在12864液晶屏 ...

  4. 【系列】Matei Zaharia(Spark系统作者)博士论文-0 摘要

    随着处理器提升速度下降和数据量的不断增长,非常多公司和组织(既有互联网公司也有传统的企业另一些研究机构)都要求他们的应用可以Scale out到更大的分布式系统上(比方整个数据中心). 这些应用又分为 ...

  5. 混合模式程序集是针对“v1.1.4322”版的执行时生成的,在没有配置其它信息的情况下,无法在 4.0 执行时中载入该程序集。

    看到一个kinect大牛编写的一个水果忍者的体感游戏版本号,让我为自己一直以来仅仅用现有的网页游戏来模拟kinect体感游戏控制感到羞愧,没办法.我还是菜鸟.学习一段后自己模仿星际大战这个游戏.自己写 ...

  6. cocos2dx3.1.1+cocosstudio+lua问题总结

    一.DeprecatedEnum.lua no value _G.LAYOUT_ABSOLUTE                 = ccui.Type.ABSOLUTE _G.LAYOUT_LINE ...

  7. [linux]date命令时间戳和时间之间的转换

    非常多时候我们查看数据库的数据,或者是一些别人系统中的数据须要用时间戳来查询.或者查询出来的结果是个时间戳. 还有时候,查询条件须要输入时间戳. 我之前的办法就是用在线工具来完毕,后来用mac了.我觉 ...

  8. android 程序打开第三方程序

    因为在开发过程中需要开启扫描第三方程序,并且点击启动的效果,所以对这个功能进行了实现,并且分享出来个大家. 之前看到网上说需要获取包名和类名,然后通过  intent 才能打开这个程序,其实不必要这样 ...

  9. 打造强大的BaseModel(2):让Model实现自动映射,将字典转化成Model

    打造强大的BaseModel(1):让Model自我描述 这篇文章将讲述Model一项更高级也最常用的功能,让Model实现自动映射–将字典转化成Model(所有代码全由Swift实现) 将JSON转 ...

  10. Servlet中的请求包含

    public class SrcIncludeServlet extends HttpServlet { public void doGet(HttpServletRequest request, H ...