hadoop在大数据分析应用
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
输入
记录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>
任何可以操作标准输入输出的语言都可以写streaming并行处理程序。
hive数据仓库
• Hive是为提供简单的数据操作而设计的下 一代分布式数据仓库。它提供了简单的类似 SQL的语法的HiveQL语言进行数据查询。同时, HiveQL语言能力不足时,它也能允许使用 Map/reduce并行计算模型进行复杂数据分析。
的操作,从而解析非结构化数据。在实际开发中只需要实现反串行器即 可。
• Python, ThriftHive
• php,
• 流程Create
hivetable
Load data
select
Hive序列化反序列化
HIVE内部的类 class TestStruct
反串行器 串行器
编程语言的类
(JAVA) class TestStruct
HIVE里面的数据及其结构以类的形式储存,并提供了串行器和反串行器 来实现HIVE内部的类和普通编程语言的类之间的转换。 有了串行器和反串行器,我们就能在HIVE中对输入文件内容进行更复杂
Hive jdbc Driver
JDBC 应用
Driver
CLI
(Compiler. Optimizer,
WEB GUI
Executor)
DataNode +
Task Tracker
Job Track
er
Hadoop集群
Name Node
Metastore
Hive特点以及典型应用
• 1.特点 • 不能保证处理的低迟延(low latency)问题。 • 批处理大规模数据 • 2. 典型应用 • ETL处理 • OLAP系统 • BI系统 • 日志分析
Hive日志分析架构
Hive支持的数据类型以及操作
数据类型: 简单类型:INT, STRING, boolean 复杂类型:Struct、Map和Array 操作: • SELECT • DISTINCT, • JOINS, • WHERE, • GROUP BY
Hive程序开发
• Java:hivБайду номын сангаас-JDBC Client C/C++:ODBC client
• HIVE可以将存储在Hadoop中的数据文件映 射为一张数据库表,并提供了一套查询语言 HQL。HQL以SQL为基础,自动转换为 MapReduce任务进行运行,使用起来非常方便。
Hive架构 ODBC应用
Thrift 应用
Thrift client
Hive odbc Driver
Hive Server
Hadoop以及在大数据应用
大纲
1、hadoop简介 2、编程接口 3、hive数据仓库 4、hive日志分析
Hadoop简介
• Hadoop就是一个实现了Google云计算系统的开源系统,包 括并行计算模型Map/Reduce,分布式文件系统HDFS,以 及分布式数据库Hbase,同时Hadoop的相关项目也很丰富, 包括ZooKeeper,Pig,Chukwa,Hive,Hbase,Mahout, flume等.