众所周知,大数据正在以惊人的速度增长,几乎触及各行各业,许多组织都被迫寻找新的创造性方法来管理和控制如此庞大的数据,当然这么做的目的不只是管理和控制数据,而是要分析和挖掘其中的价值,来促进业务的发展。
想要深入发展大数据,闭门造车是不可能的,共通共融是现在趋势,因此,开源让越来越多的项目可以直接采用大数据技术。如今,从小型初创企业到行业巨头,各种规模的供应商都在使用开源来处理大数据和运行预测分析。借助开源与云计算技术,新兴公司甚至在很多方面都可以与大厂商抗衡。
开源大数据的优势不言而喻,但在众多的开源工具中该如何抉择?本文中大数据领域的十个巨头,将有助于你更深入掌握大数据这个行业的发展形势。
1、Hadoop —— 高效、可靠、可伸缩,能够为你的数据存储项目提供所需的YARN、HDFS和基础架构,并且运行主要的大数据服务和应用程序。
2、Spark —— 使用简单、支持所有重要的大数据语言(Scala、Python、Java、R)。拥有强大的生态系统,成长迅速,对microbatching/batching/SQL支持简单。Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。
3、NiFi —— Apache NiFi是由美国国家安全局(NSA)贡献给Apache基金会的开源项目,其设计目标是自动化系统间的数据流。基于其工作流式的编程理念,NiFi非常易于使用、强大、可靠、高可配置。两个最重要的特性是其强大的用户界面和良好的数据回溯工具。堪称大数据工具箱里的瑞士军刀。
4、Apache Hive 2.1 —— Hive是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。随着最新版本的发布,性能和功能都得到了全面提升,Hive已成为SQL在大数据上的最佳解决方案。
5、Kafka —— Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模网站中的所有动作流数据。它已成为大数据系统在异步和分布式消息之间的最佳选择。从Spark到NiFi再到第三方插件工具以至于Java到Scala,它都提供了强大的粘合作用。
6、Phoenix —— 是HBase的SQL驱动。目前大量的公司采用它,并扩大其规模。HDFS支持的NoSQL能够很好地集成所有工具。Phoenix查询引擎会将SQL查询转换为一个或多个HBase scan,并编排执行以生成标准的JDBC结果集。
7、Zeppelin —— Zeppelin 是一个提供交互数据分析且基于Web的笔记本。方便你做出可数据驱动的、可交互且可协作的精美文档,并且支持多种语言,包括 Scala(使用 Apache Spark)、Python(Apache Spark)、SparkSQL、 Hive、 Markdown、Shell等。
8、Sparkling Water —— H2O填补了Spark’s Machine Learning的缺口,它可以满足你所有的机器学习。
9、Apache Beam —— 在Java中提供统一的数据进程管道开发,并且能够很好地支持Spark和Flink。提供很多在线框架,开发者无需学习太多框架。
10、Stanford CoreNLP —— 自然语言处理拥有巨大的增长空间,斯坦福正在努力增进他们的框架。