HADOOP生态圈
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Hive 连接 有三种模式可以连接到数据库: (1) 单用户模式。此模式连接到一个In-memory 的数据库Derby,一般用于Unit Test。
(2)多用户模式。通过网络连接到一个数据库中,是最经常使用到的模式。
(3)(3) 远程服务器模式。用于非Java客户端访问元数据库,在服务器端启动 MetaStoreServer,客户端利用Thrift协议通过MetaStoreServer访问元数据库。
Tel: 400-00-31368 Website:
时间戳
HBase中通过row和columns确定的为一个存贮单元称为cell。每个 cell都保存着同一份 数据的多个版本。版本通过时间戳来索引。时间戳的类型是 64位整型。时间戳可以 由hbase(在数据写入时自动 )赋值,此时时间戳是精确到毫秒的当前系统时间。时间 戳也可以由客户显式赋值。如果应用程序要避免数据版本冲突,就必须自己生成具 有唯一性的时间戳。每个 cell中,不同版本的数据按照时间倒序排序,即最新的数据 排在最前面。
Tel: 400-00-31368 Website:
Hbase 存储结构
Tel: 400-00-31368 Website:
HBase中的每张表都通过行键按照一定的范围被分割成多个子表(Region), 默认一个Region超过256M就要被分割成两个,由RegionServer管理,管理哪 些Region由HMaster分配。 RegionServer存取一个子表时,会创建一个Region对象,然后对表的每个 列族(Column Family)创建一个Store实例,每个Store都会有0个或多个StoreFile 与之对应,每个StoreFile都会对应一个HFile, HFile就是实际的存储文件。因 此,一个Region有多少个列族就有多少个Store。
高效性:Hadoop能够在节点之间动态地移动数据,并保证各个节点的动态平衡, 因此处理速度非常快。
高容错性。Hadoop能够自动保存数据的多个副本,并且能够自动将失败的任务重新分配。 低成本:与一体机、商用数据仓库以及商用服务器、存储等相比,hadoop是开源 的,即使最普通的PC机也能运作,项目的软件、硬件成本大大降低 使用上可以与java无缝对接,降低学习成本
HADOOP家族
Oozie Avro
Chukwa
Tel: 400-00-31368 Website:
HBase简介
hbase是Apache Hadoop 的数据库,目标就是存储并处理大型的数据, 能够对大型的数据提供随机、实时的读写访问,是建立的hdfs之上,提 供高可靠性、高性能、多版本的、面向列的存储模型实时读写的数据库 系统。它介于nosql和RDBMS之间,仅能通过主键(row key)和主键的range 来检索数据,主要用来存储非结构化和半结构化的松散数据。与hadoop 一样,Hbase目标主要依靠横向扩展,通过不断增加廉价的商用服务器, 来增加计算和存储能力。
大数据呈现的三大特征:
• • • 数据量大,一个知名的互联网企业每一天的数据可以生成上 百T的数据 数据流动速度快,数据的变化与处理的频度由天加速到秒级 数据种类来源多样化,这里除了结构化的数据之外,还有半 结构化、非结构化的数据大量产生
Tel: 400-00-31368 Website:
大数据的应用
Tel: 400-00-31368 Website:
Tel: 400-00-31368 Website:
Tel: 400-00-31368 Website:
为什么是HADOOP
高扩展性:Hadoop是在可用的计算机集簇间分配数据并完成计算任务的,这些 集群可以方便地扩展到数以千计的节点中。
Mahout 算法
Tel: 400-00-31368 Website:
Tel: 400-00-31368 Website:
Mahout 的协同过滤算法 协同过滤算法有两种:基于用户、基于产品的计算: 1)基于用户(user-based)的推荐算法: 基于用户的推荐算法,是根据用户对物品的偏好数据进行分析,以推荐相关产品 的算法。 算法的输入数据格式:[{用户ID、物品ID、偏好值}] 其中关键数据是偏好值,偏好值可以是用户对某物品的主观评价,比如“超赞”、 “赞”等,也可以是通过用户对物品的客观操作统计而成的值,比如某一月内,该用 户对某一物品的搜索或浏览次数、时长等,变换成偏好值。 算法计算过程 以下是Mahout的算法过程:
Tel: 400-00-31368 Website:
第1步:将用户-物品数据导入数据模型(DataModel); 第2步:计算用户相似度(UserSimilarity),一般使用欧几里得距离算法,也可 以用皮尔逊算法、余弦距离或最大对数似然率算法; 第3步:计算用户邻近度(UserNeighborhood),这是根据用户相似度的聚类分 析结果; 第4步:将以上参数传入Recommender,最后得到结果。 算法的输出数据格式:[{用户ID、物品ID、推荐值}]
Teli 介绍
Ambari是Hadoop分布式集群配置管理工具,Ambari充分利用了一些已有的优秀 开源软件,巧妙地把它们结合起来,使其在分布式环境中做到了集群式服务管 理能力、监控能力、展示能力,这些优秀的开源软件有: (1)、agent端,采用了puppet管理节点。 (2)、在web端,采用ember.js作为前端MVC框架和NodeJS相关工具,用 handlebars.js作为页面渲染引擎,在CSS/HTML方面还用了Bootstrap框架。 (3)、在Server端,采用了Jetty、Spring、JAX-RS等。 (4)、同时利用了Ganglia、Nagios的分布式监控能力。 Ambari框架采用的是Server/Client的模式,主要由两部分组成:ambari-agent和 ambari-server。ambari依赖其它已经成熟的工具,例如:其ambari-server就依赖 python,而ambari-agent还同时依赖ruby,puppet,fecter等工具,还有它也依赖 一些监控工具nagios和ganglia用于监控集群状况。其中:puppet是分布式集群配置 管理工具,也是典型的Server/Client模式,能够集中式管理分布式集群的安装配置 部署。
Tel: 400-00-31368 Website:
1
大数据行业 hadoop生态圈介绍
2
3 4
hadoop介绍
hadoop安装部署
Tel: 400-00-31368 Website:
HADOOP生态圈 HBase Hive Sqoop Flume Hue Ambari Zookeeper Pig Mahout
Tel: 400-00-31368 Website:
Ambari主页面
Tel: 400-00-31368 Website:
Mahout 介绍
Mahout 是 Apache Software Foundation(ASF) 旗下的一个开源项目,提供一些 可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创 建智能应用程序。Mahout包含许多实现,包括聚类、分类、推荐过滤、频繁子 项挖掘。此外,通过使用 Apache Hadoop 库,Mahout 可以有效地扩展到云中。
Mahout的主要目标是建立可伸缩的机器学习算法,他的算法运行在Hadoop平台 下,通过MapReduce模式实现,但是并不严格要求算法要基于Hadoop平台,在 单个节点或数据量不大的情况,也可以使用普通的java程序调用并运行
Tel: 400-00-31368 Website:
为了避免数据存在过多版本造成的的管理 (包括存贮和索引)负担,hbase提供了 两种数据版本回收方式。一是保存数据的最后n个版本,二是保存最近一段时间内的 版本(比如最近七天)。用户可以针对每个列族进行设置。
Tel: 400-00-31368 Website:
HBase以表的形式存储数据。与关系型数据库一样,在HBase中,表由行和 列组成。与关系型数据库不同的是,HBase还有“列簇”(column family) 的概念。一个表有若干“列簇”组成,每一个“列簇”包含若干列( column)。与此同时,表中的每一个cell都是有时间戳的。因此我们可以把 其想象成一个三维数据库。除了行和列之外,还有一个时间维度,每一个 单元格(cell)的不同版本都被保存。与关系型数据库类似,在HBase中每 一行都有一个主键(row key)。HBase对于数据的检索都是通过row key进行 的。HBase对于数据的检索主要有三种方式: 1. 通过单个row key检索一行 2. 通过row key的范围[row key start,row key end]返回多条记录 3. 全表扫描,返回整个table
Tel: 400-00-31368 Website:
Hive架构 CLI JDBC/ODBC
WEBUI
Thrift Server
Driver (complier、optimizer、 executor)
Hadoop(JobTracker)
Tel: 400-00-31368 Website:
HADOOP 大数据培训 之生态圈
Tel: 400-00-31368 Website:
1
大数据行业 hadoop生态圈介绍
2
3 4
hadoop介绍
hadoop安装部署
Tel: 400-00-31368 Website:
大数据行业 什么是大数据?现实中的每一天都是大数据 大数据:无法使用传统的流程或工具处理或分析的信息
Tel: 400-00-31368 Website:
Hbase 表结构
Tel: 400-00-31368 Website:
Row Key
Row key行键 (Row key)可以是任意字符串(最大长度是 64KB,实际应用中长度一 般为 10-100bytes),在hbase内部,row key保存为字节数组。 存储时,数据按照Row key的字典序(byte order)排序存储。设计key时,要充分排 序存储这个特性,将经常一起读取的行存储放到一起。(位置相关性) 行的一次读写是原子操作 (不论一次读写多少列)。这个设计决策能够使用户很容 易的理解程序在对同一个行进行并发更新操作时的行为。 HBase不支持条件查询和Order by等查询,读取记录只能按Row key(及其range) 或全表扫描,因此Row key需要根据业务来设计以利用其存储排序特性(Table 按Row key字典序排序如1,10,100,11,2)提高性能。
Tel: 400-00-31368 Website:
列族 hbase表中的每个列,都归属与某个列族。列族是表的chema的一部分(而列不是), 必须在使用表之前定义。列名都以列族作为前缀。例如courses:history , courses:math 都属于 courses 这个列族。 访问控制、磁盘和内存的使用统计都是在列族层面进行的。实际应用中, 列族上的控制权限能帮助我们管理不同类型的应用:我们允许一些应用 可以添加新的基本数据、一些应用可以读取基本数据并创建继承的列族、 一些应用则只允许浏览数据(甚至可能因为隐私的原因不能浏览所有数据)。