大数据生态组件
- 大数据生态关系图
Flume:水道、引水槽
Flume
是一种分布式,可靠且可用的服务,用于有效地收集,聚合和移动大量日志数据。它具有基于流数据流的简单灵活的架构。它具有可靠的可靠性机制和许多故障转移和恢复机制,具有强大的容错能力。它使用简单的可扩展数据模型,允许在线分析应用程序。
strom:暴风雨、猛攻
Storm
是一个免费的开源分布式实时计算系统。Storm
可以轻松可靠地处理无限数据流,实时处理Hadoop
为批处理所做的工作。
spark streaming:火花 流
spark streaming
是spark
组件中用于处理流式计算问题的组件,会将不断输入的流数据打成一个RDD
。
scala
一门多范式编程语言,类似于java
,集成了面向对象编程与函数式编程的特性。
mahout
提供可扩展的机器学习经典算法实现,包括聚类、分类、推荐过滤等。
MLlib
MLib
是Spark
的可扩展的机器学习库。
zookeeper
ZooKeeper
是一个分布式的,开放源码的分布式应用程序协调服务,是Google
的Chubby
一个开源的实现,是Hadoop
和Hbase
的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
Hbase
分布式、面向列的存储系统,为海量数据提供准实时查询。
Hue
Hue
是一个一套web
管理器,用来基于界面进行大数据组件管理。
sqoop
Sqoop
是一款开源的工具,主要用于在Hadoop(Hive)
与传统的数据库(mysql、postgresql...)
间进行数据的传递,可以将一个关系型数据库**中的数据导进到Hadoop
的HDFS
中,也可以将HDFS
的数据导进到关系型数据库中。
Oozie
Oozie
是一个用于管理Apache Hadoop
作业的工作流调度系统。
Hadoop
Hadoop
是一个能够对大量数据进行分布式处理的软件框架。 Hadoop
以一种可靠、高效、可伸缩的方式进行数据处理。包括HDFS
分布式存储系统与MapReduce
计算系统。
Spark
Spark
是专为大规模数据处理而设计的快速通用的计算引擎,Spark
启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。
HDFS
HDFS(Hadoop Distributed File System)
是Hadoop
的核心子项目,是一个可以运行在普通硬件设备上的分布式文件系统,是分布式计算中数据存储和管理的基础,是基于流数据模式访问和处理超大文件的需求而开发的。它所具有的高容错、高可靠性、高可扩展性、高吞吐率等特征为海量数据提供了不怕故障的存储,给超大数据集(Large Data Set)
的应用处理带来了很多便利。
Yarn
Yarn
是一种新的Hadoop
资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度。
Mesos
Mesos
是资源调度与任务管理的资源管理器。
hive
hive
是基于Hadoop
的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql
查询功能,可以将sql
语句转换为MapReduce
任务进行运行。 其优点是学习成本低,可以通过类SQL
语句快速实现简单的MapReduce
统计,不必开发专门的MapReduce
应用,十分适合数据仓库的统计分析。
SparkSql
Spark SQL
允许您使用SQL
或熟悉的DataFrame API
查询Spark
程序内的结构化数据。
Pig
Apache Pig
是一个高级过程语言,适合于使用 Hadoop
和 MapReduce
平台来查询大型半结构化数据集。通过允许对分布式数据集进行类似 SQL
的查询,Pig
可以简化Hadoop
的使用。
kylin
Apache Kyli
是一个开源的分布式分析引擎,提供Hadoop/Spark
之上的SQL
查询接口及多维分析(OLAP)
能力以支持超大规模数据。