Hadoop基础情况回顾

        大数据开源技术发展了这么多年,从Hadoop开源框架开始,陆陆续续出现了很多框架技术,把Hadoop框架中的模块部件取代了,但是Hadoop依然是值得回顾学习的,一个是Hadoop的三驾马车是经典技术思想,值得来学习理解,另一个是现实平台系统已经部署了Hadoop,已经跑了多年的业务数据,不是说下线就能下线的,不是随随便便能全盘取代的,也是需要开发人员和运维人员去学习的。就目前对我而言,在客户环境就使用了HDFS和YARN好几年,不可能花人力成本来取代这些技术框架和线上部署,这是需要成本费用的。

        Hadoop的发展史可以追溯到2001年,当时Google开源了GFS和MapReduce,为大数据处理提供了基础。随后,Apache基金会引入了Lucene项目,该项目使用Java编写代码,实现了与Google类似的全文搜索功能。

        在面对海量数据的场景时,Lucene框架面临着存储数据困难和检索速度慢的问题。为了解决这些问题,Lucene的创始人Doug Cutting等人借鉴了Google的GFS和MapReduce思想,并在2003-2004年间实现了DFS和MapReduce机制,使Nutch性能飙升。

        2005年,Hadoop作为Lucene的子项目Nutch的一部分正式引入Apache基金会。Apache版本是最原始(最基础)的版本,对于入门学习最好。

        Hadoop最主要的技术就是所谓的Hadoop三驾马车,指的是Hadoop生态系统中的三个核心组件,它们是:

  1. Hadoop Distributed File System (HDFS): HDFS是一个分布式文件系统,被设计用来存储大规模数据集,并且能够提供高吞吐量的数据访问。HDFS能够将大规模的数据集划分成多个块,然后分布式存储在不同的计算机节点上,从而实现数据的冗余备份和并行处理。

  2. MapReduce: MapReduce是一种编程模型,也是Hadoop的计算框架。它通过将大规模数据集拆分成小的数据块,并使用并行的计算任务(Map)和汇总的计算任务(Reduce)来处理这些数据块,从而实现分布式的数据处理。MapReduce可以实现并行计算,以及处理大规模数据集的能力。

  3. YARN: YARN是Hadoop的资源管理系统,全称为“Yet Another Resource Negotiator”。它负责管理和调度集群中的计算资源,以便更有效地执行各种类型的应用程序。YARN可以根据应用程序的需求,动态地分配和调整计算资源,从而提高集群的利用率和性能。

        这三个组件共同构成了Hadoop的核心架构,使得Hadoop能够存储和处理大规模的数据集。

        目前Hadoop官网地址是:https://hadoop.apache.org/,从上面信息来看,Hadoop工程包括如下几个模块:

  • Hadoop Common: The common utilities that support the other Hadoop modules. 公共实用工具集。
  • Hadoop Distributed File System (HDFS™): A distributed file system that provides high-throughput access to application data. 分布式文件系统。
  • Hadoop YARN: A framework for job scheduling and cluster resource management. 集群资源管理和调度。
  • Hadoop MapReduce: A YARN-based system for parallel processing of large data sets. 分布式并行计算。

        官网上发布的与Hadoop相关联的开源系统:

  • Ambari™: A web-based tool for provisioning, managing, and monitoring Apache Hadoop clusters which includes support for Hadoop HDFS, Hadoop MapReduce, Hive, HCatalog, HBase, ZooKeeper, Oozie, Pig and Sqoop. Ambari also provides a dashboard for viewing cluster health such as heatmaps and ability to view MapReduce, Pig and Hive applications visually alongwith features to diagnose their performance characteristics in a user-friendly manner.
  • Avro™: A data serialization system.
  • Cassandra™: A scalable multi-master database with no single points of failure.
  • Chukwa™: A data collection system for managing large distributed systems.
  • HBase™: A scalable, distributed database that supports structured data storage for large tables.
  • Hive™: A data warehouse infrastructure that provides data summarization and ad hoc querying.
  • Mahout™: A Scalable machine learning and data mining library.
  • Ozone™: A scalable, redundant, and distributed object store for Hadoop.
  • Pig™: A high-level data-flow language and execution framework for parallel computation.
  • Spark™: A fast and general compute engine for Hadoop data. Spark provides a simple and expressive programming model that supports a wide range of applications, including ETL, machine learning, stream processing, and graph computation.
  • Submarine: A unified AI platform which allows engineers and data scientists to run Machine Learning and Deep Learning workload in distributed cluster.
  • Tez™: A generalized data-flow programming framework, built on Hadoop YARN, which provides a powerful and flexible engine to execute an arbitrary DAG of tasks to process data for both batch and interactive use-cases. Tez is being adopted by Hive™, Pig™ and other frameworks in the Hadoop ecosystem, and also by other commercial software (e.g. ETL tools), to replace Hadoop™ MapReduce as the underlying execution engine.
  • ZooKeeper™: A high-performance coordination service for distributed applications.

        以上开源系统最出名的有HBase、Hive、Spark、ZooKeeper、Pig、Cassandra。 

        Hadoop是一种用于大规模数据处理的开源软件平台,目前在全球范围内得到了广泛的应用。以下是一些关于Hadoop目前使用情况的概述:

  1. 企业级应用:许多大型企业和组织已经将Hadoop作为其大数据处理和分析的基础设施。这些企业利用Hadoop的分布式存储和计算能力,处理和分析大量的数据,以支持各种业务需求。
  2. 互联网公司:许多互联网公司,如Facebook、Twitter、阿里巴巴等,都使用Hadoop进行数据存储和处理。这些公司通常拥有庞大的用户群体和海量的数据,Hadoop可以帮助他们高效地处理和分析这些数据。
  3. 政府机构:一些政府机构也开始采用Hadoop技术来处理和分析大量的数据。例如,美国联邦政府已经启动了一个名为“大数据计划”的项目,旨在利用Hadoop等技术来提高政府决策的效率和准确性。
  4. 学术研究:许多学术研究机构也使用Hadoop来支持大规模数据处理和分析。例如,一些科学家使用Hadoop来处理大量的气候数据、基因数据等,以推动科学研究的发展。
  5. 云计算平台:许多云计算平台,如Amazon Web Services、Google Cloud Platform和Microsoft Azure等,都提供了Hadoop服务。这些服务使得用户可以方便地使用Hadoop进行数据处理和分析,而无需自己搭建和维护集群。

        总之,Hadoop目前在全球范围内得到了广泛的应用,已经成为大数据处理和分析领域的重要基础设施之一。     

        Hadoop市场并没有被其他技术框架完全抢占,但确实存在一些竞争和替代情况。以下是一些关于Hadoop市场被其他技术框架抢占的情况:

  1. 云平台上的数据处理框架:随着云计算的普及,一些云平台提供了自己的数据处理框架,如Amazon Redshift、Google BigQuery等。这些框架提供了更高效、更灵活的数据处理和分析能力,使得用户可以更方便地在云平台上进行数据操作。这些框架的兴起对Hadoop市场产生了一定的冲击,但Hadoop仍然在某些领域和场景中具有优势。
  2. 数据湖技术:数据湖是一种新型的数据存储和处理技术,它使用低成本的存储设备来存储大量数据,并使用计算资源进行数据分析和处理。数据湖技术可以提供更高效、更灵活的数据处理和分析能力,使得用户可以更好地利用数据。数据湖技术的兴起对Hadoop市场产生了一定的冲击,但Hadoop在某些领域和场景中仍然具有优势。
  3. 实时数据处理框架:实时数据处理框架可以提供更快速、更实时的数据处理和分析能力,使得用户可以更好地应对实时业务需求。一些实时数据处理框架,如Apache Spark等,已经成为了大数据处理领域的重要技术之一。这些框架的兴起对Hadoop市场产生了一定的冲击,但Hadoop在某些领域和场景中仍然具有优势。

        总之,虽然Hadoop市场存在一些竞争和替代情况,但Hadoop仍然在某些领域和场景中具有优势。随着技术的不断发展和进步,Hadoop市场将会继续发展壮大。

你可能感兴趣的:(大数据,hadoop,大数据,分布式)