云计算的利刃:快速部署Hadoop集群

近来云计算越来越热门了,云计算已经被看作IT业的新趋势。云计算可以粗略地定义为使用自己环境之外的某一服务提供的可伸缩计算资源,并按使用量付费。可以通过 Internet 访问“云”中的任何资源,而不需要担心计算能力、带宽、存储、安全性和可靠性等问题。

从企业的角度来说,日益增长的信息已经很难存储在标准关系型数据库甚至数据仓库中。这些问题提到了一些在实践中已存在多年的难题。例如:怎样查询一个十亿行的表?怎样跨越数据中心所有服务器上的所有日志来运行一个查询?更为复杂的问题是,大量需要处理的数据是非结构化或者半结构化的,这就更难查询了。

“云计算”领域已经成为众多跨国IT巨头未来“决斗”的主战场。由于意识到“云计算”将是一场改变IT格局的划时代变革,几乎所有重量级跨国IT巨头从不同领域和角度开始在“云计算”领域扎根,这个阵营的主力包括Amazon、Google、IBM、Mircosoft、VMware、Cisoco、Intel、AMD、Oracle、SAP、HP、Dell、Citrix、 Redhat、Novell、Yahoo等等。美国硅谷目前已约有150家涉及“云计算”的企业,新的商业模式层出不穷。

“云计算”庞大的市场规模超乎想象。按照最乐观估计,IDC推算未来3年全球“云计算”领域将有8000亿美元的新业务收入。显然,全球各IT巨头竞相进入“云计算”领域背后的原因是未来天文数字般的市场规模以及由此带来的无比光明的发展前景。自2011年开始,各大IT企业已经展开一场硝烟滚滚的争夺战,以实现自己在“云计算”市场中未来的霸主地位。

Hadoop简介

Apache Hadoop 是一个软件框架,它可以分布式地操纵大量数据。它于2006年首次提及,由 Google、Yahoo! 和 IBM 等公司支持。可以认为它是一种 PaaS 模型。

它的设计核心是 MapReduce 实现和 HDFS (Hadoop Distributed File System),它们源自 MapReduce(由一份 Google 文件引入)和 Google File System。

MapReduce 是 Google 引入的一个软件框架,它支持在计算机(即节点)集群上对大型数据集进行分布式计算。它由两个过程组成,映射(Map)和缩减(Reduce)。

在映射过程中,主节点接收输入,把输入分割为更小的子任务,然后把这些子任务分布到工作者节点。

工作者节点处理这些小任务,把结果返回给主节点。

然后,在缩减过程中,主节点把所有子任务的结果组合成输出,这就是原任务的结果。

MapReduce 的优点是它允许对映射和缩减操作进行分布式处理。因为每个映射操作都是独立的,所有映射都可以并行执行,这会减少总计算时间。

对外部客户机而言,HDFS 就像一个传统的分级文件系统。可以创建、删除、移动或重命名文件,等等。但是 HDFS 的架构是基于一组特定的节点构建的,这是由它自身的特点决定的。这些节点包括 NameNode(仅一个),它在 HDFS 内部提供元数据服务;DataNode,它为 HDFS 提供存储块。由于仅存在一个 NameNode,因此这是 HDFS 的一个缺点(单点失败)。

存储在 HDFS 中的文件被分成块,然后将这些块复制到多个计算机中(DataNode)。这与传统的 RAID 架构大不相同。块的大小(通常为 64MB)和复制的块数量在创建文件时由客户机决定。NameNode 可以控制所有文件操作。HDFS 内部的所有通信都基于标准的 TCP/IP 协议。

NameNode 是一个通常在 HDFS 实例中的单独机器上运行的软件。它负责管理文件系统名称空间和控制外部客户机的访问。NameNode 决定是否将文件映射到 DataNode 上的复制块上。对于最常见的 3 个复制块,第一个复制块存储在同一机架的不同节点上,最后一个复制块存储在不同机架的某个节点上。注意,这里需要您了解集群架构。

实际的 I/O 事务并没有经过 NameNode,只有表示 DataNode 和块的文件映射的元数据经过 NameNode。当外部客户机发送请求要求创建文件时,NameNode 会以块标识和该块的第一个副本的 DataNode IP 地址作为响应。这个 NameNode 还会通知其他将要接收该块的副本的 DataNode。

NameNode 在一个称为 FsImage 的文件中存储所有关于文件系统名称空间的信息。这个文件和一个包含所有事务的记录文件(这里是 EditLog)将存储在 NameNode 的本地文件系统上。FsImage 和 EditLog 文件也需要复制副本,以防文件损坏或 NameNode 系统丢失。

