1、大数据平台框架选型分析1、 需求城市大数据平台,首先是作为一个数据管理平台,核心需求是数据的存和取,然后因为海量数据、多数据类型的信息需要有丰富的数据接入能力和数据标准化处理能力,有了技术能力就需要纵深挖掘附加价值更好的服务,如信息统计、分析挖掘、全文检索等,考虑到面向的客户对象有的是上层的应用集成商,所以要考虑灵活的数据接口服务来支撑。2、 平台产品业务流程3、 选型思路必要技术组件服务:ETL 非/关系数据仓储 大数据处理引擎 服务协调 分析BI 平台监管4、 选型要求1 需要满足我们平台的几大核心功能需求,子功能不设局限性。如不满足全部,需要对未满足的其它核心功能的开放使用服务支持2 国
2、内外资料及社区尽量丰富,包括组件服务的成熟度流行度较高3 需要对选型平台自身所包含的核心功能有较为深入的理解,易用其API或基于源码开发4 商业服务性价比高,并有空间脱离第三方商业技术服务5 一些非功能性需求的条件标准清晰,如承载的集群节点、处理数据量及安全机制等5、 选型需要考虑简单性:亲自试用大数据套件。这也就意味着:安装它,将它连接到你的Hadoop安装,集成你的不同接口(文件、数据库、B2B等等),并最终建模、部署、执行一些大数据作业。自己来了解使用大数据套件的容易程度仅让某个提供商的顾问来为你展示它是如何工作是远远不够的。亲自做一个概念验证。广泛性:是否该大数据套件支持广泛使用的开源
3、标准不只是Hadoop和它的生态系统,还有通过SOAP和REST web服务的数据集成等等。它是否开源,并能根据你的特定问题易于改变或扩展?是否存在一个含有文档、论坛、博客和交流会的大社区?特性:是否支持所有需要的特性?Hadoop的发行版本(如果你已经使用了某一个)?你想要使用的Hadoop生态系统的所有部分?你想要集成的所有接口、技术、产品?请注意过多的特性可能会大大增加复杂性和费用。所以请查证你是否真正需要一个非常重量级的解决方案。是否你真的需要它的所有特性?陷阱:请注意某些陷阱。某些大数据套件采用数据驱动的付费方式(“数据税”),也就是说,你得为自己处理的每个数据行付费。因为我们是在谈
4、论大数据,所以这会变得非常昂贵。并不是所有的大数据套件都会生成本地Apache Hadoop代码,通常要在每个Hadoop集群的服务器上安装一个私有引擎,而这样就会解除对于软件提供商的独立性。还要考虑你使用大数据套件真正想做的事情。某些解决方案仅支持将Hadoop用于ETL来填充数据至数据仓库,而其他一些解决方案还提供了诸如后处理、转换或Hadoop集群上的大数据分析。ETL仅是Apache Hadoop和其生态系统的一种使用情形。6、 方案分析自建套件hortonworks国内类exadoopTDW+fineBI成本100%开源培训服务3k/人授权支持100K性能单集群最大规模达到5600台
5、,处理数据量可达百P级功能按需整合HDFS和YARN数据管理从各种引擎访问数据根据策略加载和管理数据身份验证、授权和数据保护大规模配置、管理、监控和运营 Hadoop 群集与您的数据分析工具集成跨平台配置部署易操作性安装复杂,操作需要专业培训。图形设计界面,参数配置,易上手。应用成熟度国外大客户较多文档/社区支持文档较多,社区一般,相关专业培训较多。官方社区比较活跃(英文)中文社区有1个文档较少,多为英文文档文档较少,无商用服务,无任何技术支持扩展性开源开放开源开放开源开放移植性支持多操作系统支持多操作系统支持多操作系统支持多操作系统监控监控功能强大Armbri元无优势1、 跟随产品阶段逐步完
6、善整合自定义套件2、 自选流行组件,资料丰富1、 开源强大支持的开源套件2、 配套商业服务支持1、 国产套件2、 交流支持方便3、 商业服务较灵活1、开源中文支持2、基于大数据处理核心,灵活组合其它组件来适应不同产品阶段及项目劣势整合周期不可控商业成本较高依赖于打包服务公司的支持半定制套件,预学现用7、 相关资料https:/prestodb.io/http:/ (hortonworks)A Complete Enterprise Hadoop Data Platform开源工具汇总整理类别名称备注查询引擎PhoenixSalesforce公司出品,Apache HBase之上的一个SQL中间
7、层,完全使用Java编写Stinger原叫Tez,下一代Hive,Hortonworks主导开发,运行在YARN上的DAG计算框架PrestoFacebook开源SharkSpark上的SQL执行引擎Pig基于Hadoop MapReduce的脚本语言Cloudera Impala参照Google Dremel实现,能运行在HDFS或HBase上,使用C+开发Apache Drill参照Google Dremel实现Apache Tajo一个运行在YARN上支持SQL的分布式数据仓库Hive基于Hadoop MapReduce的SQL查询引擎流式计算Facebook Puma实时数据流分析Tw
8、itter Rainbird分布式实时统计系统,如网站的点击统计Yahoo S4Java开发的一个通用的、分布式的、可扩展的、分区容错的、可插拔的无主架构的流式系统Twitter Storm使用Java和Clojure实现迭代计算Apache Hama建立在Hadoop上基于BSP(Bulk Synchronous Parallel)的计算框架,模仿了Google的Pregel。Apache Giraph建立在Hadoop上的可伸缩的分布式迭代图处理系统,灵感来自BSP(bulk synchronous parallel)和Google的PregelHaLoop迭代的MapReduceTwis
9、ter迭代的MapReduce离线计算Hadoop MapReduce经典的大数据批处理系统Berkeley Spark使用Scala语言实现,和MapReduce有较大的竞争关系,性能强于MapReduceDataTorrent基于Hadoop2.X构建的实时流式处理和分析平台,每秒可以处理超过10亿个实时事件键值存储LevelDBGoogle开源的高效KV编程库,注意它只是个库RocksDBFacebook开源的,基于Google的LevelDB,但提高了扩展性可以运行在多核处理器上HyperDex下一代KV存储系统,支持strings、integers、floats、lists、maps
10、和sets等丰富的数据类型TokyoCabinet日本人Mikio Hirabayashi(平林干雄)开发的一款DBM数据库,注意它只是个库(大名鼎鼎的DBM数据库qdbm就是Mikio Hirabayashi开发的),读写非常快Voldemort一个分布式键值存储系统,是Amazon Dynamo的一个开源克隆,LinkedIn开源Amazon Dynamo亚马逊的KV模式的存储平台,无主架构Tair淘宝出品的高性能、分布式、可扩展、高可靠的KV结构存储系统,专为小文件优化,并提供简单易用的接口(类似Map),Tair支持Java和C版本的客户端Apache Accumulo一个可靠的、可伸
11、缩的、高性能的排序分布式的KV存储系统,参照Google Bigtable而设计,建立在Hadoop、Thrift和Zookeeper之上。Redis使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、单机版KV数据库。从2010年3月15日起,Redis的开发工作由VMware主持OceanBase支持海量数据的高性能分布式数据库系统,实现了数千亿条记录、数百TB数据上的跨行跨表事务Amazon SimpleDB一个可大规模伸缩、用 Erlang 编写的高可用数据存储Vertica惠普2011收购Vertica,Vertica是传统的关系型数据库,基于列存储,同时支持MPP,使
12、用标准的SQL查询,可以和Hadoop/MapReduce进行集成CassandraHadoop成员,Facebook于2008将Cassandra开源,基于O(1)DHT的完全P2P架构HyperTable搜索引擎公司Zvents针对Bigtable的C+开源实现FoundationDB支持ACID事务处理的NoSQL数据库,提供非常好的性能、数据一致性和操作弹性HBaseBigtable在Hadoop中的实现,最初是Powerset公司为了处理自然语言搜索产生的海量数据而开展的项目文件存储CouchDB面向文档的数据存储MongoDB文档数据库Tachyon加州大学伯克利分校的AMPLab
13、基于Hadoop的核心组件开发出一个更快的版本Tachyon,它从底层重构了Hadoop平台。KFSGFS的C+开源版本HDFSGFS在Hadoop中的实现资源管理Twitter MesosGoogle Borg的翻版Hadoop Yarn类似于Mesos日志收集系统Facebook ScribeFacebook开源的日志收集系统,能够从各种日志源上收集日志,存储到一个中央存储系统(可以是NFS,分布式文件系统等)上,以便于进行集中统计分析处理,常与Hadoop结合使用,Scribe用于向HDFS中Push日志Cloudera FlumeCloudera提供的日志收集系统,支持对日志的实时性收
14、集logstash日志管理、分析和传输工具,可配合kibana、ElasticSearch组建成日志查询系统kibana为日志提供友好的Web查询页面消息系统StormMQZeroMQ很底层的高性能网络库RabbitMQ在AMQP基础上完整的,可复用的企业消息系统Apache ActiveMQ能力强劲的开源消息总线Jafka开源的、高性能的、跨语言分布式消息系统,最早是由Apache孵化的Kafka(由LinkedIn捐助给Apache)克隆而来Apache KafkaLinkedin于2010年12月份开源的分布式消息系统,它主要用于处理活跃的流式数据,由Scala写成分布式服务ZooKee
15、per分布式锁服务,PoxOS算法的实现,对应Google的ChubbyRPCApache AvroHadoop中的RPCFacebook ThriftRPC,支持C+/Java/PHP等众多语言集群管理Nagios监视系统运行状态和网络信息的监视系统GangliaUC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。Apache AmbariHadoop成员,管理和监视Apache Hadoop集群的开源框架基础设施LevelDBGoogle顶级大牛开发的单机版键值数据库,具有非常高的写性能SSTable源于Google,orted String TableRecor
16、dIO源于GoogleFlat Buffers针对游戏开发的,高效的跨平台序列化库,相比Proto Buffers开销更小,因为Flat Buffers没有解析过程Protocol BuffersGoogle公司开发的一种数据描述语言,类似于XML能够将结构化数据序列化,可用于数据存储、通信协议等方面。它不依赖于语言和平台并且可扩展性极强。Consistent Hashing1997年由麻省理工学院提出,目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似,基本解决了在P2P环境中最为关键的问题如何在动态的网络拓扑中分布存储和路由。NettyJBOSS提供的一个java
17、开源框架,提供异步的、事件驱动的网络应用程序框架,用以快速开发高性能、高可靠性的网络服务器和客户端程序。BloomFilter布隆过滤器,1970年由布隆提出,是一个很长的二进制矢量和一系列随机映射函数,可以用于检索一个元素是否在一个集合中,优点是空间效率和查询时间都远远超过一般的算法,缺点是有一定的误识别率和删除困难。搜索引擎Nutch开源Java 实现的搜索引擎,诞生Hadoop的地方。Lucene一套信息检索工具包,但并不包含搜索引擎系统,它包含了索引结构、读写索引工具、相关性工具、排序等功能。SolrCloud基于Solr和Zookeeper的分布式搜索, Solr4.0 的核心组件之
18、一,主要思想是使用 Zookeeper 作为集群的配置信息中心SolrSolr是基于Lucene的搜索。ElasticSearch开源的(Apache2协议),分布式的,RESTful的,构建在Apache Lucene之上的的搜索引擎。Sphinx一个基于SQL的全文检索引擎,可结合MySQL、PostgreSQL做全文检索,可提供比数据库本身更专业的搜索功能,单一索引可达1亿条记录,1000万条记录情况下的查询速度为0.x秒(毫秒级)。SenseiDBLinkin公司开发的一个开源分布式实时半结构化数据库,在全文索引的基础封装了Browse Query Language (BQL,类似SQ
19、L)的查询语法。数据挖掘MahoutHadoop成员,目标是建立一个可扩展的机器学习库IaasOpenStack美国国家航空航天局和Rackspace合作研发的,以Apache许可证授权云平台管理的项目,它不是一个软件。这个项目由几个主要的组件组合起来完成一些具体的工作,旨在为公共及私有云的建设与管理提供软件的开源项目。6个核心项目:Nova(计算,Compute),Swift(对象存储,Object),Glance(镜像,Image),Keystone(身份,Identity),Horizon(自助门户,Dashboard),Quantum & Melange(网络&地址管理),另外还有若干社区项目,如Rackspace(负载均衡)、Rackspace(关系型数据库)。Docker应用容器引擎,让开发者可打包应用及依赖包到一个可移植的容器中,然后发布到Linux机器上,也可实现虚拟化。KubernetesGoogle开源的容器集群管理系统ImctfyGoogle开源的Linux容器监控管理DapperGoogle生产环境下的大规模分布式系统的跟踪系统ZipkinTwitter开源的参考Google Dapper而开发,使用Apache Cassandra做为数据存储系统
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。