1、top N排行榜数据挖掘:关联规则分析;分类;聚类,大数据技术:数据采集:ETL工具数据存取:关系数据库;NoSQL;SQL等基础架构支持:云存储;分布式文件系统等计算结果展现:云计算;标签云;关系图等,存储:结构化数据:海量数据的查询、统计、更新等操作效率低 非结构化数据:图片、视频、word等文件存储不利于检索、查询和存储 半结构化数据:转换为结构化存储按照非结构化存储解决方案:Hadoop 流计算,Hbase的优劣,1、动态可扩展的,创建表的时候不需要知道有几列,只需要指 定有几个column family,并且列为空就不存储数据,节省存储空间。为什么列是动态的?统计淘宝访问量和购买量,
2、新平台的统计,传统关系型数据库需要停机维护,而Hbase支持动态增加2、多版本数据根据Row key和Column key定位到的Value可以有任意数量的版本 值,因此对于需要存储变动历史记录的数据,用HBase就非常方 便了。3、支持事务较弱,所以有事务支持的时候都会选择传统的关系 型数据库,Hbase事务仅仅是针对某一行的一系列Put/Delete操作。不同行、不同表间一系列操作是无法放在一个事务中的。对一张 多Region表来说,还是无法保证每次修改都能封装为一个事务。,计算框架,批处理:mapreduce实时性:(毫秒级)storm交互式分析:(秒级)spark,例:报表例:信用卡欺
3、诈,数据挖掘,数据挖掘是指从大量的数据中通 过算法搜索隐藏于其中信息的过程数据 挖掘,数据可视化,大数据主要应用技术-Hadoop,Hadoop是一个由Apache基金会所开发的分布式 系统基础架构Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。,运行平台:Linux、Mac OS/X,Solaris,Windows,Hadoop优点,1、高可靠性:hadoop按位存储和处理数据的能力值得人们信赖。2、高扩展性:hadoop是在可用的计算机集簇之间分配数据并完成计算 任务的,这些集簇可以方便地扩展到数
4、以千计的节点中。3、高效性:能够在节点之间动态地移动数据,并保证各个节点之间的 动态平衡,因此处理速度非常快。4、高容错性:hadoop能够自动保存数据的多个副本,并且能够自动将失 败的任务重新分配。5、低成本:hadoop本身是运行在普通PC服务器组成的集群中进行大数据 的分发及处理工作的,这些服务器集群是可以支持数千个节点的。,Hadoop核心设计,MapReduce,HDFS,Map:任务的分解 Reduce:结果的汇总,NameNode:文件管理 DataNode:文件存储 Client:文件获取,HDFS架构,主从(Master/Slave)体系结构只含有一二NameNode主服务节
5、点这个节点管理文件系统中的命名空间和调度客服端对文件 的访问通常一个机器就是一个DataNode数据节点,DataNode管理本节点上数据的存储在HDFS内部,一个文件被分割为一个货多个数据块,并且这些数据块被存储在一批DataNode 中NameNode执行文件系统中命名空间的操作(打开、关闭、重命名文件和目录),NameNode需要执行数据块到DataNode映射的决策DataNode负责响应来自客户端的文件读写要求,也要负责执行来自NameNode的关于数据块 创建、删除和冗余存储的指令,Map/Reduce处理过程,一次Map/Reduce任务过程。用户提交给JobTracer,Job
6、Tracer把对应的用户 程序中的Map操作和Reduce操作映射至TaskTracer节点中;输入模块负责把输入 数据分成小数据块。然后把他们传给Map节点;Map节点得到每一个key/value对,处理后产生一个或多个key/value对,然后写入文件;Reduce节点获取临时文件中 的数据,对代用相同key的数据进行迭代计算,然后把最终结果写入文件。,我们要数图书馆中的所有书。你数1号书架,我数2号书架。这就是“Map”。我们人越多,数书就更快。,现在我们到一起,把所有人的统计数加在一起。这就是“Reduce”。,Hadoop体系架构,Pig,Hive,Avro,Mahout,MapRe
7、duce/YARN,Cassandra,HBase,HDFS,Apache Ambari是 一个基于Web的工具,用于配置、管理和监视 Apache Hadoop集群,支持Hadoop HDFS、Hadoop MapReduce、Hive、HCatalog、HBase、ZooKeeper、Oozie、Pig和Sqoop。,Apache Ambari,Apache Pig是一个用于大型数据 集分析的平台,它包含了一个用于数据 分析应用的高级语言以及评估这些应用 的基础设施。Pig应用的闪光特性在于它们的结 构经得起大量的并行,也就是说让它们 支撑起非常大的数据集。Pig的基础设 施层包含了产生M
8、ap-Reduce任务的编 译器,Apache Pig,Apache Hive是Hadoop的一个数据仓库系统,促 进了数据的综述(将结构化的数据文件映射为一张数 据库表)、即席查询以及存储在Hadoop兼容系统中的 大型数据集分析。Hive提供完整的SQL查询功能HiveQL语言,同时当使用这个语言表达一个逻辑变得低效和繁琐时,HiveQL还允许传统的Map/Reduce程序员使用自己定 制的Mapper和Reducer。Hive类似CloudBase,基于hadoop分布式计算平台上的提供data warehouse的sql功能的一套软件。使得存储在hadoop里面的海量数据的汇总,即席查
9、询 简单化。,Apache Hive,HBase是一个分布式的、面向列的开源数 据库,该技术来源于 Fay Chang 所撰写的 Google论文“Bigtable:一个结构化数据的分 布式存储系统”。就像Bigtable利用了Google 文件系统(File System)所提供的分布式数据 存储一样,HBase在Hadoop之上提供了类似 于Bigtable的能力。HBase是Apache的 Hadoop项目的子项目。HBase不同于一般的 关系数据库,它是一个适合于非结构化数据存 储的数据库。另一个不同的是HBase基于列的 而不是基于行的模式。,Apache HBase,Apache
10、Cassandra是一个高性能、可线性扩展、高有效性数据库,可以运 行在商用硬件或云基础设施上打造完美 的任务关键性数据平台。在横跨数据中 心的复制中,Cassandra同类最佳,为 用户提供更低的延时以及更可靠的灾难 备份。通过log-structured update、反 规范化和物化视图的强支持以及强大的 内置缓存,Cassandra的数据模型提供 了方便的二级索引(column index),Apache Cassandra,Avro是一个数据系列化系统;Avro是doug cutting主持的RPC项目,有点类似Google 的protobuf和Facebook的thrift。Avr
11、o用来做以后hadoop的RPC,使hadoop的RPC 模块通信速度更快、数据结构更紧凑Apache Mahout是个可扩展的机器学习和数据挖掘库,当前Mahout支持主要的4个用 例:推荐挖掘:搜集用户动作并以此给用户推荐可能喜欢的事物。聚集:收集文件并进行相关文件分组。分类:从现有的分类文档中学习,寻找文档中的相似特征,并为无标签的文档进行正确 的归类。频繁项集挖掘:将一组项分组,并识别哪些个别项会经常一起出现。,Zookeeper是Google的Chubby一个开源的实现。它是一个针对大型分布式系 统的可靠协调系统,提供的功能包括:配置维护、名字服务、分布式同步、组 服务等。ZooKe
12、eper的目标就是封装好复杂易出错的关键服务,将简单易用的 接口和性能高效、功能稳定的系统提供给用户。,Apache Chukwa是个开源的数据收集系统,用以监视大型分布系统。建立于 HDFS和Map/Reduce框架之上,继承了Hadoop的可扩展性和稳定性。Chukwa同样包含了一个灵活和强大的工具包,用以显示、监视和分析结果,以保证数据的使用达到最佳效果。,Hadoop平台的安装配置,Hadoop安装配置参考如下:http:/,Zookeeper 从程序员的角度来讲可以理解为Hadoop的整体监控系统。如果 namenode,HMaster宕机后,这时候Zookeeper 的重新选出le
13、ader。这是它最大 的作用所在。下面详细介绍zookeeper的作用Hadoop有NameNode,HBase有HMaster,为什么还需要zookeeper,下面给 大家通过例子给大家介绍。一个Zookeeper的集群中,3个Zookeeper节点.一个leader,两个follower的情况 下,停掉leader,然后两个follower选举出一个leader.获取的数据不变.我想 Zookeeper能够帮助Hadoop做到:Hadoop,使用Zookeeper的事件处理确保整个集群只有一个NameNode,存储配置信息等.HBase,使用Zookeeper的事件处理确保整个集群只有一个
14、HMaster,察觉 HRegionServer联机和宕机,存储访问控制列表等.,Hbase是一个分布式的、面向列的数据库。Hbase利用hadoop的HDFS作为其的文件存储系统,Hbase利用hadoop的MapReduce来处理 Hbase中的海量数据,利用Zookeeper作为协同服务HBase shell的基本用法hbase提供了一个shell的终端给用户交互。通过执行 help get 可以看到命令的帮助信息。以网上的一个学生成绩表的例子来演示hbase的用法。这里grad对于表来说是一个列,course对于表来说是一个列族,这个列族由两个列组成math和art,当然我们可以根据我们的需要在course中建立更多的列族,如computer,physics等相应的列添加入course 列族。,name,grad,course,mathart97878
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1