- 浏览: 70814 次
- 性别:
- 来自: 北京
最新评论
Hadoop Hive 复合数据结构Array,Struct,Maps
- 博客分类:
- Hadoop
在Hive 中如何使用符合数据结构 maps,array,structs
1. Array的使用
创建数据库表,以array作为数据类型
create table person(name string,work_locations array<string>)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
COLLECTION ITEMS TERMINATED BY ',';
数据
biansutao beijing,shanghai,tianjin,hangzhou
linan changchu,chengdu,wuhan
入库数据
LOAD DATA LOCAL INPATH '/home/hadoop/person.txt' OVERWRITE INTO TABLE person;
查询
hive> select * from person;
biansutao ["beijing","shanghai","tianjin","hangzhou"]
linan ["changchu","chengdu","wuhan"]
Time taken: 0.355 seconds
hive> select name from person;
linan
biansutao
Time taken: 12.397 seconds
hive> select work_locations[0] from person;
changchu
beijing
Time taken: 13.214 seconds
hive> select work_locations from person;
["changchu","chengdu","wuhan"]
["beijing","shanghai","tianjin","hangzhou"]
Time taken: 13.755 seconds
hive> select work_locations[3] from person;
NULL
hangzhou
Time taken: 12.722 seconds
hive> select work_locations[4] from person;
NULL
NULL
Time taken: 15.958 seconds
2. Map 的使用
创建数据库表
create table score(name string, score map<string,int>)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
COLLECTION ITEMS TERMINATED BY ','
MAP KEYS TERMINATED BY ':';
要入库的数据
biansutao '数学':80,'语文':89,'英语':95
jobs '语文':60,'数学':80,'英语':99
入库数据
LOAD DATA LOCAL INPATH '/home/hadoop/score.txt' OVERWRITE INTO TABLE score;
查询
hive> select * from score;
biansutao {"数学":80,"语文":89,"英语":95}
jobs {"语文":60,"数学":80,"英语":99}
Time taken: 0.665 seconds
hive> select name from score;
jobs
biansutao
Time taken: 19.778 seconds
hive> select t.score from score t;
{"语文":60,"数学":80,"英语":99}
{"数学":80,"语文":89,"英语":95}
Time taken: 19.353 seconds
hive> select t.score['语文'] from score t;
60
89
Time taken: 13.054 seconds
hive> select t.score['英语'] from score t;
99
95
Time taken: 13.769 seconds
3 Struct 的使用
创建数据表
CREATE TABLE test(id int,course struct<course:string,score:int>)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
COLLECTION ITEMS TERMINATED BY ',';
数据
1 english,80
2 math,89
3 chinese,95
入库
LOAD DATA LOCAL INPATH '/home/hadoop/test.txt' OVERWRITE INTO TABLE test;
查询
hive> select * from test;
OK
1 {"course":"english","score":80}
2 {"course":"math","score":89}
3 {"course":"chinese","score":95}
Time taken: 0.275 seconds
hive> select course from test;
{"course":"english","score":80}
{"course":"math","score":89}
{"course":"chinese","score":95}
Time taken: 44.968 seconds
select t.course.course from test t;
english
math
chinese
Time taken: 15.827 seconds
hive> select t.course.score from test t;
80
89
95
Time taken: 13.235 seconds
4. 数据组合 (不支持组合的复杂数据类型)
LOAD DATA LOCAL INPATH '/home/hadoop/test.txt' OVERWRITE INTO TABLE test;
create table test1(id int,a MAP<STRING,ARRAY<STRING>>)
row format delimited fields terminated by '\t'
collection items terminated by ','
MAP KEYS TERMINATED BY ':';
1 english:80,90,70
2 math:89,78,86
3 chinese:99,100,82
LOAD DATA LOCAL INPATH '/home/hadoop/test1.txt' OVERWRITE INTO TABLE test1;
发表评论
-
Hadoop 自动安装脚本
2012-05-08 16:57 1894Email:biansutao[@]gmail[DOT]com ... -
HDFS 中读取数据的方法
2012-04-13 13:53 1618方法之一: 通过URL import java. ... -
使用Jconsole对Hadoop的JVM进行监控
2012-04-01 15:11 0在Java 选项中添加如下内容,可以在远程进行Jcons ... -
Hadoop 任务调度
2012-03-30 14:52 1433mapred-site.xml 文件 ... -
Hadoop 运行硬件的选择
2012-03-16 11:16 1076Hadoop权威指南上推荐的硬件配置: CPU:2个四 ... -
如何配置Hadoop的 Secondary节点 & NameNode节点失效恢复
2012-03-16 09:58 4717原创: 第一部分: ... -
Hadoop SecondaryNameNode 异常
2012-03-15 17:21 1910异常信息 2012-03-15 16:52:01 ... -
Warning: $HADOOP_HOME is deprecated. 关闭
2012-03-15 16:02 6003添加 export HADOOP_HOME_WARN_SU ... -
Hadoop Hive 中的排序 Order by ,Sort by ,Distribute by, Cluster By,
2012-03-09 12:43 19158Hive 中 Order by, Sort by ,Drist ... -
Hadoop 安装配置
2012-03-01 16:27 1109主要安装流程和注意事项 红色两天要特别注意 ... -
Hadoop 各参数优化
2012-03-01 11:18 1300<property> ... -
MapReduce 执行过程分析
2012-03-01 11:12 900问题: 一个或多个文件是怎么样经历Map / Reduc ... -
Hadoop 分区函数Partitioner
2012-03-01 10:45 5002分区函数 MapReduce的使用者通常会指定R ... -
Hadoop: The Definitive Guide, 3rd Edition (Early Release)
2012-02-24 10:48 1861Hadoop: The Definitive Guid ... -
Hbase 介绍
2012-02-23 15:44 555http://www.slideshare.net/BlueD ... -
MapReduce 的最简单解释
2012-02-23 14:45 1019Map 是什么 We want to count all t ...
相关推荐
基于Hadoop Hive健身馆可视化分析平台项目源码+数据库文件.zip启动方式 环境启动 hadoop hive2元数据库 sql导入 导入hivesql脚本,修改application.yml 启动主程序 HadoopApplication 基于Hadoop Hive健身馆可视化...
hadoop hive可用的数据连接jar包,hadoop hive可用的数据连接jar包
Hadoop Hive HBase Spark Storm概念解释
Hadoop Hive与Hbase整合配置
Hadoop Hive入门学习笔记.pdf
毕业设计,采用Hadoop+Hive构建数据仓库,使用django+echarts构建前端web网站对业务指标进行可视化呈现 1. Hadoop+Hive构建数据仓库 2. django+echarts网站开发 3. 数据清洗,数据模型构建 毕业设计,采用Hadoop+...
最近在研究Hadoop Hive,在度娘找了几百几千份文档,拼凑起来才勉强部署好,太耗时,太耗时,太耗时 现在我整理好我过程中的每一个步骤,供大家一起学习共勉。
本资源中的源码都是经过本地编译过可运行的,下载后按照文档配置好环境就可以运行。资源项目的难度比较适中,内容都是经过助教老师审定过的,应该能够满足学习、使用需求,如果有需要的话可以放心下载使用。...
毕业设计,采用Hadoop+Hive构建数据仓库,使用django+echarts构建前端web网站对业务指标进行可视化呈现 毕业设计,采用Hadoop+Hive构建数据仓库,使用django+echarts构建前端web网站对业务指标进行可视化呈现 毕业...
小牛学堂-大数据24期-04-Hadoop Hive Hbase Flume Sqoop-12天适合初学者.txt
hadoop hive hbase安装过程
VM虚拟机上,安装ubantu搭建hadoop+Hive集群,步骤详细。
采用Hadoop+Hive构建数据仓库,使用django+echarts构建前端web网站对业务指标进行可视化呈现.zip毕业设计,采用Hadoop+Hive构建数据仓库,使用django+echarts构建前端web网站对业务指标进行可视化呈现.zip毕业设计,...
win10下搭建Hadoop(jdk+mysql+hadoop+scala+hive+spark),包括jdk的安装、mysql安装和配置,hadoop安装和配置,scala安装和配置,hive安装和配置,spark安装和配置。
大数据笔记,包含Hadoop、Spark、Flink、Hive、Kafka、Flume、ZK...... 大数据笔记,包含Hadoop、Spark、Flink、Hive、Kafka、Flume、ZK...... 大数据笔记,包含Hadoop、Spark、Flink、Hive、Kafka、Flume、ZK.......
基于hadoop的Hive数据仓库JavaAPI简单调用的实例,关于Hive的简介在此不赘述。hive提供了三种用户接口:CLI,JDBC/ODBC和 WebUI CLI,即Shell命令行 JDBC/ODBC 是 Hive 的Java,与使用传统数据库JDBC的方式类似 Web...
Hadoop hbase hive sqoop集群环境安装配置及使用文档
Facebook Hive by Ashish Thusoo.ppt Yahoo Hadoop by Hairong Kuang.ppt
基于Hadoop+Hive的数据查询优化设计与实现