`
独自等待戈多
  • 浏览: 36128 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

为HBase-0.90.2构建Hadoop-0.20.X

阅读更多

以下翻译自《Building an Hadoop 0.20.x version for HBase 0.90.2》(2011年10月20日),作者是Michael G. Noll,原文地址:

http://www.michael-noll.com/blog/2011/04/14/building-an-hadoop-0-20-x-version-for-hbase-0-90-2/

 

目前,Hadoop-0.20.2是Apache Hadoop发布的最新的稳定版本,可用于生产环境的版本(0.12或者0.22都不是)。不幸的是,Hadoop-0.20.2和最新的HBase稳定版本是不兼容的:如果你在Hadoop-0.20.2之上运行HBase,你会有丢失数据的风险!因此,HBase用户需要构建他们自己的Hadoop-0.20.X版本,如果他们想要在生产集群上运行HBase。这篇文章里,我将描述如何构建兼容HBase-0.90.2的为生产环境准备的Hadoop-0.20.X版本。

 

目录:

1.开始之前

      1.1.使用git(而不是SVN)

      1.2.Hadoop 0.20.2与0.20.203.0

      1.3.讨论了Hadoop,那HBase呢?

      1.4.这篇文章中使用的Hadoop-0.20-append版本

2.背景

      2.1.Hadoop和HBase:选择哪个版本用于生产集群?

      2.2.替代方案

3.一句小心和感谢的话

4.从branch-0.20-append构建Hadoop-0.20-append

      4.1.检索Hadoop-0.20-append源代码

      4.2.Hadoop-0.20.2与Hadoop-0.20-append的比较

      4.3.构建过程

            4.3.1.构建命令

            4.3.2.构建测试失败,怎么办?

            4.3.3.找到构建输出(Hadoop Jar文件)

      4.4.安装Hadoop-0.20-append到你的Hadoop集群

            4.4.1.如果你运行Hadoop-0.20.2,重命名构建的Jar文件

5.维护你自己的Hadoop-0.20-append版本

6.总结

 

2011年10月17日更新:对于Hadoop-0.20.205.0版本(beta测试版),Hadoop已经支持HDFS的append/hsynch/hflush,因此兼容HBase-0.90.X版本。你仍然可以按照这篇文章里描述的指令构建你自己的Hadoop版本。
 

1.开始之前

1.1.使用git(而不是SVN)

在接下来的章节,我将使用git作为版本控制系统,来操作Hadoop源代码。为何?因为在我看来git比SVN好用的多,所以请谅解。

如果你使用SVN,欢迎修改以下描述的git命令。你可以为本文撰写关于SVN使用经验的评论,以便其他SVN用户也能从中获益。

 

1.2.Hadoop 0.20.2与0.20.203.0

2011年6月11日更新:在这篇文章发表后的几个星期,Hadoop-0.20.203.0和HBase-0.90.3就发布了。虽然文章里说的主要是Hadoop-0.20.2,构建指令应该同样适用于Hadoop-0.20.203.0,但我还没时间亲自验证这一点。如果你在构建过程中遇到了任何问题,欢迎在文章最后留下评论。

 

1.3.讨论了Hadoop,那HBase呢?

在这篇文章里,我集中在构建兼容HBase-0.90.2的Hadoop-0.20-X版本中(参见下文的阴影部分)。在稍后的文章里,我将描述如何在本文构建的Hadoop-0.20.X版本基础上,正确的安装和配置HBase-0.90.2。

 

1.4.这篇文章中使用的Hadoop-0.20-append版本

以下指令使用的是最新的branch-0.20-append。撰写本文时,git的最新提交是df0d79cc,而SVN的是1057313。作为参考,对应的提交信息是“HDFS-1554。支持recoverLease的新的语义。由Hairong Kuang提交。”在2011年1月10日。

commit df0d79cc2b09438c079fdf10b913936492117917
Author: Hairong Kuang
Date: Mon Jan 10 19:01:36 2011 +0000

HDFS-1554. New semantics for recoverLease. Contributed by Hairong Kuang.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20-append@1057313 13f79535-47bb-0310-9956-ffa450edef68

这就是说,构建步骤在branch-0.20-append之后的任何版本都应该有效。

 

2.背景

2.1.Hadoop和HBase:选择哪个版本用于生产集群?

Hadoop-0.20.2是Apache Hadoop发布的最新的稳定版本,可用于生产环境的版本。不幸的是,Hadoop-0.20.2和最新的HBase稳定版本是不兼容的,比如HBase-0.90.2:如果你在未修改的Hadoop-0.20.2之上运行HBase-0.90.2,你很有可能丢失数据!

以下内容摘自HBase的文档,略有改动:

HBase-0.90.2只能在Hadoop 0.20.X之上运行。它无法在Hadoop-0.21.x (0.22.x也不行)上运行。HBase会丢失数据,除非它运行在拥有持久化同步(durable sync)的HDFS之上。当前只有branch-0.20-append拥有此属性。目前官方没有发布任何此分支的版本,因此你必须在这个分支的顶端构建你自己的Hadoop。

这里是快速总览:

Hadoop版本 HBase版本 兼容?
0.20.2版本 0.90.2
0.20-append 0.90.2
0.21.0版本 0.90.2
0.22.X开发中 0.90.2

 

说实话,在为Hadoop-0.20.X和HBase-0.90.2联姻的过程中,我花了相当长的时间在要求、依赖关系、工程状态等方面加快速度。因此我想通过这篇文章来回馈Hadoop和HBase社区。

 

2.2.替代方案

使HBase在Hadoop上运行的另一种方式——而不是通过构建自己的Hadoop-0.20-append——是使用Cloudera的CDH3。CDH3包含了Hadoop-0.20-append需要的持久化同步补丁,即可让Hadoop-0.20.X和HBase-0.90.2兼容。

 

3.一句警告和感谢的话

首先,警告:虽然在以下章节中我已经非常谨慎的编写和描述构建步骤,我还是不能给你任何保证。如果有疑问,通过HBase的邮箱列表加入我们的讨论。

第二,这里我只是将碎片拼凑在了一起,主要任务是由他人完成的。因此,我想感谢St.Ack,由于他在我准备这篇文章时候的重要反馈,也感谢来自他和所有邮箱列表中的HBase开发者们的帮助。非常感谢!

 

4.从branch-0.20-append构建Hadoop-0.20-append

4.1.检索Hadoop-0.20-append源代码

Hadoop-0.20.X没有像0.21.0以及之后的版本那样,拆分为Common、HDFS和MapReduce的组件。因而在Hadoop的公共代码库中你可以找到所有需要的代码。

所以第一步是检出Hadoop的公共代码库。

 

$ git clone http://git.apache.org/hadoop-common.git
$ cd hadoop-common
  

然而,git指令只检出了最新的Hadoop Common,即Hadoop Common开发的前沿。而我们只对代码树的Hadoop-0.20-append感兴趣,即分支branch-0.20-append。因为git默认不会从一个复制的代码库下载远端的分支,我们必须明确的指示它这样做:

 

# 检出Hadoop-0.20-append分支
# 只检出master tree (SVN的命令是trunk).
$ git checkout -t origin/branch-0.20-append
Branch branch-0.20-append set up to track remote branch branch-0.20-append from origin.
Switched to a new branch 'branch-0.20-append'
  

4.2.Hadoop-0.20.2与Hadoop-0.20-append的比较

到现在为止,你也许会问自己Hadoop的0.20.2版本和它的扩展分支到底有何分别。这就是答案:Hadoop-0.20-append分支实际上是Hadoop-0.20.2的超集。换句话说,Hadoop-0.20.2版本中没有哪一个“真正的”提交不在Hadoop-0.20-append里。这意味着Hadoop-0.20-append支持所有Hadoop-0.20.2版本的特性,棒极了!

运行以下git命令来验证这一点:

 

$ git show-branch release-0.20.2 branch-0.20-append
! [release-0.20.2] Hadoop 0.20.2 release
 * [branch-0.20-append] HDFS-1554. New semantics for recoverLease. Contributed by Hairong Kuang.
--
 * [branch-0.20-append] HDFS-1554. New semantics for recoverLease. Contributed by Hairong Kuang.
 * [branch-0.20-append^] HDFS-1555. Disallow pipelien recovery if a file is already being lease recovered. Contributed by Hairong Kuang.
 * [branch-0.20-append~2] Revert the change made to HDFS-1555: merge -c -1056483 https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20-append
 * [branch-0.20-append~3] HDFS-1555. Disallow pipeline recovery if a file is already being lease recovered. Contributed by Hairong Kuang.
[...]
 * [branch-0.20-append~50] JDiff output for release 0.20.2
 * [branch-0.20-append~51] HADOOP-1849. Merge -r 916528:916529 from trunk to branch-0.20.
+  [release-0.20.2] Hadoop 0.20.2 release
+  [release-0.20.2^] Hadoop 0.20.2-rc4
+* [branch-0.20-append~52] Prepare for 0.20.2-rc4
 

如你所见,Hadoop-0.20.2版本只有两个提交不在branch-0.20-append,分别叫做“Hadoop 0.20.2 release”和“Hadoop 0.20.2-rc4”。这两个提交都是简单的提交标记,即它们只是用作版本管理,而不会对Hadoop的源代码进行任何改动。

 

4.3.构建过程

4.3.1.构建命令

首先,我们要创建build.properties文件(见完整说明)。

这是我的文件的内容:

 

#这个很重要
resolvers=internal
#可以修改这个为你认为合适的数值
version=0.20-append-for-hbase
project.version=${version}
hadoop.version=${version}
hadoop-core.version=${version}
hadoop-hdfs.version=${version}
hadoop-mapred.version=${version}

 

build.properties文件中的“version”键同样决定着生成的Hadoop Jar文件的名称。如果,你设置“version”为“0.20-append-for-hbase”,构建流程将生成名称为hadoop-core-0.20-append-for-hbase.jar的文件。基本上,你可以使用任何你喜欢的版本标记(当然如果它有意义的话更有帮助)。
  

build.properties文件必须被放在(或者可见)hadoop-common顶层目录下,类似/hadoop-common/build.properties。你既可以直接放置文件,也可以按照建议的方法,你将文件放置在一个父文件夹,然后创建一个它的快捷方式。后者更加方便,当你同样检出了Hadoop的子项目hadoop-hdfs和hadoop-mapreduce的代码库,因而想为这三个子项目使用同一个build.properties文件的时候。

 

$ pwd
/your/path/to/hadoop-common

# 创建和编辑build.properties文件
$ vi ../build.properties

# 创建它的系统链接
$ ln -s ../build.properties build.properties
 

现在我们已经准备好用ant从源代码编译Hadoop了。 我用的是Git And Hadoop中描述的ant mvn-install命令。构建本身应该只需要几分钟的时间。但是一定要运行ant test(或者仅仅是ant test-core,如果你很懒)需要注意的是测试需要相当长的时间(2小时,以我3年使用时间的MacBook Pro为例)。

 

# 明确你检出的是branch-0.20-append的源代码
$ git checkout branch-0.20-append

# 执行构建过程
$ ant mvn-install

# 可选:执行完全测试,或者仅执行核心测试
$ ant test
$ ant test-core 

 


如果你想重新运行构建或者构建测试:默认的,ant mvn-install输出构建结果到$HOME/.m2/repository。你重新编译的时候可能想删除$HOME/.m2/repository下上次的构建结果,例如通过rm -rf $HOME/.m2/repository。你可能还想执行ant clean-cache。从Git And Hadoop了解更多细节。
 

 

4.3.2.构建测试失败,怎么办?

现在到了更加细致的部分:如果你通过ant test执行构建测试,你会发现构建测试总是失败!一致的错误报告是TestFileAppend4,且被记录到build/test/TEST-org.apache.hadoop.hdfs.TestFileAppend4.txt文件中。下面是测试输出的简短摘录:

 

2011-04-06 09:40:28,666 INFO  ipc.Server (Server.java:run(970)) - IPC Server handler 5 on 47574, call append(/bbw.test, DFSClient_1066000827) from 127.0.0.1:45323: error: org.apache.hadoop.hdfs.protocol.AlreadyBeingCreatedException: failed to create file /bbw.test for DFSClient_1066000827 on client 127.0.0.1, because this file is already being created by DFSClient_-95621936 on 127.0.0.1
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.recoverLeaseInternal(FSNamesystem.java:1202)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.startFileInternal(FSNamesystem.java:1054)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.appendFile(FSNamesystem.java:1221)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.append(NameNode.java:396)
        [...]
        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:955)
2011-04-06 09:40:28,667 INFO  hdfs.TestFileAppend4 (TestFileAppend4.java:recoverFile(161)) - Failed open for append, waiting on lease recovery

[...]
Testcase: testRecoverFinalizedBlock took 5.555 sec
	Caused an ERROR
No lease on /testRecoverFinalized File is not open for writing. Holder DFSClient_1816717192 does not have any open files.
org.apache.hadoop.hdfs.server.namenode.LeaseExpiredException: No lease on /testRecoverFinalized File is not open for writing. Holder DFSClient_1816717192 does not have any open files.
	at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkLease(FSNamesystem.java:1439)
        [...]
	at org.apache.hadoop.hdfs.TestFileAppend4$1.run(TestFileAppend4.java:636)

 

万幸的是,这个错误并不意味着构建无法执行。我们知道这是branch-0.20-append单元测试的问题(见St.Ack对HBASE-3258的评论)。换句话说,这是个人所共知的测试错误,我们可以忽略它。咻!

偶然的,你可能发生构建失败或者构建错误。在我的机器上,举例来说,我也见过以下测试失败:

 

  • org.apache.hadoop.hdfs.server.namenode.TestEditLogRace查看
  • org.apache.hadoop.hdfs.TestMultiThreadedSync查看

我不知道什么会导致这些偶然错误——可能是由于我的机器的问题。仍然在用它。

坦白的讲,我上面的话可能听着不舒服。至少是发生在我身上的。尽管如此,我从HBase邮箱列表收到的反馈说,Hadoop-0.20-append的以上构建过程需要被修正。

 

4.3.3.找到构建输出(Hadoop Jar文件)

默认的,通过ant mvn-install构建的Hadoop Jar文件被放置于$HOME/.m2/repository目录。你可以用以下命令找到Jar文件:

 

$ find $HOME/.m2/repository -name "hadoop-*.jar"

.../repository/org/apache/hadoop/hadoop-examples/0.20-append-for-hbase/hadoop-examples-0.20-append-for-hbase.jar
.../repository/org/apache/hadoop/hadoop-test/0.20-append-for-hbase/hadoop-test-0.20-append-for-hbase.jar
.../repository/org/apache/hadoop/hadoop-tools/0.20-append-for-hbase/hadoop-tools-0.20-append-for-hbase.jar
.../repository/org/apache/hadoop/hadoop-streaming/0.20-append-for-hbase/hadoop-streaming-0.20-append-for-hbase.jar
.../repository/org/apache/hadoop/hadoop-core/0.20-append-for-hbase/hadoop-core-0.20-append-for-hbase.jar

 

4.4.安装Hadoop-0.20-append到你的Hadoop集群

现在剩下的唯一一件事情,就是安装构建的Hadoop-0.20-append到你的集群。这一步非常简单:在你的Hadoop-0.20.2版本安装目录下,用以上创建的文件直接替换Hadoop Jar文件。你还需要在HBase-0.90.2安装目录下,用你创建的文件(如果你按照以上步骤创建,文件名是hadoop-core-0.20-append-for-hbase.jar)替换Hadoop core Jar文件($HBASE_HOME/lib/hadoop-core-0.20-append-r1056497.jar)。

 

因为这一步很重要,这里我再次强调:Hadoop所使用的Hadoop Jar文件和HBase使用的Hadoop jar文件必须匹配!

 

4.4.1.如果你运行Hadoop-0.20.2,重命名构建的Jar文件

2011年6月11日更新:如果你使用的是Hadoop-0.20.203.0版本,这一章节的指令不是必须执行的。

Hadoop-0.20.2版本Jar文件的命名规则是hadoop-VERSION-PACKAGE.jar,如hadoop-0.20.2-examples.jar。以上的构建过程采用不同的命名规则hadoop-PACKAGE-VERSION.jar,如hadoop-examples-0.20-append-for-hbase.jar。因此你可能想重命名以上章节构建的Jar文件,以符合Hadoop-0.20.2版本的命名规则(否则/bin/hadoop脚本无法添加Hadoop core Jar文件到它的CLASSPATH,同时那些Hadoop文档中的命令,如hadoop、jar、hadoop-*-examples.jar、pi 50 1000等也都无法执行)。

 

# 当你在Hadoop安装路径下替换Hadoop Jar文件,
# 你可能想要像这样重命名你的Hadoop-0.20-append Jar文件。
hadoop-examples-0.20-append-for-hbase.jar  --> hadoop-0.20-append-for-hbase-examples.jar
hadoop-test-0.20-append-for-hbase.jar      --> hadoop-0.20-append-for-hbase-test.jar
hadoop-tools-0.20-append-for-hbase.jar     --> hadoop-0.20-append-for-hbase-tools.jar
hadoop-streaming-0.20-append-for-hbase.jar --> hadoop-0.20-append-for-hbase-streaming.jar
hadoop-core-0.20-append-for-hbase.jar      --> hadoop-0.20-append-for-hbase-core.jar

 

与之相反,HBase采用hadoop-PACKAGE-VERSION.jar的规则。因此,当你在$HBASE_HOME/lib目录替换HBase附带的Hadoop core Jar文件时,你可以选择不修改新构建的Hadoop core Jar文件。

 

 

运行HBase-0.90.0或者0.90.1的用户注意:我们创建的Hadoop-0.20-append Jar文件是在branch-0.20-append的基础上,因此使用的RPC版本是43。这在HBase-0.90.2是可用的,但在HBase-0.90.0和0.90.1将出问题。查看HBASE-3520或者St.Ack的评论以获取更多信息。

 

 

5.维护你自己的Hadoop-0.20-append版本

如果你必须将一些额外的补丁集成到Hadoop-0.20.2或者Hadoop-0.20.append(通常是以Hadoop-0.21或者0.22的补丁的形式),你可以创建一个基于你感兴趣的Hadoop版本的本地分支。是的这是以你的名义做出的努力,所以你必须务必权衡利弊这样做。

想象一下,举例来说,你使用基于branch-0.20-append的Hadoop-0.20-append,因为你也想在你的Hadoop集群运行最新稳定版本的HBase。当对你的集群执行基准测试和压力测试的时候,不幸的是你发现一个问题,你可以追踪HDFS-611。有一个可用的补丁(你可能要做一些backport改动),但不是在你运行的Hadoop版本内,即该补丁不包含在branch-0.20-append代码库。

你可以做的是创建一个本地的基于你的Hadoop版本(这里是:branch-0.20-append)的git分支,你就可以集成和测试任何你需要的补丁。清理解,这里我仅描述基本的过程——我不会赘述在你遵照以下步骤的时候,如何才能确保和跟进的Hadoop版本的任何更新保持同步。有许多好用的git介绍,如Git Community Book,可以解释的比我透彻的多。

 

# 在下一步之前,确保我们是在branch-0.20-append的基础上
$ git checkout branch-0.20-append

# 在官方最新版本的branch-0.20-append的基础上创建你的本地分支
$ git checkout -b branch-0.20-append-yourbranch

 

 

确保当前的两个append分支是一致的:

 

# 检验你本地的分支和官方的分支是一致的
$ git show-branch branch-0.20-append branch-0.20-append-yourbranch
! [branch-0.20-append] HDFS-1554. New semantics for recoverLease. Contributed by Hairong Kuang.
 * [branch-0.20-append-yourbranch] HDFS-1554. New semantics for recoverLease. Contributed by Hairong Kuang.
--
+* [branch-0.20-append] HDFS-1554. New semantics for recoverLease. Contributed by Hairong Kuang.

# 还好,它们是一致的

 

 

将补丁应用到你的分支。在下面的例子中,我使用HDFS-611.branch-0.20-append.v1.patch文件,应用HDFS-611补丁的backport到branch-0.20-append。注意这个backport在HDFS-611页面是不存在的——我在HDFS-611的Hadoop-0.20.2版本补丁的基础上创建了它(HDFS-611.branch-20.v6.patch)。

# 应用补丁到你的分支
$ patch -p1 < HDFS-611.branch-0.20-append.v1.patch

# 从补丁添加任何改动或者新增文件到git索引
$ git add src/hdfs/org/apache/hadoop/hdfs/protocol/FSConstants.java \
         src/hdfs/org/apache/hadoop/hdfs/server/datanode/FSDataset.java \
         src/hdfs/org/apache/hadoop/hdfs/server/datanode/FSDatasetAsyncDiskService.java \
         src/test/org/apache/hadoop/hdfs/TestDFSRemove.java

# 从索引提交改动到代码库
$ git commit -m "HDFS-611: Backport of HDFS-611 patch for Hadoop 0.20.2 release"

 

确认你打过补丁的分支比原本的append分支多一次提交:

# 比较你本地append分支和远端分支的历史记录
$ git show-branch branch-0.20-append branch-0.20-append-yourbranch
! [branch-0.20-append] HDFS-1554. New semantics for recoverLease. Contributed by Hairong Kuang.
 * [branch-0.20-append-yourbranch] HDFS-611: Backport of HDFS-611 patch for Hadoop 0.20.2 release
--
 * [branch-0.20-append-yourbranch] HDFS-611: Backport of HDFS-611 patch for Hadoop 0.20.2 release
+* [branch-0.20-append] HDFS-1554. New semantics for recoverLease. Contributed by Hairong Kuang.

# 没错,只是多了一步提交

 

顺便说一句,如果你想看看Hadoop-0.20.2版本,官方branch-0.20-append和你自己打过补丁的branch-0.20-append-yourbranch之间的区别,执行以下git指令:

$ git show-branch release-0.20.2 branch-0.20-append branch-0.20-append-yourbranch

 

6.总结

我希望这篇文章能帮助你构建能在生产环境运行HBase-0.90.2的Hadoop-0.20.X版本。一如既往欢迎你的反馈和评论。

 

*****************

南邮福富实验室

wuxiaochao@live.com

*****************

分享到:
评论

相关推荐

    hbase-0.98.7-hadoop2-bin.tar

    《深入理解HBase:以hbase-0.98.7-hadoop2-bin.tar为例》 HBase,作为Apache软件基金会的重要项目之一,是构建在Hadoop生态系统之上的一款分布式、高性能、列式存储的NoSQL数据库。它为大规模数据集提供了实时读写...

    hadoop-0.20.205.0和hbase-0.90.5,集群和单机 安装配置

    本文将详细介绍如何在三台虚拟机上安装配置Hadoop-0.20.205.0和HBase-0.90.5,包括单机模式和集群模式的安装配置流程。 #### 二、环境准备 首先,我们需要准备三台虚拟机,并安装CentOS-5.7操作系统。这三台虚拟机...

    hbase-2.2.4-bin-for-hadoop3.tar.gz

    特别是针对标题中的“hbase-2.2.4-bin-for-hadoop3.tar.gz”压缩包,它是为了解决官方HBase 2.2.4与Hadoop 2.8.5不兼容的问题而特别编译的版本,专为Hadoop 3.1.3设计。 首先,我们要理解Hadoop和HBase的关系。...

    hbase-2.5.8-hadoop3-bin.tar.gz

    就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非...

    hbase-0.96.2-hadoop2-bin.tar.gz

    5. **Hadoop兼容**:Hbase-0.96.2-hadoop2版本是为Hadoop 2.x版本设计的,这意味着它可以充分利用Hadoop 2.x的YARN资源管理和MapReduce 2.0改进。 6. **在CentOS上安装HBase**: - **系统需求**:确保系统安装了...

    spark-2.1.1-bin-hadoop2.7.tgz.7z

    这个特定的压缩包"spark-2.1.1-bin-hadoop2.7.tgz.7z"是为Linux系统设计的,它包含了Spark 2.1.1版本,并且已经与Hadoop 2.7.2版本进行了预编译集成,这意味着它可以无缝地与Hadoop生态系统交互。 Hadoop 2.7.2是一...

    hbase-0.98.12.1-hadoop1-bin.tar.gz

    本文将围绕"Hbase-0.98.12.1-hadoop1-bin.tar.gz"这一特定版本的HBase进行详细介绍,包括其特性、安装与配置、以及与Hadoop1的集成。 1. **HBase 0.98.12.1概述** HBase 0.98.12.1是HBase的早期稳定版本,提供了...

    hbase_0.98.13-hadoop2-bin.tar.gz

    1. 下载与解压:首先,你需要下载HBase的0.98.13-hadoop2版本,这个版本已经包含在名为“hbase-0.98.13-hadoop2”的压缩包文件中。解压到指定目录,例如 `/usr/local/hbase`。 2. 配置环境变量:编辑 `~/.bashrc` 或...

    hbase-1.2.1-bin.tar.gz.zip

    HBase,全称为Hadoop Distributed File System上的基础结构(HBase on Hadoop Distributed File System),是一种分布式的、面向列的开源数据库,它构建在Apache Hadoop文件系统(HDFS)之上,提供高可靠性、高性能...

    hbase-0.98.17-hadoop2-bin.tar.gz

    - 使用 `tar -zxvf hbase-0.98.17-hadoop2-bin.tar.gz` 命令进行解压,这将创建一个名为 `hbase-0.98.17-hadoop2` 的目录。 2. **配置环境变量**: - 编辑 `~/.bashrc` 或 `~/.bash_profile` 文件,添加HBase的...

    hbase的hbase-1.2.0-cdh5.14.2.tar.gz资源包

    `hbase-1.2.0-cdh5.14.2.tar.gz` 是针对Cloudera Distribution Including Apache Hadoop (CDH) 5.14.2的一个特定版本的HBase打包文件。CDH是一个流行的Hadoop发行版,包含了多个大数据组件,如HDFS、MapReduce、YARN...

    hbase-hadoop2-compat-1.2.12-API文档-中文版.zip

    赠送jar包:hbase-hadoop2-compat-1.2.12.jar; 赠送原API文档:hbase-hadoop2-compat-1.2.12-javadoc.jar; 赠送源代码:hbase-hadoop2-compat-1.2.12-sources.jar; 赠送Maven依赖信息文件:hbase-hadoop2-compat-...

    phoenix-hbase-2.2-5.1.2-bin.tar.gz

    总的来说,`phoenix-hbase-2.2-5.1.2-bin.tar.gz`是大数据存储和分析领域的重要工具,它结合了HBase的分布式存储能力和Phoenix的SQL查询能力,为大数据处理提供了一种高效、易用的解决方案。无论是对大数据新手还是...

    HBase(hbase-2.4.9-bin.tar.gz)

    HBase(hbase-2.4.9-bin.tar.gz)是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System...

    hbase-1.3.1-bin.tar.gz.7z

    HBase,全称Apache HBase,是Apache软件基金会开发的一个非关系型分布式数据库(NoSQL),它构建在Hadoop文件系统(HDFS)之上,为大规模数据集提供了随机、实时的读写访问。本文将详细阐述如何在Linux环境,特别是...

    hbase-2.4.11-bin.tar.gz

    HBase,作为Apache软件基金会的一个开源项目,是构建在Hadoop文件系统(HDFS)之上的分布式、面向列的数据库,专为处理大规模数据而设计。标题中的“hbase-2.4.11-bin.tar.gz”是指HBase的2.4.11稳定版本的二进制...

    hbase-2.2.6-bin.tar.gz

    hbase-2.2.6-bin.tar.gz HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所...

    hbase-1.2.6.1-bin.tar.gz

    hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz,hbase-1.2.6.1-bin.tar.gz

    hbase-hadoop-compat-1.1.3-API文档-中英对照版.zip

    赠送jar包:hbase-hadoop-compat-1.1.3.jar; 赠送原API文档:hbase-hadoop-compat-1.1.3-javadoc.jar; 赠送源代码:hbase-hadoop-compat-1.1.3-sources.jar; 赠送Maven依赖信息文件:hbase-hadoop-compat-1.1.3....

Global site tag (gtag.js) - Google Analytics