大数据平台介绍_第1页
大数据平台介绍_第2页
大数据平台介绍_第3页
大数据平台介绍_第4页
大数据平台介绍_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、大数据平台介绍,大数据 二零一五年七月,2,目录,hadoop大数据生态圈介绍,大数据应用介绍,3,cloudera manager介绍,hadoop大数据生态圈,hadoop生态圈,hadoop简介,hadoop一个分布式系统基础架构,由apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储 。简单地说来,hadoop是一个可以更容易开发和运行处理大规模数据的软件平台。 hadoop的框架最核心的设计就是:hdfs和mapreduce。hdfs为海量的数据提供了存储,则mapreduce为海量的数据提供了计算,hadoop能解决哪些问

2、题,海量数据需要及时分析和处理。 海量数据需要深入分析和挖掘。 数据需要长期保存 问题: 磁盘io成为一种瓶颈,而非cpu资源。 网络带宽是一种稀缺资源 硬件故障成为影响稳定的一大因素,hdfs适应条件,hdfs:为以流式数据访问模式存储超大文件而设计的文件系统。 流式数据访问 指的是几百mb,几百gb,几百tb,甚至几百pb 流式数据访问 hdfs建立的思想是:一次写入、多次读取模式是最高 效的。 商用硬件 hadoop不需要运行在昂贵并且高可靠的硬件上,hdfs不适应条件,低延迟数据访问 hdfs是为了达到高数据吞吐量而优化的,这是以延迟为代价的,对于低延迟访问,可以用hbase(hado

3、op的子项目)。 大量的小文件 多用户写入,任意修改,hdfs基本单元,block(块):hdfs基本储存单元,是个逻辑单元。一个文件有可能包含多个块,一个块有可以包含多个文件,由文件的大小和块大小的参数决定。dfs.block.size参数。hdfs中block的大小,默认64mb,如果设置大,就会有可能导致map运行慢,设置小,有可能导致map个数多,所有一定要设置适当。(目前主流机器建议设置为128m) 设置一个block 64mb,如果上传文件小于该值,仍然会占用一个block的命名空间(namenode metadata),但是物理存储上不会占用64mb的空间 block大小和副本数

4、由client端上传文件到hdfs时设置,其中副本数可以变更,block是不可以再上传后变更的,hdfs处理机制,client:切分文件;访问hdfs;与namenode交互,获取文件位置信息;与datanode交互,读取和写入数据。 namenode:master节点,管理hdfs的名称空间和数据块映射信息,配置副本策略,处理客户端请求。 datanode:slave节点,存储实际的数据,汇报存储信息给namenode。 secondary namenode:辅助namenode,分担其工作量;定期合并fsimage和fsedits,推送给namenode;紧急情况下,可辅助恢复nameno

5、de,但secondary namenode并非namenode的热备,hdfs文件读取,mapreduce简介,简介 mapreduce 是一个高性能的批处理分布式计算框架,用于对海量数据进行并行分析和处理。 mapreduce 将分析任务分为大量的并行 map 任务和 reduce 任务两类。 与传统数据仓库和分析技术相比,mapreduce 适合处理各种类型的数据,包括结构化、半结构化和非结构化数据。 结构化、半结构化、非结构化数据 结构化数据(即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据) 不方便用数据库二维逻辑表来表现的数据即称为非结构化数据(包括所有格式的办公文档

6、、文本、图片、xml、html、各类报表、图像和音频/视频信息等等) 所谓半结构化数据,就是介于完全结构化数据(如关系型数据库、面向对象数据库中的数据)和完全无结构的数据(如声音、图像文件等)之间的数据,html文档就属于半结构化数据。它一般是自描述的,数据的结构和内容混在一起,没有明显的区分,mapreduce简介,适合处理的任务 适用于离线批处理任务 是以“行”为处理单位的,无法回溯已处理过的“行”,故每行都必须是一个独立的语义单元,行与行之间不能有语义上的关联。 相对于传统的关系型数据库管理系统,mapreduce计算模型更适合于处理半结构化或无结构话的数据。 不适合处理的任务 不适合一

7、般web应用 不适合实时响应的任务 不适合小数据集的处理 不适合需要大量临时空间的任务 不适合cpu密集且具有许多交叉调用的任务,mapreduce工作原理,mapreduce执行流程 mapreduce角色 client :作业提交发起者。 jobtracker: 初始化作业,分配作业,与tasktracker通信,协调整个作业。 tasktracker:保持jobtracker通信,在分配的数据片段上执行mapreduce任务。 任务的分配 tasktracker和jobtracker之间的通信与任务的分配是通过心跳机制完成的。 tasktracker会主动向jobtracker询问是否有

8、作业要做,如果自己可以做,那么就会申请到作业任务,这个任务可以使map也可能是reduce任务,mapreduce工作原理,任务的执行 申请到任务后,tasktracker会做如下事情: 拷贝代码到本地 拷贝任务的信息到本地 启动jvm运行任务 状态与任务的更新 任务在运行过程中,首先会将自己的状态汇报给tasktracker,然后由tasktracker汇总告之jobtracker。 作业的完成 jobtracker是在接受到最后一个任务运行完成后,才会将任务标志为成功。 此时会做删除中间结果等善后处理工作,mapreduce工作原理,hadoop实例,根据url的顶级域名进行分类统计 输入

