系统在现网运行中,很多错误日志没能及时的分析,导致系统的问题总是用户发现,然后告诉我们来解决,而不是我们主动的去积极解决系统中的问题,因此想通过
业余时间做一个日志分析系统,主要是把应用层和消息传输模块抛出的日志做分析,方便定位问题。在多核CPU的时代,并发编程是一个趋势,为了更好的利用现
网和测试环境的4核CPU,需要先研究一下分布式并发框架Hadoop。
什么是Hadoop?
Hadoop
是
apache下面的一个分布式并行计算框架,是从lunece中抽取出来的一个框架。Hadoop的核心设计思想是:MapReduce和
HDFS,MapReduce是Google提出的一个软件架构,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"
和"Reduce(化简)",和他们的主要思想,都是从函数式编程语言借来的,还有从矢量编程语言借来的特性;HDFS是Hadoop Distributed File System的缩写,即:Hadoop分布式文件系统,为分布式计算存储提供底层支持。注:MapReduce (google mapreduce 论文点击这里
),
GFS(Google File System)和bigtable是google的三大核心技术。
HadoopMapReduce介绍
Map(映射)和reduce(化简)是分开处理的,map是将一个任务分解为多个任务执行,reduce是将多个任务汇总起来得到想要的结果。把一个
list拆解为多个放到线程池中启动多个线程计算list中值,然后把多个任务返回的结果合并为一个总的结果其实就是一个简单的MapReduce的应
用。
在Hadoop官方文档(单击这里
)介绍了HadoopMapReduce的三个步骤,map(主要是分解并行的任务),combine(主要是为了提高reduce的效率),reduce(把处理后的结果再汇总起来)
HDFS介绍
由上图可以看出,HDFS是由Client,Datanodes,Namenode3部分组成成(详细介绍点击这里
)。NameNode
可以看作是分布式文件系统中的管理者,主要负责管理文件系统的命名空间、集群配置信息和存储块的复制等。NameNode会将文件系统的Meta-
data存储在内存中,这些信息主要包括了文件信息、每一个文件对应的文件块的信息和每一个文件块在DataNode的信息等。DataNode是文件存
储的基本单元,它将Block存储在本地文件系统中,保存了Block的Meta-data,同时周期性地将所有存在的Block信息发送给
NameNode。Client就是需要获取分布式文件系统文件的应用程序。这里通过三个操作来说明他们之间的交互关系(via 岑文初《分布式计算开源框架Hadoop介绍
》)
Hadoop非常适合海量数据分析,我们系统中的错误日志如果是GB级别的时候,估计问题早就被用户发现了。所以这种日志的分析只是借鉴Hadoop的
思想,具体的实现在concurrent基础上就好了。最后共享06年Doug Cutting一个PPT一份,大家围观之!
分享到:
相关推荐
### Hadoop:分布式系统基础架构概览 #### Hadoop的核心概念与起源 Hadoop是由Apache基金会开发的一款分布式系统基础架构,旨在使用户无需深入了解分布式系统的底层复杂性即可开发分布式程序,充分利用集群的强大...
### Hadoop简介与核心特性 #### 一、大数据与Hadoop背景 自“大数据”这一概念诞生以来,它已经在过去十多年间经历了飞速的发展。众多机构和组织试图对其定义进行阐述,例如研究机构Gartner将其定义为需要采用新型...
1. Hadoop简介:Hadoop的核心理念是通过分布式文件系统(HDFS)和分布式计算框架(MapReduce)实现数据的分散存储和并行处理,以提高处理效率。Hadoop的诞生源于Google的GFS和MapReduce论文,旨在解决海量数据处理的...
【Hadoop 简介】 Hadoop 是一个开源的分布式计算框架,由Apache软件基金会维护,是当前大数据处理领域的重要工具。它最初受到Google在2004年提出的MapReduce和GFS(Google File System)的启发,由Doug Cutting和...
【标题】:“福建师范大学精品大数据导论课程系列 (5.2.1)--4.1.2 hadoop简介之二.rar” 提供的是一份关于Hadoop的深入介绍,特别是针对Hadoop的基础概念和核心组件的讲解。Hadoop是Apache软件基金会开发的一个开源...
### HADOOP简介 #### Hadoop组成概述 Hadoop是一个开源软件框架,旨在为大型数据集提供分布式存储和计算能力。Hadoop的核心组件包括Hadoop分布式文件系统(HDFS)和MapReduce编程模型。 - **Hadoop分布式文件系统...
大数据处理框架:Hadoop:大数据与Hadoop简介.docx
Hadoop简介 Hadoop 是一个由 Apache 软件基金会开发的开源大数据处理框架,主要用于存储和处理大规模数据。Hadoop 的核心组件包括 HDFS、MapReduce、HBase 和 ZooKeeper。 1. HDFS(Hadoop Distributed File ...
#### 一、Hadoop简介 **Hadoop** 是一个能够对大量数据进行分布式处理的软件框架,它最初由Nutch和Lucene之父Doug Cutting于2006年创建。有趣的是,“Hadoop”这个名字来源于Doug Cutting的儿子对他玩具大象的一种...
Apache Hadoop 是一个开源的分布式计算框架,专为处理和存储大规模数据集而设计。它由Apache软件基金会维护,是大数据处理领域中的核心组件。Hadoop 的主要特点是高容错性和可扩展性,使得它能够处理PB级别的数据。...
### Hadoop概述及核心组件解析 #### Hadoop的定义与特点 Hadoop作为一个开源框架,主要面向大规模数据处理任务,特别是在离线分析场景下表现出色。它不是为在线事务处理设计的,即不适合处理那些需要频繁进行记录级...
Hadoop是现阶段数据开发的基础,Hadoop通常是指一个更广泛的概念—-Hadoop生态圈(基于或关于Hadoop的大数据开发的各种软件环境) 是Apache公司使用Java语言编写的开源的,分布式系统的基础架构 分布式就是,当储存...
- **计算模型**:为解决非专业用户难以有效利用分布式计算资源的问题,云计算提供高度抽象的计算模型,其中Hadoop是一个典型代表。 ### Hadoop:大数据处理的开源框架 Hadoop是一种开放源代码的分布式计算框架,...
简要介绍了hadoop的发展历程、原理、特征以及基于hadoop的分布式系统的安装方法。
Hadoop-0.21.0分布式集群配置.doc
1. **Hadoop简介**:Hadoop是一个开源框架,主要用于处理和存储大量数据。它的核心组件包括Hadoop Distributed File System (HDFS)和MapReduce,这两个组件共同实现了分布式计算。 2. **Eclipse IDE**:Eclipse是一...