当前位置:文档之家› hadoop在大数据分析应用

hadoop在大数据分析应用


Hive日志分析架构
Hive支持的数据类型以及操作
数据类型: 简单类型:INT, STRING, boolean 复杂类型:Struct、Map和Array 操作: • SELECT • DISTINCT, • JOINS, • WHERE, • GROUP BY
Hive程序开发
• Java:hive-JDBC Client C/C++:ODBC client
Hadoop以及在大数据应用
大纲
1、hadoop简介 2、编程接口 3、hive数据仓库 4、hive日志分析
Hadoop简介
• Hadoop就是一个实现了Google云计算系统的开源系统,包 括并行计算模型Map/Reduce,分布式文件系统HDFS,以 及分布式数据库Hbase,同时Hadoop的相关项目也很丰富, 包括ZooKeeper,Pig,Chukwa,Hive,Hbase,Mahout, flume等.
Hive jdbc Driver
JDBC 应用
Driver
CLI
(Compiler. Optimizer,
WEB GUI
Executor)
DataNode +
Task Tracker
Job Track
er
astore
Hive特点以及典型应用
• 1.特点 • 不能保证处理的低迟延(low latency)问题。 • 批处理大规模数据 • 2. 典型应用 • ETL处理 • OLAP系统 • BI系统 • 日志分析
输入
记录1 记录2 记录3 记录4
记录5 记录6 记录7 记录8
Hadoop处理流程
Split
Map任务
Split
Map任务
Shuffle And Sort
Redue任务 Redue任务
输出1 输出1
Split
Map任务
编程接口-streaming
– 管道传输数据 – <key><\t><value><\n>
• Python, ThriftHive
• php,
• 流程Create
hivetable
Load data
select
Hive序列化反序列化
HIVE内部的类 class TestStruct
反串行器 串行器
编程语言的类
(JAVA) class TestStruct
HIVE里面的数据及其结构以类的形式储存,并提供了串行器和反串行器 来实现HIVE内部的类和普通编程语言的类之间的转换。 有了串行器和反串行器,我们就能在HIVE中对输入文件内容进行更复杂
的操作,从而解析非结构化数据。在实际开发中只需要实现反串行器即 可。
• HIVE可以将存储在Hadoop中的数据文件映 射为一张数据库表,并提供了一套查询语言 HQL。HQL以SQL为基础,自动转换为 MapReduce任务进行运行,使用起来非常方便。
Hive架构 ODBC应用
Thrift 应用
Thrift client
Hive odbc Driver
Hive Server
任何可以操作标准输入输出的语言都可以写streaming并行处理程序。
hive数据仓库
• Hive是为提供简单的数据操作而设计的下 一代分布式数据仓库。它提供了简单的类似 SQL的语法的HiveQL语言进行数据查询。同时, HiveQL语言能力不足时,它也能允许使用 Map/reduce并行计算模型进行复杂数据分析。
相关主题