Apache大数据常见技术介绍,零基础大数据学习

Apache是什么?

有几个含义:

1、Apache 是使用最广泛的 Web 服务器软件。是由 Apache Software Foundation 开发和维护的,是一个免费提供的开源软件,快速,可靠,安全。

2、Apache软件基金会(也就是Apache Software Foundation,简称为ASF)是专门为运作一个开源软件项目的Apache 的团体提供支持的非盈利性组织,这个开源软件的项目就是 Apache 项目。

3、Apache开源协议,全名Apache Licence,是著名的非盈利开源组织Apache采用的协议。

Apache Hadoop:

是一个分布式基础框架,用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。它允许使用简单的编程模型跨计算机集群分布式处理大型数据集。它旨在从单个服务器扩展到数千台计算机,每台计算机都提供本地计算和存储。

狭义上,Hadoop就是单独指代Hadoop这个软件;

广义上,Hadoop指代大数据的一个生态圈,包括很多其他的软件。

Hadoop体系结构中的服务角色介绍

https://www.toutiao.com/i6600146084285121032/

Apache-Hive

基于Hadoop的一个数据仓库工具。

Apache-HBase:

HBase是一个分布式的、面向列的开源数据库。

Apache zookeeper:

指包含一个或多个节点的集群提供服务框架用于集群管理。

Apache Spark:

是一个开源的、强大的分布式查询和处理引擎

它是一种与 Hadoop 相似的开源集群计算环境,提供MapReduce的灵活性和可扩展性,但速度明显更高,是快速、易于使用的框架,允许你解决各种复杂的数据问题,无论是半结构化、结构化、流式,或机器学习、数据科学。

它也已经成为大数据方面最大的开源社区之一,拥有来自250多个组织的超过1000个贡献者,以及遍布全球570多个地方的超过30万个Spark Meetup社区成员。

SparkSpark基础入门(Spark相关概念)

https://www.toutiao.com/i6537982075213971972/

Apache Storm:

Storm是一个免费并开源的分布式实时计算系统。由Twitter正式开源的,是一个分布式的、容错的实时计算系统。

Storm可以实时处理数据,Storm简单,可以使用任何编程语言。Storm的特点之一是可靠的消息处理机制,这个机制中最重要的一环是设计一个算法来跟踪Storm中处理的数据,确保Storm知道消息是否被完整的处理。

Storm实时开发

https://www.toutiao.com/i6691134957210829316/

Apache Flink:

是一个分布式大数据处理引擎,可对有限数据流和无限数据流进行有状态计算。可部署在各种集群环境,对各种大小的数据规模进行快速计算。

Flink核心是一个流式的数据流执行引擎,其针对数据流的分布式计算提供了数据分布、数据通信以及容错机制等功能。基于流执行引擎,Flink提供了诸多更高抽象层的API以便用户编写分布式任务,还针对特定的应用领域提供了领域库。

Apache Flink介绍

https://www.toutiao.com/i6618065157681578500/

Apache Kafka:

Apache Kafka是一个快速、可扩展的、高吞吐、可容错的分布式发布订阅消息系统

Kafka的优势在于:

可靠性:Kafka是一个具有分区机制、副本机制和容错机制的分布式消息系统

可扩展性:Kafka消息系统支持集群规模的热扩展

高性能:Kafka在数据发布和订阅过程中都能保证数据的高吞吐量。即便在TB级数据存储的情况下,仍然能保证稳定的性能。

Kafka是什么?工作原理如何:https://www.toutiao.com/i6714191670088303112/

Apache-Flume

Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。

Apache Sqoop:

Sqoop是一个关系型数据库与Hadoop间的数据同步的工具。

Flume和Sqoop对比:https://www.toutiao.com/i6542386176903348749/