9、、输出格式:文件 源文件格式如下: 统计目标,hadoop实例,1. 编写mapreduce函数,客户端作业 map函数,hadoop实例,reduce函数 job设置,hadoop实例,编译、打包成jar文件 略 3. 源文件提交到hdfs文件系统 文件从本地提交到hdfs文件系统put命令 查看hdfs文件系统中已提交的文件,hadoop实例,使用hadoop命令提交作业 提交作业 查看作业 http:/localhost:50030,hadoop实例,查看执行结果 查看执行结果生成的文件 查看hdfs文件系统中的结果 hdfs文件拷贝到本地,查看结果,hive简介,hive是什么 hiv

10、e是基于hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为mapreduce任务进行运行。其优点是学习成本低,可以通过类sql语句快速实现简单的mapreduce统计,不必开发专门的mapreduce应用,十分适合数据仓库的统计分析。 hive是建立在 hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(etl),这是一种可以存储、查询和分析存储在 hadoop 中的大规模数据的机制。hive 定义了简单的类 sql 查询语言,称为 hql,它允许熟悉 sql 的用户查询数据。同时,这

11、个语言也允许熟悉 mapreduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作,hive实例,创建托管表 1. 在hive命令行执行建表语句 2. 查看元数据库中的表信息、字段信息sds、columns_v2,hive实例,3. 从本地向net_addr_1表中导入数据 4. 查看导入的数据,hive实例,根据url的顶级域名进行分类统计-hive实现 1. 源数据入表略,使用已生成的net_addr_1 2. 源数据加工转换,生成中间表 insert overwrite table net_addr_3

12、select net_id,regexp_replace(net_url,(.+.), ) from net_addr_1; 3. 根据中间表数据进行统计,hbase简介,hbase是一个针对结构化数据的可伸缩、高可靠、高性能、分布式和面向列的动态模式数据库。和传统关系数据库不同,hbase采用了bigtable的数据模型:增强的稀疏排序映射表(key/value),其中,键由行关键字、列关键字和时间戳构成。hbase提供了对大规模数据的随机、实时读写访问,同时,hbase中保存的数据可以使用mapreduce来处理,它将数据存储和并行计算完美地结合在一起。利用hbase技术可在廉价pc se

13、rver上搭建起大规模结构化存储集群,hbase架构,hbase实例,1、构建hbase表hbase_test hbase create hbase_test, id01 2、构建hive外表hive_test, 并对应hbase_test表 create external table hive_test (id01 string) stored by org.apache.hadoop.hive.hbase.hbasestoragehandler with serdeproperties (hbase.columns.mapping = :key,id01) tblproperties(hb

14、 = hbase_test); 3、数据通过hive_test导入到hbase_test表中 insert overwrite table hive_test select id01 from hive_date,hbase实例,大数据应用介绍,用户上网行为分析系统,用户行为分析系统数据处理流程图,唯品会日志处理框架简介,唯品会日志处理框架简介,全国重点车辆联网联控平台,cloudera manager介绍,cloudera manager介绍,cdh (clouderas distribution, including apache hadoop),是hadoop

15、众多分支中的一种,由cloudera维护,基于稳定版本的apache hadoop构建,并集成了很多补丁,可直接用于生产环境。 cloudera manager则是为了便于在集群中进行hadoop等大数据处理相关的服务安装和监控管理的组件,对集群中主机、hadoop、hive、hbase、spark等服务的安装配置管理做了极大简化。 cloudera manager有四大功能 (1)管理 (2)监控 (3)诊断 (4)集成,cloudera manager介绍,cloudera flume flume是cloudera提供的日志收集系统,flume支持在日志系统中定制各类数据发送方,用于收集数

16、据; flume是cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力,cloudera manager介绍,cloudera impala cloudera impala对你存储在apache hadoop在hdfs,hbase的数据提供直接查询互动的sql。除了像hive使用相同的统一存储平台,impala也使用相同的元数据,sql语法(hive sql),odbc驱动程序和用户界面(hue beeswax)。impala

17、还提供了一个熟悉的面向批量或实时查询和统一平台。 impala不再使用缓慢的hive+mapreduce批处理,而是通过与商用并行关系数据库中类似的分布式查询引擎(由query planner、query coordinator和query exec engine三部分组成),可以直接从hdfs或者hbase中用select、join和统计函数查询数据,从而大大降低了延迟,cloudera manager介绍,cloudera hue hue是cdh专门的一套web管理器,它包括3个部分hue ui,hue server,hue db。hue提供所有的cdh组件的shell界面的接口。你可以在

18、hue编写mr,查看修改hdfs的文件,管理hive的元数据,运行sqoop,编写oozie工作流等大量工作,cloudera manager介绍,spark spark与hadoop一样,用于构建大规模、低延时的数据分析应用。spark采用scala语言实现,使用scala作为应用框架。spark采用基于内存的分布式数据集,优化了迭代式的工作负载以及交互式查询。与hadoop不同的是,spark和scala紧密集 成,scala像管理本地collective对象那样管理分布式数据集。spark支持分布式数据集上的迭代式任务,实际上可以在hadoop文件系统 上与hadoop一起运行 spark基于map reduce算法实现的分布式计算,拥有hadoop mapreduce所具有的优点;但不同于mapreduce的是j

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论