一、引言

  基于Hive+Hadoop模式构建数据仓库,是大数据时代的一个不错的选择,本文以郑商所每日交易行情数据为案例,探讨数据Hive数据导入的操作实例。

二、源数据-每日行情数据

三、建表脚本

CREATE TABLE IF NOT EXISTS t_day_detail(
id STRING,
lastday FLOAT,
today FLOAT,
highest FLOAT,
lowest FLOAT,
today_end FLOAT,
today_jisuan FLOAT,
updown1 FLOAT,
updown2 FLOAT,
sum int,
empity int,
rise int,
turnover FLOAT,
delivery FLOAT
)
PARTITIONED BY (dt STRING,product STRING);

四、数据导入1

 load data local inpath '/home/hadoop/source/in'
overwrite into table t_day_detail
partition(dt='2014-04-22',product='');

五、数据导入2

 load data local inpath '/home/hadoop/source/in'
overwrite into table t_day_detail
partition(dt='2014-04-23',product='');

六、执行结果

hive> select * from t_day_detail
> ;
OK
CF405,17365.0,17390.0,17390.0,17360.0,17380.0,17380.0,,,72.0,1090.0,-,625.66,0.0 NULL NULL NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL --
CF407,17275.0,17370.0,17415.0,17320.0,17320.0,17365.0,,,22.0,52.0,,191.01,0.0 NULL NULL NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL --
CF409,17450.0,17380.0,17395.0,17310.0,17320.0,17330.0,-,-,7860.0,34584.0,-,68099.08,0.0 NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL NULL NULL --
CF411,16370.0,16315.0,16350.0,16220.0,16255.0,16240.0,-,-,984.0,17436.0,-,7990.01,0.0 NULL NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL NULL --
CF501,16130.0,16030.0,16085.0,15920.0,15995.0,15970.0,-,-,26210.0,115120.0,-,209311.56,0.0 NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL NULL NULL --
CF503,16195.0,16030.0,16065.0,16000.0,16065.0,16045.0,-,-,60.0,526.0,,481.42,0.0 NULL NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL NULL --
CF405,17365.0,17390.0,17390.0,17360.0,17380.0,17380.0,,,72.0,1090.0,-,625.66,0.0 NULL NULL NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL --
CF407,17275.0,17370.0,17415.0,17320.0,17320.0,17365.0,,,22.0,52.0,,191.01,0.0 NULL NULL NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL --
CF409,17450.0,17380.0,17395.0,17310.0,17320.0,17330.0,-,-,7860.0,34584.0,-,68099.08,0.0 NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL NULL NULL --
CF411,16370.0,16315.0,16350.0,16220.0,16255.0,16240.0,-,-,984.0,17436.0,-,7990.01,0.0 NULL NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL NULL --
CF501,16130.0,16030.0,16085.0,15920.0,15995.0,15970.0,-,-,26210.0,115120.0,-,209311.56,0.0 NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL NULL NULL --
CF503,16195.0,16030.0,16065.0,16000.0,16065.0,16045.0,-,-,60.0,526.0,,481.42,0.0 NULL NULL NULL NULLNULL NULL NULL NULL NULL NULL NULL NULL NULL --
Time taken: 0.391 seconds
hive>

七、问题聚焦

(1)Hive分区设置的原则和技巧?

(2)Hive分区内行记录完全一致问题如何解决?

(3)Hive中文乱码问题如何解决?

