加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

81个开源大数据处理工具汇总(上),包括查询引擎/流式计算/存储

发布时间:2021-02-28 05:01:19 所属栏目:大数据 来源:网络整理
导读:本文一共分为上下两部分。我们将针对大数据开源工具不同的用处来进行分类,并且附上了官网和部分下载链接,希望能给做大数据的朋友做个参考。下面是第一部分。 查询引擎 一、Phoenix 贡献者::Salesforce 简介:这是一个Java中间层,可以让开发者在Apache H

简介:Apache Drill是是一个能够对大数据进行交互分析、开源的分布式系统,且基于Google Dremel实现,它能够运行在上千个节点的服务器集群上,且能在几秒内处理PB级或者万亿条的数据记录。Drill能够帮助企业用户快速、高效地进行Hadoop数据查询和企业级大数据分析。Drill于2012年8月份由Apache推出。

从Drill官方对其架构的介绍中得知,其具有适于实时的分析和快速的应用开发、适于半结构化/嵌套数据的分析、兼容现有的SQL环境和Apache Hive等特征。另外,Drill的核心模块是Drillbit服务,该服务模块包括远程访问子模块、SQL解析器、查询优化器、任务计划执行引擎、存储插件接口(DFS、HBase、Hive等的接口)、分布式缓存模块等几部分,如下图所示:

81个开源大数据处理工具汇总(上),包括查询引擎/流式计算/存储

Apache?Drill官方网站>>>

八、Apache?Tajo

简介:Apache Tajo项目的目的是在HDFS之上构建一个先进的数据仓库系统。Tajo将自己标榜为一个“大数据仓库”,但是它好像和之前介绍的那些低延迟查询引擎类似。虽然它支持外部表和Hive数据集(通过HCatalog),但是它的重点是数据管理,提供低延迟的数据访问,以及为更传统的ETL提供工具。它也需要在数据节点上部署Tajo特定的工作进程。

Tajo的功能包括:

?ANSI SQL兼容
?JDBC 驱动
?集成Hive metastore能够访问Hive数据集
?一个命令行客户端
?一个自定义函数API

Apache?Tajo官方网站>>>

九、Hive

简介:hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。

Hive官方网站>>>

流式计算

一、Facebook?Puma

贡献者:Facebook

简介:实时数据流分析

二、Twitter Rainbird

贡献者:Twitter

简介:Rainbird一款基于Zookeeper,Cassandra,Scribe,Thrift的分布式实时统计系统,这些基础组件的基本功能如下:

? Zookeeper,Hadoop子项目中的一款分布式协调系统,用于控制分布式系统中各个组件中的一致性。

?Cassandra,NoSQL中一款非常出色的产品,集合了Dynamo和Bigtable特性的分布式存储系统,用于存储需要进行统计的数据,统计数据,并且提供客户端进行统计数据的查询。(需要使用分布式Counter补丁CASSANDRA-1072)

??Scribe,Facebook开源的一款分布式日志收集系统,用于在系统中将各个需要统计的数据源收集到Cassandra中。

??Thrift,Facebook开源的一款跨语言C/S网络通信框架,开发人员基于这个框架可以轻易地开发C/S应用。

用处

Rainbird可以用于实时数据的统计:

?统计网站中每一个页面,域名的点击次数

?内部系统的运行监控(统计被监控服务器的运行状态)

?记录最大值和最小值

81个开源大数据处理工具汇总(上),包括查询引擎/流式计算/存储

三、Yahoo S4

贡献者:Yahoo

简介:S4(Simple Scalable Streaming System)最初是Yahoo!为提高搜索广告有效点击率的问题而开发的一个平台,通过统计分析用户对广告的点击率,排除相关度低的广告,提升点击率。目前该项目刚启动不久,所以也可以理解为是他们提出的一个分布式流计算(Distributed Stream Computing)的模型。

S4的设计目标是:

·提供一种简单的编程接口来处理数据流

·设计一个可以在普通硬件之上可扩展的高可用集群。

·通过在每个处理节点使用本地内存,避免磁盘I/O瓶颈达到最小化延迟

·使用一个去中心的,对等架构;所有节点提供相同的功能和职责。没有担负特殊责任的中心节点。这大大简化了部署和维护。

·使用可插拔的架构,使设计尽可能的即通用又可定制化。

·友好的设计理念,易于编程,具有灵活的弹性

Yahoo S4官方网站>>>

四、Twitter?Storm

贡献者:Twitter

简介:Storm是Twitter开源的一个类似于Hadoop的实时数据处理框架,它原来是由BackType开发,后BackType被Twitter收购,将Storm作为Twitter的实时数据分析系统。

实时数据处理的应用场景很广泛,例如商品推荐,广告投放,它能根据当前情景上下文(用户偏好,地理位置,已发生的查询和点击等)来估计用户点击的可能性并实时做出调整。

storm的三大作用领域:

1.信息流处理(Stream Processing)

Storm可以用来实时处理新数据和更新数据库,兼具容错性和可扩展性,它 可以用来处理源源不断的消息,并将处理之后的结果保存到持久化介质中。

2.连续计算(Continuous Computation)

Storm可以进行连续查询并把结果即时反馈给客户,比如将Twitter上的热门话题发送到客户端。

3.分布式远程过程调用(Distributed RPC)

除此之外,Storm也被广泛用于以下方面:

  • 精确的广告推送
  • 实时日志的处理

Twitter?Storm官方网站>>>

迭代计算

一、Apache Hama

简介:Apache Hama是一个纯BSP(Bulk Synchronous Parallel)计算框架,模仿了Google的Pregel。用来处理大规模的科学计算,特别是矩阵和图计算。

?建立在Hadoop上的分布式并行计算模型。

?基于 Map/Reduce 和 Bulk Synchronous 的实现框架。

?运行环境需要关联 Zookeeper、HBase、HDFS 组件。

Hama中有2个主要的模型:

– 矩阵计算(Matrix package)

– 面向图计算(Graph package)

Apache?Hama官方网站>>>

二、Apache?Giraph

代码托管地址:?GitHub

简介:Apache Giraph是一个可伸缩的分布式迭代图处理系统,灵感来自BSP(bulk synchronous parallel)和Google的Pregel,与它们 区别于则是是开源、基于 Hadoop 的架构等。

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读