cloudera hadoop 54的教程能否也发我一份

利用Cloudera实现Hadoop
出自Ubuntu中文
Hadoop 是一个实现了 MapReduce 计算模型的开源分布式并行编程框架。MapReduce的概念来源于Google实验室,它是一个简化并行计算的编程模型,适用于大规模集群上的海量数据处理,目前最成功的应用是分布式搜索引擎。随着2007年底该模式Java开源实现项目Apache Hadoop的出现,使得程序员可以轻松地编写分布式并行程序,并将其运行于计算机集群上,完成海量数据的计算。近两年尤其是今年国内外采用MapReduce模型的应用也逐渐丰富起来,如像NTT KDDI和中国移动这类的电信公司采用该模型分析用户信息,优化网络配置;美国供电局采用该模型来分析电网现状;包括VISA和JP摩根在内的金融公司采用该模型来分析股票数据;包括Amazon和ebay在内的零售商和电子商务公司也开始采用该模型;甚至部分生物公司也采用该模型来进行DNA测序和分析。然而Hadoop安装、部署、管理的难度非常大,这使用很多用户对Hadoop望而却步,好在这种情况不久就得到了改善,Cloudera提供了非常简单的Hadoop的发布版本,能够十分方便地对Hadoop进行安装、部署和管理,这导致目前大约有75%的Hadoop新用户使用Cloudera。
Hadoop有三种运行模式:单机(非分布)运行模式、伪分布运行模式和分布式运行模式。其中前两种运行模式体现不了 Hadoop 分布式计算的优势,并没有什么实际意义(当然它们对程序的测试及调试还是很有帮助的),因此在这里还是采用实际环境中使用的分布式运行模式来部署。
在这里拟采用三台主机搭建Hadoop环境,由于后期还需要测试增删主机及跨网段主机对Hadoop环境的影响,特将Hadoop主机规划如下:
Hadoop-01 10.137.253.201
Hadoop-02 10.137.253.202
Hadoop-03 10.137.253.203 准备后期加入的测试主机
Hadoop-04 10.137.253.204
Firehare-303 10.10.3.30
准备后期加入的跨网段测试主机
对于Hadoop来说,最主要的是两个内容,一是分布式文件系统HDFS,一是MapReduce计算模型。在分布式文件系统HDFS看来,节点分为NameNode 和DataNode,其中NameNode只有一个,DataNode可以是很多;在MapReduce计算模型看来,节点又可分为JobTracker和 TaskTracker,其中JobTracker只有一个,TaskTracker可以是很多。因此在实际的Hadoop环境中通常有两台主节点,一台作为NameNode(I/O节点??),一台作为JobTracker(管理节点??),剩下的都是从节点,同时当做DataNode和TaskTracker使用。当然也可以将NameNode和JobTracker安装在一台主节点上。由于测试机数量有限,所以在这里是让Hadoop-01做为Namenode和Jobtracker,其它主机则作为DataNode和TaskTracker(如果Hadoop环境中主机数量很多的话,还是建议将Namenode和JobTracker部署到不同的主机,以提高计算的性能)。具体规划如下:
Hadoop-01 NameNode
Hadoop-02 DataNode
Hadoop-03 DataNode
Hadoop-04 DataNode
Firehare-303 DataNode
MapReduce:
Hadoop-01 JobTracker
Hadoop-02 TaskTracker
Hadoop-03 TaskTracker
Hadoop-04 TaskTracker
Firehare-303 TaskTracker
规划好了就开始安装Hadoop,如前言中所说使用Cloudera的Hadoop发布版安装Hadoop是十分方便的,首先当然是在每台主机上一个干净的操作系统(我用的是Ubuntu 8.04,用户设为Hadoop,其它的版本应该差不多),然后就是安装Hadoop了(这样安装的是Hadoop-0.20,也可以安装Hadoop-0.18的版本,反正安装步骤都差不多。注意,不能同时启用Hadoop-0.20和Hadoop-0.18)。由于每台机器安装步骤都一样,这里就写出了一台主机的安装步骤,主要分为以下几个步骤:
生成Cloudera源文件(这里采用的是Hadoop-0.20版本,源信息可能过时,最新信息请参见官方文档: ):
sudo vi /etc/apt/sources.list.d/cloudera.list
#稳定版(Hadoop-0.18)
#deb /debian hardy-stable contrib
#deb-src /debian hardy-stable contrib
#测试版(Hadoop-0.20)
deb /debian hardy-testing contrib
deb-src /debian hardy-testing contrib
生成源的密钥:
sudo apt-get install curl
curl -s /debian/archive.key | sudo apt-key add -
更新源包索引:
sudo apt-get update
sudo apt-get dist-upgrade
安装Hadoop:
sudo apt-get install hadoop-0.20 hadoop-0.20-conf-pseudo
安装好这几台主机的Hadoop环境之后,就要对它们进行分布式运行模式的部署了,首先是设置它们之间的互联。
Hadoop环境中的互联是指各主机之间网络畅通,机器名与IP地址之间解析正常,可以从任一主机ping通其它主机的主机名。注意,这里指的是主机名,即在Hadoop-01主机上可以通过命令ping Hadoop-02来ping通Hadoop-02主机(同理,要求这几台主机都能相互Ping通各自的主机名)。可以通过在各主机的/etc/hosts文件来实现,具体设置如下:
sudo vi /etc/hosts
127.0.0.1 localhost
10.x.253.201 hadoop-01 hadoop-01
10.x.253.202 hadoop-02 hadoop-02
10.x.253.203 hadoop-03 hadoop-03
10.x.253.204 hadoop-04 hadoop-04
10.x.3.30 firehare-303 firehare-303
将每个主机的hosts文件都改成上述设置,这样就实现了主机间使用主机名互联的要求。
注:如果深究起来,并不是所有的主机都需要知道Hadoop环境中其它主机主机名的。其实只是作为主节点的主机(如NameNode、JobTracker),需要在该主节点hosts文件中加上Hadoop环境中所有机器的IP地址及其对应的主机名,如果该台机器作Datanode用,则只需要在hosts文件中加上本机和主节点机器的IP地址与主机名即可(至于JobTracker主机是否也要同NameNode主机一样加上所有机器的IP和主机名,本人由于没有环境,不敢妄言,但猜想是要加的,如果哪位兄弟有兴趣,倒是不妨一试)。在这里只是由于要作测试,作为主节点的主机可能会改变,加上本人比较懒,所以就全加上了。:)
注意2:ubuntu 原有的 /etc/hosts 文件中有将本机计算机名解析为 127.0.1.1 的字段,例如:
127.0.1.1 hadoop-01
请务必删除,否则会由于绑定 ip 不正确导致namenode和jobtracker无法连接的问题。
如果各个主机使用 dhcp 动态分配地址且不具有网络管理员权限,或者由于 /etc/hosts 文件的修改量过大,对于同一子网中的主机可以通过架设一个 WINS 服务或使用网络中有的 WINS 服务来解决互联问题。相关的包可以通过运行 tasksel 命令,安装 samba client 包获得,安装之后还需要修改 /etc/samba/smb.conf 架设或设置 WINS 服务,并修改 /etc/nsswitch.conf 添加机器名的解析方式。
Hadoop要求所有机器上hadoop的部署目录结构要相同,并且都有一个相同用户名的帐户。由于这里采用的是Cloudera发布的Hadoop包,所以并不需要这方面的设置,大家了解一下即可。
在 Hadoop 分布式环境中,主节点(NameNode、JobTracker) 需要通过 SSH 来启动和停止从节点(DataNode、TeskTracker)上的各类进程。因此需要保证环境中的各台机器均可以通过 SSH 登录访问,并且主节点用 SSH 登录从节点时,不需要输入密码,这样主节点才能在后台自如地控制其它结点。可以将各台机器上的 SSH 配置为使用无密码公钥认证方式来实现。 Ubuntu上的SSH协议的开源实现是OpenSSH, 缺省状态下是没有安装的,如需使用需要进行安装。
安装OpenSSH很简单,只需要下列命令就可以把openssh-client和openssh-server给安装好:
sudo apt-get install ssh
首先在Hadoop-01机器上执行以下命令:
hadoop@hadoop-01:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/hadoop/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):(在这里直接回车)
Enter same passphrase again:(在这里直接回车)
Your identification has been saved in /home/hadoop/.ssh/id_rsa.
Your public key has been saved in /home/hadoop/.ssh/id_rsa.pub.
The key fingerprint is:
9d:42:04:26:00:51:c7:4e:2f:7e:38:dd:93:1c:a2:d6 hadoop@hadoop-01
上述命令将为主机hadoops-01上的当前用户hadoop生成其密钥对,该密钥对被保存在/home/hadoop/.ssh/id_rsa文件中,同时命令所生成的证书以及公钥也保存在该文件所在的目录中(在这里是:/home/hadoop/.ssh),并形成两个文件 id_rsa,id_rsa.pub。然后将 id_rsa.pub 文件的内容复制到每台主机(其中包括本机hadoop-01)的/home/hadoop/.ssh/authorized_keys文件的尾部,如果该文件不存在,可手工创建一个。
注意:id_rsa.pub 文件的内容是长长的一行,复制时不要遗漏字符或混入了多余换行符。
从 hadoop-01 分别向 hadoop-01, hadoop-04, firehare-303 发起 SSH 连接请求,确保不需要输入密码就能 SSH 连接成功。注意第一次 SSH 连接时会出现类似如下提示的信息:
The authenticity of host [hadoop-01] can't be established. The key fingerprint is:
c8:c2:b2:d0:29:29:1a:e3:ec:d9:4a:47:98:29:b4:48 Are you sure you want to continue connecting (yes/no)?
请输入 yes, 这样 OpenSSH 会把连接过来的这台主机的信息自动加到 /home/hadoop/.ssh/know_hosts 文件中去,第二次再连接时,就不会有这样的提示信息了。
Hadoop的JAVA_HOME是在文件/etc/hadoop/conf/hadoop-env.sh中设置,具体设置如下:
sudo vi /etc/hadoop/conf/hadoop-env.sh
export JAVA_HOME=&/usr/lib/jvm/java-6-sun&
Hadoop的核心配置文件是/etc/hadoop/conf/core-site.xml,具体配置如下:
&?xml version=&1.0&?&
&?xml-stylesheet type=&text/xsl& href=&configuration.xsl&?&
&configuration&
&property&
&name&fs.default.name&/name&
&value&hdfs://localhost:8020&/value&
&value&hdfs://hadoop-01:8020&/value&
&/property&
&property&
&name&hadoop.tmp.dir&/name&
&value&/var/lib/hadoop-0.20/cache/${user.name}&/value&
&/property&
&/configuration&
Hadoop的分布式环境设置主要是通过文件/etc/hadoop/conf/hdfs-site.xml来实现的,具体配置如下:
&?xml version=&1.0&?&
&?xml-stylesheet type=&text/xsl& href=&configuration.xsl&?&
&configuration&
&property&
&name&dfs.replication&/name&
&value&1&/value&
&value&3&/value&
&/property&
&property&
&name&dfs.permissions&/name&
&value&false&/value&
&/property&
&property&
&!-- specify this so that running 'hadoop namenode -format' formats the right dir --&
&name&dfs.name.dir&/name&
&value&/var/lib/hadoop-0.20/cache/hadoop/dfs/name&/value&
&/property&
&/configuration&
Hadoop的分布式计算是采用了Map/Reduce算法,该算法环境的设置主要是通过文件/etc/hadoop/conf/mapred-site.xml来实现的,具体配置如下:
&?xml version=&1.0&?&
&?xml-stylesheet type=&text/xsl& href=&configuration.xsl&?&
&configuration&
&property&
&name&mapred.job.tracker&/name&
&value&localhost:8021&/value&
&value&hadoop-01:8021&/value&
&/property&
&/configuration&
首先设置主节点,编辑/etc/hadoop/conf/masters文件,如下所示:
然后是设置从节点,编辑/etc/hadoop/conf/slaves文件,如下所示:
firehare-303
从节点上的Hadoop设置很简单,只需要将主节点上的Hadoop设置,复制一份到从节点上即可。
scp -r /etc/hadoop/conf hadoop-02:/etc/hadoop
scp -r /etc/hadoop/conf hadoop-03:/etc/hadoop
scp -r /etc/hadoop/conf hadoop-04:/etc/hadoop
scp -r /etc/hadoop/conf firehare-303:/etc/hadoop
在启动Hadoop之前还要做最后一个准备工作,那就是格式化分布式文件系统,这个只需要在主节点做就行了,具体如下:
/usr/lib/hadoop-0.20/bin/hadoop namenode -format
启动Hadoop可以通过以下命令来实现:
/usr/lib/hadoop-0.20/bin/start-all.sh
注意:该命令是没有加sudo的,如果加了sudo就会提示出错信息的,因为root用户并没有做无验证ssh设置。以下是输出信息,注意hadoop-03是故意没接的,所以出现No route to host信息。
hadoop@hadoop-01:~$ /usr/lib/hadoop-0.20/bin/start-all.sh
namenode running as process 4836. Stop it first.
hadoop-02: starting datanode, logging to /usr/lib/hadoop-0.20/bin/../logs/hadoop-hadoop-datanode-hadoop-02.out
hadoop-04: starting datanode, logging to /usr/lib/hadoop-0.20/bin/../logs/hadoop-hadoop-datanode-hadoop-04.out
firehare-303: starting datanode, logging to /usr/lib/hadoop-0.20/bin/../logs/hadoop-hadoop-datanode-usvr-303b.out
hadoop-03: ssh: connect to host hadoop-03 port 22: No route to host
hadoop-01: secondarynamenode running as process 4891. Stop it first.
jobtracker running as process 4787. Stop it first.
hadoop-02: starting tasktracker, logging to /usr/lib/hadoop-0.20/bin/../logs/hadoop-hadoop-tasktracker-hadoop-02.out
hadoop-04: starting tasktracker, logging to /usr/lib/hadoop-0.20/bin/../logs/hadoop-hadoop-tasktracker-hadoop-04.out
firehare-303: starting tasktracker, logging to /usr/lib/hadoop-0.20/bin/../logs/hadoop-hadoop-tasktracker-usvr-303b.out
hadoop-03: ssh: connect to host hadoop-03 port 22: No route to host
这样Hadoop就正常启动了!
正常启动之后,可以在 master 主机上通过以下网址检视 hadoop 运行状况:
检视分布式文件系统状况,其中 Live Nodes 字段应当显示为正常运行并连接到 namenode 服务器的 datanode 个数。
检视集群运转状况,其中 Nodes 字段应当显示正常运行并连接到 jobtracker 的 task tracker 个数。
通过安装 cloudera 提供的服务包,可以实现每次开机之后,hadoop 服务自动启动。
首先,在 master 对应的机器上安装 hadoop-0.20-jobtracker 和 hadoop-0.20-namenode 包。
sudo apt-get install hadoop-0.20-jobtracker hadoop-0.20-namenode
在 slave 对应机器上安装 hadoop-0.20-tasktracker 和 hadoop-0.20-datanode 包
sudo apt-get install hadoop-0.20-tasktracker hadoop-0.20-datanode
重新启动这些机器,可以通过上节提到的两个网址检视系统运行状况。
Hadoop架设好了,接下来就是要对其进行测试,看看它是否能正常工作,具体代码如下:
hadoop@hadoop-01:~$ hadoop-0.20 fs -mkdir input
hadoop@hadoop-01:~$ hadoop-0.20 fs -put /etc/hadoop-0.20/conf/*.xml input
hadoop@hadoop-01:~$ hadoop-0.20 fs -ls input
Found 6 items
-rw-r--r-- 3 hadoop supergroup -11 08:55 /user/hadoop/input/capacity-scheduler.xml
-rw-r--r-- 3 hadoop supergroup 400
08:55 /user/hadoop/input/core-site.xml
-rw-r--r-- 3 hadoop supergroup -11 08:55 /user/hadoop/input/fair-scheduler.xml
-rw-r--r-- 3 hadoop supergroup -11 08:55 /user/hadoop/input/hadoop-policy.xml
-rw-r--r-- 3 hadoop supergroup 536
08:55 /user/hadoop/input/hdfs-site.xml
-rw-r--r-- 3 hadoop supergroup 266
08:55 /user/hadoop/input/mapred-site.xml
hadoop@hadoop-01:~$ hadoop-0.20 jar /usr/lib/hadoop-0.20/hadoop-*-examples.jar grep input output 'dfs[a-z.]+'
10/03/11 14:35:57 INFO mapred.FileInputFormat: Total input paths to process&: 6
10/03/11 14:35:58 INFO mapred.JobClient: Running job: job__0001
10/03/11 14:35:59 INFO mapred.JobClient:
map 0% reduce 0%
10/03/11 14:36:14 INFO mapred.JobClient:
map 33% reduce 0%
10/03/11 14:36:20 INFO mapred.JobClient:
map 66% reduce 0%
10/03/11 14:36:26 INFO mapred.JobClient:
map 66% reduce 22%
10/03/11 14:36:36 INFO mapred.JobClient:
map 100% reduce 22%
10/03/11 14:36:44 INFO mapred.JobClient:
map 100% reduce 100%
10/03/11 14:36:46 INFO mapred.JobClient: Job complete: job__0001
10/03/11 14:36:46 INFO mapred.JobClient: Counters: 19
10/03/11 14:36:46 INFO mapred.JobClient:
Job Counters
10/03/11 14:36:46 INFO mapred.JobClient:
Launched reduce tasks=1
10/03/11 14:36:46 INFO mapred.JobClient:
Rack-local map tasks=4
10/03/11 14:36:46 INFO mapred.JobClient:
Launched map tasks=6
10/03/11 14:36:46 INFO mapred.JobClient:
Data-local map tasks=2
10/03/11 14:36:46 INFO mapred.JobClient:
FileSystemCounters
10/03/11 14:36:46 INFO mapred.JobClient:
FILE_BYTES_READ=100
10/03/11 14:36:46 INFO mapred.JobClient:
HDFS_BYTES_READ=12360
10/03/11 14:36:46 INFO mapred.JobClient:
FILE_BYTES_WRITTEN=422
10/03/11 14:36:46 INFO mapred.JobClient:
HDFS_BYTES_WRITTEN=204
10/03/11 14:36:46 INFO mapred.JobClient:
Map-Reduce Framework
10/03/11 14:36:46 INFO mapred.JobClient:
Reduce input groups=4
10/03/11 14:36:46 INFO mapred.JobClient:
Combine output records=4
10/03/11 14:36:46 INFO mapred.JobClient:
Map input records=315
10/03/11 14:36:46 INFO mapred.JobClient:
Reduce shuffle bytes=124
10/03/11 14:36:46 INFO mapred.JobClient:
Reduce output records=4
10/03/11 14:36:46 INFO mapred.JobClient:
Spilled Records=8
10/03/11 14:36:46 INFO mapred.JobClient:
Map output bytes=86
10/03/11 14:36:46 INFO mapred.JobClient:
Map input bytes=12360
10/03/11 14:36:46 INFO mapred.JobClient:
Combine input records=4
10/03/11 14:36:46 INFO mapred.JobClient:
Map output records=4
10/03/11 14:36:46 INFO mapred.JobClient:
Reduce input records=4
10/03/11 14:36:46 WARN mapred.JobClient: Use GenericOptionsParser for parsing the arguments. Applications should implement Tool for the same.
10/03/11 14:36:46 INFO mapred.FileInputFormat: Total input paths to process&: 1
10/03/11 14:36:46 INFO mapred.JobClient: Running job: job__0002
10/03/11 14:36:47 INFO mapred.JobClient:
map 0% reduce 0%
10/03/11 14:36:56 INFO mapred.JobClient:
map 100% reduce 0%
10/03/11 14:37:08 INFO mapred.JobClient:
map 100% reduce 100%
10/03/11 14:37:10 INFO mapred.JobClient: Job complete: job__0002
10/03/11 14:37:11 INFO mapred.JobClient: Counters: 18
10/03/11 14:37:11 INFO mapred.JobClient:
Job Counters
10/03/11 14:37:11 INFO mapred.JobClient:
Launched reduce tasks=1
10/03/11 14:37:11 INFO mapred.JobClient:
Launched map tasks=1
10/03/11 14:37:11 INFO mapred.JobClient:
Data-local map tasks=1
10/03/11 14:37:11 INFO mapred.JobClient:
FileSystemCounters
10/03/11 14:37:11 INFO mapred.JobClient:
FILE_BYTES_READ=100
10/03/11 14:37:11 INFO mapred.JobClient:
HDFS_BYTES_READ=204
10/03/11 14:37:11 INFO mapred.JobClient:
FILE_BYTES_WRITTEN=232
10/03/11 14:37:11 INFO mapred.JobClient:
HDFS_BYTES_WRITTEN=62
10/03/11 14:37:11 INFO mapred.JobClient:
Map-Reduce Framework
10/03/11 14:37:11 INFO mapred.JobClient:
Reduce input groups=1
10/03/11 14:37:11 INFO mapred.JobClient:
Combine output records=0
10/03/11 14:37:11 INFO mapred.JobClient:
Map input records=4
10/03/11 14:37:11 INFO mapred.JobClient:
Reduce shuffle bytes=0
10/03/11 14:37:11 INFO mapred.JobClient:
Reduce output records=4
10/03/11 14:37:11 INFO mapred.JobClient:
Spilled Records=8
10/03/11 14:37:11 INFO mapred.JobClient:
Map output bytes=86
10/03/11 14:37:11 INFO mapred.JobClient:
Map input bytes=118
10/03/11 14:37:11 INFO mapred.JobClient:
Combine input records=0
10/03/11 14:37:11 INFO mapred.JobClient:
Map output records=4
10/03/11 14:37:11 INFO mapred.JobClient:
Reduce input records=4
不难看出,上述测试已经成功,这说明Hadoop部署成功,能够在上面进行Map/Reduce分布性计算了。
安装 netbeans:
sudo apt-get install netbeans
安装并配置 hadoop 插件可以参见:比特客户端
您的位置:
详解大数据
详解大数据
详解大数据
详解大数据
突破社区版 Hadoop各商业发行版比较
  的发行版除了社区的Apache hadoop外,cloudera,hortonworks,mapR,,,,等等都提供了自己的商业版本。商业版主要是提供了专业的技术支持,这对一些大型尤其重要。每个发行版都有自己的一些特点,本文就各发行版做简单介绍。
  2008 年成立的 Cloudera 是最早将 Hadoop 商用的公司,为合作伙伴提供 Hadoop 的商用解决,主要是包括支持,咨询服务,培训。2009年hadoop的创始人 Doug Cutting也任职于 Cloudera 公司。Cloudera产品主要为CDH,Cloudera Manager,Cloudera Support。CDH是Cloudera的hadoop发行版,完全开源,比Apache hadoop在兼容性,安全性,稳定性上有增强。Cloudera Manager是集群的软件分发及管理监控平台,可以在几个小时内部署好一个hadoop集群,并对集群的节点及服务进行实时监控。Cloudera Support即是对hadoop的技术支持。cloudera的标价为每年每个节点4000美元。
  2011年成立的Hortonworks是与硅谷风投公司Benchmark Capital合资组建的公司。公司成立之初吸纳了大约25名至30名专门研究Hadoop的雅虎工程师,上述工程师均在2005年开始协助雅虎开发Hadoop,这些工程师贡献了hadoop 80%的代码。。雅虎工程副总裁、雅虎Hadoop开发团队负责人Eric Baldeschwieler出任Hortonworks的首席执行官。Hortonworks 的主打产品是Hortonworks Data Platform (HDP),也同样是100%开源的产品,HDP除了常见的项目外还包含了Ambari,一款开源的安装和管理系统。HCatalog,一个元数据管理系统。
  HDP的Datasheet中描述的版本特点是:
  集成和测试 C HDP包括稳定版本的Apache Hadoop的所有关键组件,集成和测试封装。
  安装方便C HDP包括一个现代化的,直观的用户界面的安装和配置工具。
  管理和监控服务 C HDP包括直观的仪表板,为监测集群和建立警示。
  数据集成服务 C HDP包括Talend平台,领先的开源整合工具,轻松连接Hadoop集群,而无需编写Hadoop代码的数据工具。
  元数据服务 C HDP包括的Apache HCatalog,从而简化了Hadoop的应用程序之间和Hadoop和其他数据系统之间的数据共享。
  高可用性C HDP与成熟的高可用性解决方案的无缝集成。
  定价以集群为基础,每10个节点每年为12500美元。
  cloudera和hortonworks均是在不断的提交代码完善Apache hadoop,而2009年成立的MapR公司在Hadoop领域显得有点特立独行,它提供了一款独特的发行版 。Hadoop在性能(在当前Hadoop的设计中,所有的meta data操作都要通过集中式的Namenode来进行,Namenode有可能是性能的瓶颈;M/R 应用程序需要通过DataNode来访问HDFS, 这就涉及到格外的进程切换和网络传输开销),可靠性与扩展性(namenode,jobtracker单点问题),企业级应用上的弱点(比如完全可读写的文件系统,snapshot,mirror等等)各大厂商均知,MapR则认为,Hadoop的这些缺陷来自于其架构设计本身,小修小补不能解决问题。他们选择了艰难得多的路: 用新架构重写HDFS,同时在API级别,和目前的Hadoop 发行版保持兼容。这家2009年成立的创业公司,在蛰伏了两年之后,终于一鸣惊人,大放异彩。他们成功的“构建一个HDFS的私有替代品,这个替代品比当前的开源版本快三倍,自带功能,而且支持无Namenode单点故障(SPOF),并且在API上和兼容,所以可以考虑将其作为替代方案。” mapR版本不再需要单独的namenode机器,元数据分散在集群中,也类似数据默认三份。也不再需要用来协助namenode做元数据备份,提供了机器使用率。还有个重要的特点的可以使用直接访问hdfs,提供了与旧有应用的兼容性。镜像功能也很适合做数据备份,而且支持跨的镜像,快照功能对于数据的恢复作用明显。据报道mapR标价也为每年每个节点4000美元。
  mapR有免费和商业两个版本,免费版本在功能上有所缩减。
  EMC的Greenplum HD是基于mapR版本二次开发改造而成,特点同mapR。
  IBM在去年5月推出了InfoSphere BigInsights软件。该软件包括Apache Hadoop发行版、面向MapReduce编程的Pig编程语言、针对IBM的DB2的连接件以及IBM BigSheets,后者是一种基于的、使用电子表格隐喻(spreadsheet-metaphor)的界面,用于探究和分析Hadoop里面的数据。IBM在平台管理,安全认证,作业调度算法,与DB2及netezza的集成上做了增强。从IBM信息管理总经理朱辉下面这句话就可以看出IBM对于biginsights的定位:BigInsights并没有替代OLAP(Online Analytical Processing)或OLTP(Online Transaction Processing)应用程序,但它可以整合其中,用于“过滤大量原始数据并合并结果,将结果以结构化数据的形式保存在DBMS或数据仓库中”。
  传统的硬件厂商,华为,Intel也提供hadoop的版本
  Intel 的商业版本,主要是强调其能提供全面的软硬件解决方案设计,针对硬件具有更好的性能优化,以及提供集群管理工具和安装工具简化了 Hadoop 的安装和配置,能够提供项目规划到实施各阶段专业的咨询服务,实际中Intel版本貌似动力不足。
  华为在硬件上具有天然的优势,在网络,,PC机等都有很强的硬件实力。华为的hadoop版本基于自研的Hadoop HA平台,构建NameNode、JobTracker、HiveServer的HA功能,进程故障后系统自动Failover,无需人工干预,这个也是对hadoop的小修补,远不如mapR解决的彻底。华为在hadoop社区中的Contributor和committer也是国内最多的,算是国内技术实力较强的公司。
  各发行版大事记
   :宣布与EMC合作,EMC GREENPLUM HD 提供hadoop基础版本。
  :宣布与rainstor合作,
  :宣布与informatica合作
  :宣布成为Amazon Elastic MapReduce的计算选项
  2012-06-:成为 App Engine的计算引擎
  HortonWorks
  :宣布将于从雅虎分拆出来的Hortonworks合作开发,在Apache Hadoop上实现搭建Windows Server以及Windows Azure平台。Hortonworks作为微软的战略合作伙伴将会借助自己在此领域的专长帮助最大化将Hadoop集成到微软的产品之中。
  :Hortonworks,Apache Hadoop项目的一个主要贡献者,将分发Informatica HParser Community Edition。为Hadoop推出Informatica HParser。作为业界首个针对Hadoop环境的数据解析转换解决方案,Informatica HParser利用MapReduce框架的并行性以有效地在Hadoop中把非结构化复杂数据变成一个结构化或半结构化的格式。
   在今年3月初的Strate大会上,开源数据集成软件厂商Talend宣布与Hortonworks达成协议,将合作把Talend开源数据集成工具带入Apache
   :TeraData就在周二宣布将与Hortonworks合作,并为客户提供产品和服务。
  :Hortonworks宣布将与合作并推出一套运行于HDP高可靠性模式的工具。VMware的vSphere可监测Hadoop的NameNode和JobTracker服务。如果服务出现错误时,vSphere可重定向操作实时备份服务,以保持集群的运行。
  Cloudera:
  日 C宣布与Cloudera新的合作伙伴关系
  日 C SGI和Cloudera联合宣布,他们的公司已经签署协议,为SGI分发Cloudera的软件预装在SGI Hadoop集群中。
  :今年1月发布的大数据机( Big Data Appliance)将甲骨文-分布式计算平台与Cloudera的Apache Hadoop发行版、Cloudera管理器管理控制台、R分析软件的开源发行版以及甲骨文NoSQL数据库结合起来。甲骨文还包括连接件,因而让数据能够在大数据机与甲骨文Exadata或传统的甲骨文数据库部署环境之间来回传送。
  :IBM宣布将Cloudera作为Hadoop商用版本的首选大数据平台。
  除了mapR以外的发行版。基本都是在Apache hadoop上做了略微改进,只有mapR与Apache hadoop有较大区别,以下表格是一些功能上的区别,EMC Greenplum HD 是基于mapR所以功能同mapR。
  http://www.slideshare.net/mcsrivas/design-scale-and-performance-of-maprs-distribution-for-hadoop
  //88ca09aa330003wz.html
  //88ca09aa.html
  //88ca09aa330003zv.html
  //88ca09aa330003zz.html
  https://issues.apache.org/jira/browse/HDFS-347
[ 责任编辑:杨瑗嘉 ]
为更好推动开放架构发展,打造开…
甲骨文的云战略已经完成第一阶段…
软件信息化周刊
比特软件信息化周刊提供以数据库、操作系统和管理软件为重点的全面软件信息化产业热点、应用方案推荐、实用技巧分享等。以最新的软件资讯,最新的软件技巧,最新的软件与服务业内动态来为IT用户找到软捷径。
商务办公周刊
比特商务周刊是一个及行业资讯、深度分析、企业导购等为一体的综合性周刊。其中,与中国计量科学研究院合力打造的比特实验室可以为商业用户提供最权威的采购指南。是企业用户不可缺少的智选周刊!
比特网络周刊向企业网管员以及网络技术和产品使用者提供关于网络产业动态、技术热点、组网、建网、网络管理、网络运维等最新技术和实用技巧,帮助网管答疑解惑,成为网管好帮手。
服务器周刊
比特服务器周刊作为比特网的重点频道之一,主要关注x86服务器,RISC架构服务器以及高性能计算机行业的产品及发展动态。通过最独到的编辑观点和业界动态分析,让您第一时间了解服务器行业的趋势。
比特存储周刊长期以来,为读者提供企业存储领域高质量的原创内容,及时、全面的资讯、技术、方案以及案例文章,力求成为业界领先的存储媒体。比特存储周刊始终致力于用户的企业信息化建设、存储业务、数据保护与容灾构建以及数据管理部署等方面服务。
比特安全周刊通过专业的信息安全内容建设,为企业级用户打造最具商业价值的信息沟通平台,并为安全厂商提供多层面、多维度的媒体宣传手段。与其他同类网站信息安全内容相比,比特安全周刊运作模式更加独立,对信息安全界的动态新闻更新更快。
新闻中心热点推荐
新闻中心以独特视角精选一周内最具影响力的行业重大事件或圈内精彩故事,为企业级用户打造重点突出,可读性强,商业价值高的信息共享平台;同时为互联网、IT业界及通信厂商提供一条精准快捷,渗透力强,覆盖面广的媒体传播途径。
云计算周刊
比特云计算周刊关注云计算产业热点技术应用与趋势发展,全方位报道云计算领域最新动态。为用户与企业架设起沟通交流平台。包括IaaS、PaaS、SaaS各种不同的服务类型以及相关的安全与管理内容介绍。
CIO俱乐部周刊
比特CIO俱乐部周刊以大量高端CIO沙龙或专题研讨会以及对明星CIO的深入采访为依托,汇聚中国500强CIO的集体智慧。旨为中国杰出的CIO提供一个良好的互融互通 、促进交流的平台,并持续提供丰富的资讯和服务,探讨信息化建设,推动中国信息化发展引领CIO未来职业发展。
IT专家新闻邮件长期以来,以定向、分众、整合的商业模式,为企业IT专业人士以及IT系统采购决策者提供高质量的原创内容,包括IT新闻、评论、专家答疑、技巧和白皮书。此外,IT专家网还为读者提供包括咨询、社区、论坛、线下会议、读者沙龙等多种服务。
X周刊是一份IT人的技术娱乐周刊,给用户实时传递I最新T资讯、IT段子、技术技巧、畅销书籍,同时用户还能参与我们推荐的互动游戏,给广大的IT技术人士忙碌工作之余带来轻松休闲一刻。
微信扫一扫
关注Chinabyte

我要回帖

更多关于 cloudera hadoop 认证 的文章

 

随机推荐