大数据平台技术框架选
型
文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]
大数据平台框架选型分析
一、需求
城市大数据平台,首先是作为一个数据管理平台,核心需求是数据的存和取,然后因为海量数据、多数据类型的信息需要有丰富的数据接入能力和数据标准化处理能力,有了技术能力就需要纵深挖掘附加价值更好的服务,如信息统计、分析挖掘、全文检索等,考虑到面向的客户对象有的是上层的应用集成商,所以要考虑灵活的数据接口服务来支撑。
二、平台产品业务流程 三、选型思路 必要技术组件服务:
ETL > 非/关系数据仓储 > 大数据处理引擎 > 服务协调 > 分析BI > 平台监管
四、选型要求
1.需要满足我们平台的几大核心功能需求,子功能不设局限性。如不满足全部,需要对未满足的其它核心功能的开放使用服务支持
2.国内外资料及社区尽量丰富,包括组件服务的成熟度流行度较高
3.需要对选型平台自身所包含的核心功能有较为深入的理解,易用其API或基于源码开发
4.商业服务性价比高,并有空间脱离第三方商业技术服务
5.一些非功能性需求的条件标准清晰,如承载的集群节点、处理数据量及安全机制等
五、选型需要考虑
简单性:亲自试用大数据套件。这也就意味着:安装它,将它连接到你的Hadoop安装,集成你的不同接口(文件、数据库、B2B等等),并最终建模、部署、执行一些大数据作业。自己来了解使用大数据套件的容易程度——仅让某个提供商的顾问来为你展示它是如何工作是远远不够的。亲自做一个概念验证。
广泛性:是否该大数据套件支持广泛使用的开源标准——不只是Hadoop和它的生态系统,还有通过SOAP和REST web服务的数据集成等等。它是否开源,并能根据你的特定问题易于改变或扩展是否存在一个含有文档、论坛、博客和交流会的大社区
特性:是否支持所有需要的特性Hadoop的发行版本(如果你已经使用了某一个)你想要使用的Hadoop生态系统的所有部分你想要集成的所有接口、技术、产品请注意过多的特性可能会大大增加复杂性和费用。所以请查证你是否真正需要一个非常重量级的解决方案。是否你真的需要它的所有特性
陷阱:请注意某些陷阱。某些大数据套件采用数据驱动的付费方式(“数据税”),也就是说,你得为自己处理的每个数据行付费。因为我们是在谈论大数据,所以这会变得非常昂贵。并不是所有的大数据套件都会生成本地Apache Hadoop代码,通常要在每个Hadoop集群的服务器上安装一个私有引擎,而这样就会解除对于软件提供商的独立性。还要考虑你使用大数据套件真正想做的事情。某些解决方案仅支持将Hadoop用于ETL来填充数据至数据仓库,而其他一些解决方案还提供了诸如后处理、转换或Hadoop集群上的大数据分析。ETL仅是Apache Hadoop和其生态系统的一种使用情形。
六、方案分析
成本 自建套件 hortonworks 100%开源 培训服务3k/人 授权支持100K 国内类exadoop TDW+fineBI 性能 单集群最大规模达到5600台,处理数据量可达百P级 功能 按需整合 易操作性 应用成熟度 文档
安装复杂,操作需要专业培训。 HDFS和YARN数据管理 从各种引擎访问数据 根据策略加载和管理数据 身份验证、授权和数据保护 大规模配置、管理、监控和运营 Hadoop 群集 与您的数据分析工具集成 跨平台配置部署 图形设计界面,参数配置,易上手。 国外大客户较多 文档较多,社区一官方社区比较活跃(英 文档较少,无
/社区支持 扩展性 移植性 监控 优势 般,相关专业培训较多。 开源开放 支持多操作系统 文)中文社区有1个文档较少,多为英文文档 开源开放 支持多操作系统 监控功能强大Armbri 1、开源强大支持的开源套件 2、配套商业服务支持 商用服务,无任何技术支持 支持多操作系统 元 开源开放 支持多操作系统 无 1、开源中文支持 2、基于大数据处理核心,灵活组合其它组件来适应不同产品阶段及项目 半定制套件,预学现用 1、跟随产品阶段逐步完善整合自定义套件 2、自选流行组件,资料丰富 1、国产套件 2、交流支持方便 3、商业服务较灵活 劣势 整合周期不可控 商业成本较高 依赖于打包服务公司的支持 七、相关资料
HDP (hortonworks)
A Complete Enterprise Hadoop Data Platform 开源工具汇总整理
类别 名称 Phoenix Stinger Presto Shark 查询引擎 Pig Cloudera Impala Apache Drill Apache Tajo Hive Facebook Puma Twitter Rainbird 流式计算 Yahoo S4 Twitter Storm 迭代计算 Apache Hama 备注 Salesforce公司出品,Apache HBase之上的一个SQL中间层,完全使用Java编写 原叫Tez,下一代Hive,Hortonworks主导开发,运行在YARN上的DAG计算框架 Facebook开源 Spark上的SQL执行引擎 基于Hadoop MapReduce的脚本语言 参照Google Dremel实现,能运行在HDFS或HBase上,使用C++开发 参照Google Dremel实现 一个运行在YARN上支持SQL的分布式数据仓库 基于Hadoop MapReduce的SQL查询引擎 实时数据流分析 分布式实时统计系统,如网站的点击统计 Java开发的一个通用的、分布式的、可扩展的、分区容错的、可插拔的无主架构的流式系统 使用Java和Clojure实现 建立在Hadoop上基于BSP(Bulk Synchronous Parallel)的计算框架,模仿了Google的Pregel。
Apache Giraph HaLoop Twister Hadoop MapReduce 离线计算 Berkeley Spark DataTorrent LevelDB RocksDB HyperDex TokyoCabinet 建立在Hadoop上的可伸缩的分布式迭代图处理系统,灵感来自BSP(bulk synchronous parallel)和Google的Pregel 迭代的MapReduce 迭代的MapReduce 经典的大数据批处理系统 使用Scala语言实现,和MapReduce有较大的竞争关系,性能强于MapReduce 基于构建的实时流式处理和分析平台,每秒可以处理超过10亿个实时事件 Google开源的高效KV编程库,注意它只是个库 Facebook开源的,基于Google的LevelDB,但提高了扩展性可以运行在多核处理器上 下一代KV存储系统,支持strings、integers、floats、lists、maps和sets等丰富的数据类型 日本人Mikio Hirabayashi(平林干雄)开发的一款DBM数据库,注意它只是个库(大名鼎鼎的DBM数据库qdbm就是Mikio Hirabayashi开发的),读写非常快 一个分布式键值存储系统,是Amazon Dynamo的一个开源克隆,LinkedIn开源 亚马逊的KV模式的存储平台,无主架构 淘宝出品的高性能、分布式、可扩展、高可靠的KV结构存储系统,专为小文件优化,并提供简单易用的接口(类似Map),Tair支持Java和C版本的客户端 一个可靠的、可伸缩的、高性能的排序分布式的KV存储系统,参照Google Bigtable而设计,建立在Hadoop、Thrift和Zookeeper之上。 使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、单机版KV数据库。从2010年3月15日起,Redis的开发工作由VMware主持 支持海量数据的高性能分布式数据库系统,实现了数千亿条记录、数百TB数据上的跨行跨表事务 一个可大规模伸缩、用 Erlang 编写的高可用数据存储 惠普2011收购Vertica,Vertica是传统的关系型数据库,基于列存储,同时支持MPP,使用标准的SQL查询,可以和Hadoop/MapReduce进行集成 Hadoop成员,Facebook于2008将Cassandra开源,基于O(1)DHT的完全P2P架构 搜索引擎公司Zvents针对Bigtable的C++开源实现 支持ACID事务处理的NoSQL数据库,提供非常好的性能、数据一致性和操作弹性 Bigtable在Hadoop中的实现,最初是Powerset公司为了处理自然语言搜索产生的海量数据而开展的项目 面向文档的数据存储 文档数据库 加州大学伯克利分校的AMPLab基于Hadoop的核心组件开发出一个更快的版本Tachyon,它从底层重构了Hadoop平台。 Voldemort 键值存储 Amazon Dynamo Tair Apache Accumulo Redis OceanBase Amazon SimpleDB Vertica Cassandra HyperTable FoundationDB HBase CouchDB 文件存储 MongoDB Tachyon
大数据平台技术框架选型
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)