胖子哥的大数据之路(10)- 基于Hive构建数据仓库实例的更多相关文章

  1. 胖子哥的大数据之路(9)-数据仓库金融行业数据逻辑模型FS-LDM

    引言: 大数据不是海市蜃楼,万丈高楼平地起只是意淫,大数据发展还要从点滴做起,基于大数据构建国家级.行业级数据中心的项目会越来越多,大数据只是技术,而非解决方案,同样面临数据组织模式,数据逻辑模式的问 ...

  2. 胖子哥的大数据之路(7)- 传统企业切入核心or外围

    一.引言 昨天和一个做互联网大数据(零售行业)的朋友交流,关于大数据传统企业实施的切入点产生了争执,主要围绕两个问题进行了深入的探讨: 问题1:对于一个传统企业而言什么是核心业务,什么是外围业务? 问 ...

  3. 胖子哥的大数据之路(11)-我看Intel&&Cloudera的合作

    一.引言 5月8日,作为受邀嘉宾,参加了Intel与Cloudera在北京中国大饭店新闻发布会,两家公司宣布战略合作,该消息成为继Intel宣布放弃大数据平台之后的另外一个热点新闻.对于Intel的放 ...

  4. 胖子哥的大数据之路(6)- NoSQL生态圈全景介绍

    引言: NoSQL高级培训课程的基础理论篇的部分课件,是从一本英文原著中做的摘选,中文部分参考自互联网.给大家分享. 正文:  The NoSQL Ecosystem 目录 The NoSQL Eco ...

  5. 胖子哥的大数据之路(四)- VisualHBase功能需求框架

    一.引言 大数据在结构化数据存储方面的应用需求越来越明确,但是大数据环境下辅助开发工具的不完善,给数据库管理人员和开发人员带来的不变难以言表,基于此创建了开源项目VisualHBase,同时创建了Vi ...

  6. 大数据之路week07--day07 (Hive结构设计以及Hive语法)

    Hive架构流程(十分重要,结合图进行记忆理解)当客户端提交请求,它先提交到Driver,Driver拿到这个请求后,先把表明,字段名拿出来,去数据库进行元数据验证,也就是Metasore,如果有,返 ...

  7. 大数据学习(10)—— Hive进阶

    前面提到了Hive的知识点非常零散,我不知道该怎么把这些知识点分类,跟SQL关系没那么大的就放在这一篇吧. Hive Serde 参考Hive Serde Serde是啥 Serde是序列化和反序列化 ...

  8. 大数据之路week07--day05 (Hive的搭建部署)

    在之前博客中我有记录安装JDK和Hadoop和Mysql的过程,如果还没有安装,请先进行安装配置好,对应的随笔我也提供了百度云下载连接. 安装JDK:   https://www.cnblogs.co ...

  9. CentOS6安装各种大数据软件 第八章:Hive安装和配置

    相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...

随机推荐

  1. skflow 分类与回归接口API 简单测试

    skflow也即是 tf.contrib.learn, 是 TensorFlow 官方提供的另外一个对 TensorFlow 的高层封装,通过这个封装,用户可以和使用 sklearn 类似的方法使用 ...

  2. [LeetCode&Python] Problem 404. Sum of Left Leaves

    Find the sum of all left leaves in a given binary tree. Example: 3 / \ 9 20 / \ 15 7 There are two l ...

  3. CDN是如何工作的?

    CDN的原理非常简单.当浏览器请求一资源时,第一步是做DNS解析,DNS解析就像是从通讯录根据姓名找号码,浏览器发送域名,然后得到DNS服务器返回的IP地址.浏览器通过IP地址和服务器连接并获取资源( ...

  4. url参数和字典的相互转化

    目标url:https://www.baidu.com/s?&wd=python&ie=utf-8 将字典转成url参数 使用urllib.parse的urlencode方法,将字典对 ...

  5. python argv传递参数

    test.pyimport sysprint(sys.argv) python test.py arg1 arg2 arg3 打印["test.py","arg1&quo ...

  6. 计算字符串最后一个单词的长度,单词以空格隔开。 java算法

    import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner in = ne ...

  7. 【TCP/IP】二、协议的概念

    一.概念 1.tcp/ip是通信协议的统称. 2.协议就是计算机与计算机之间通过网络实现通信时,事先达成的一种约定.这种约定,使那些不同厂商的设备,不同的CPU以及不同的操作系统组成的计算机之间,只要 ...

  8. linux30道运维面试题

    传送门https://zhangge.net/1986.html

  9. gtk_init()

    #include<stdio.h> #if 0int main(int argc, char *argv[]){ char ***p = &argv; //传参退化成二级指针,对二 ...

  10. caller

    caller返回调用了当前函数的那个对象(谁call了当前函数,即当前函数的caller) 对于函数来说,caller 属性只有在函数执行时才有定义 假如函数是由顶层(window)调用的,那么 ca ...