(责任编辑:杜庆先)

时间: 2024-11-02 08:02:36

云计算的利刃:快速部署Hadoop集群的相关文章

Shell脚本快速部署Kubernetes集群系统

  本文紧跟上节所讲的手动部署Kubernetes管理Docker篇所写,本篇主要内容利用Shell脚本完成快速部署Kubernetes集群.上节博文看过的朋友也能感觉到部署过程相对比较简单,那么,出于简化工作流程,推进运维自动化角度来说,于是花了2/3天时间写这个部署Kubernetes脚本.   运维工作中,常常会遇到部署各种各样的服务,建议:常规部署都应该尽量使用脚本完成,一方面提高自身脚本编写能力,另一方面推进运维自动化. 详细部署说明文档:http://lizhenliang.blog

mapreduce-solaris部署hadoop集群跑wordcount报错

问题描述 solaris部署hadoop集群跑wordcount报错 solaris部署hadoop集群跑wordcount报错, 信息如下: [admin@4bf635fa-5f3e-4b47-b42d-7558a6f0bbff ~]$ hadoop jar /opt/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount /input /output 15/08/20 00:48:09 WARN

批量部署Hadoop集群环境(1)

批量部署Hadoop集群环境(1) 1. 项目简介: 前言:云火的一塌糊涂,加上自大二就跟随一位教授做大数据项目,所以很早就产生了兴趣,随着知识的积累,虚拟机已经不能满足了,这次在服务器上以生产环境来部署Hadoop.已经搭建完毕,分享出来供大家参考. 问题:看到Hadoop部署在一些资料上很是繁琐,一些简单的部署方法只是玩具,无法满足企业的部署条件,如果一台台服务器去部署,显然是不可行. 解决:在学习及其他资料后,准备以<Apache Hadoop Yarn: Moving Beyond Ma

实战CentOS系统部署Hadoop集群服务

Hadoop是一个由Apache基金会所开发的分布式系统基础架构,Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS.HDFS有高容错性特点,并且设计用来部署在低廉的(low-cost)硬件上:而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序:HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文

Ceph实验室:第一课:快速部署ceph集群

本次实验演示如何快速地在centos上部署ceph分布式存储集群.目标是在ceph-node1和ceph-node2上创建一个两节点的集群. 环境 硬件环境 主机名 IP 功能 备注 ceph-node1 192.168.1.120 deploy,mon*1,osd*3 ceph-node2 192.168.1.121 deploy,mon*1,osd*3 ceph-node3 192.168.1.122 横向扩展节点 cloud 192.168.1.102 openstack ocata te

虚拟化Hadoop集群的部署和管理:基本操作

在Big Data Extensions(BDE)上不仅可以在分钟级别非常快速地部署Hadoop集群,这点可以通过前文<大数据虚拟化零起点-6基础运维第五步-使用CLI创建Apache Hadoop集群>和<大数据虚拟化零起点-7基础运维第六步-安装Big Data Extensions Plugin>感受到.部署完成后,BDE还能够方便地管理它们,从软件定义的角度,通过简单的图形界面和直观的命令行两种方法对集群的对象进行管理.下面我们就具体展开,讨论这些日常所需的集群运行管理.

Ubuntu12.04 Server下安装部署Cloudera Hadoop集群

部署环境 OS: Ubuntu12.04 Server Hadoop:CDH3U6 机器列表:namenode 192.168.71.46:datanode 192.168.71.202,192.168.71.203,192.168.71.204 安装Hadoop 添加软件源 /etc/apt/sources.list.d/cloudera-3u6.list 插入 deb  http://192.168.52.100/hadoop maverick-cdh3 contrib deb-src  h

Hadoop集群部署权限总结

这是一篇总结的文章,主要介绍 Hadoop 集群快速部署权限的步骤以及一些注意事项.如果你想了解详细的过程,请参考本博客中其他的文章. 1. 开始之前 hadoop 集群一共有三个节点,每个节点的 ip.hostname.角色如下: 192.168.56.121 cdh1 NameNode.kerberos-server.ldap-server.sentry-store 192.168.56.122 cdh2 DataNode.yarn.hive.impala 192.168.56.123 cd

hadoop集群-ambari 是否能够监控已经安装部署的Hadoop集群。

问题描述 ambari 是否能够监控已经安装部署的Hadoop集群. 我现在有几台机器再跑Hadoop .现在想要ambari来监控这个集群,但是不知道为什么只能重新安装所有集群.求各路有经验的人提供解决办法,如解决,提供相应数量的Q币为谢!