下载站

展开
精品推荐
Apache HBase下载-分布式数据库 v2.4.1

Apache HBase下载-分布式数据库 v2.4.1

程序源码大小:540.21MB语言: / 英文 类别:其他软件系统: / WinAll 提供:
应用介绍

软件介绍

ApacheHBase是一个功能强大、专业实用的Hadoop数据库软件,是一个分布式、可扩展的大数据存储管理工具,实用这款软件用户可以随时随地进行专业高效的数据库读写和仿写,使用这款软件用户可以在商品硬件群集上托管非常大的数据表,通过这款数据库管理软件用户可以对数十亿行X数百万列的庞大数据进行管理和处理;ApacheHBase是一种开放源分布式的非关系型数据库管理软件,使用该软件用户可以对存储数据进行分化管理,方便用户对各项数据进行查找和使用,该软件拥有其他数据库软件的基本操作功能,非常简单易用。

Apache HBase下载,分布式数据库,数据库类

软件功能

RegionServer之间的自动故障转移支持

方便的基类,用于通过ApacheHBase表备份HadoopMapReduce作业

块缓存和布隆过滤器用于实时查询。

通过服务器端过滤器查询谓词下推

Thrift网关和REST-fulWeb服务,支持XML,Protobuf和二进制数据编码选项

可扩展的基于Jruby的(JIRB)Shell

支持通过Hadoop指标子系统将指标导出到文件或Ganglia

软件特色

1、ApacheHBase绿色安全、免费开源

2、功能强大、简单易用

3、线性和模块化可扩展性

4、拥有严格专业的读写

5、支持表的自动和可配置分片

6、易于使用的JavaAPI用于客户端访问

官方教程

过程:以独立模式下载,配置和启动HBase

从此Apache下载镜像列表中选择一个下载站点。单击建议的顶部链接。这将带您了解HBase版本。单击名为稳定的文件夹,然后将以.tar.gz结尾的二进制文件下载到本地文件系统。现在不要下载以src.tar.gz结尾的文件。

解压缩下载的文件,然后转到新创建的目录。

Apache HBase下载,分布式数据库,数据库类

您必须JAVA_HOME在启动HBase之前设置环境变量。为了使此操作更容易,HBase允许您在conf/hbase-env.sh文件中进行设置。您必须找到Java在计算机上的安装位置,一种查找方法是使用whereisjava命令。找到位置后,编辑conf/hbase-env.sh文件,并取消注释以#exportJAVA_HOME=开头的行,然后将其设置为Java安装路径。

从实施例提取物hbase-env.sh其中JAVA_HOME是集

Apache HBase下载,分布式数据库,数据库类

提供bin/start-hbase.sh脚本是启动HBase的便捷方法。发出命令,如果一切顺利,则会在标准输出中记录一条消息,表明HBase已成功启动。您可以使用该jps命令来验证是否有一个名为的正在运行的进程HMaster。在独立模式下,HBase在此单个JVM中运行所有守护程序,即HMaster,单个HRegionServer和ZooKeeper守护程序。转到http://localhost:16010查看HBaseWebUI。

过程:首次使用HBase

连接到HBase。

使用hbaseshell位于HBase安装目录bin/目录中的命令连接到正在运行的HBase实例。在此示例中,省略了启动HBaseShell时打印的一些用法和版本信息。HBaseShell提示符以一个字符结尾。

Apache HBase下载,分布式数据库,数据库类

显示HBaseShell帮助文本。

键入help并按Enter键,以显示HBaseShell的一些基本用法信息以及一些示例命令。注意,表名,行,列都必须用引号引起来。

创建一个表。

使用create命令创建一个新表。您必须指定表名称和ColumnFamily名称。

Apache HBase下载,分布式数据库,数据库类

列出有关表的信息

使用list命令确认您的表存在

Apache HBase下载,分布式数据库,数据库类

现在使用describe命令查看详细信息,包括配置默认值

Apache HBase下载,分布式数据库,数据库类

将数据放入表中。

要将数据放入表中,请使用put命令。

Apache HBase下载,分布式数据库,数据库类

在这里,我们插入三个值,一次插入一个。第一个插入在的row1列cf:a,值为value1。cf在本例中,HBase中的列由列族前缀组成,后跟冒号,然后是列限定符后缀a。

一次扫描表中的所有数据。

从HBase获取数据的一种方法是扫描。使用scan命令扫描表中的数据。您可以限制扫描,但是目前,所有数据都已获取。

Apache HBase下载,分布式数据库,数据库类

获取单行数据。

要一次获取一行数据,请使用get命令。

Apache HBase下载,分布式数据库,数据库类

禁用表格。

如果要删除表或更改其设置,以及在某些其他情况下,则需要先使用disable命令禁用该表。您可以使用enable命令重新启用它。

Apache HBase下载,分布式数据库,数据库类

放下桌子。

要删除(删除)表,请使用drop命令。

Apache HBase下载,分布式数据库,数据库类

退出HBaseShell。

要退出HBaseShell并从群集断开连接,请使用以下quit命令。HBase仍在后台运行。

过程:停止HBase

与提供bin/start-hbase.sh脚本以方便启动所有HBase守护程序相同,bin/stop-hbase.sh脚本将停止它们。

Apache HBase下载,分布式数据库,数据库类

发出命令后,进程可能需要几分钟才能关闭。使用jps确保HMaster和HRegionServer进程已关闭。

上面显示了如何启动和停止HBase的独立实例。在接下来的部分中,我们将简要概述hbase部署的其他模式。

2.3。伪分布式用于本地测试

在快速入门独立模式下工作之后,您可以将HBase重新配置为以伪分布式模式运行。伪分布式模式意味着HBase仍完全在单个主机上运行,但是每个HBase守护程序(HMaster,HRegionServer和ZooKeeper)作为单独的进程运行:在独立模式下,所有守护程序都在一个jvm进程/实例中运行。默认情况下,除非您hbase.rootdir按照快速入门中的说明配置属性,否则数据仍存储在/tmp/中。在本演练中,假设您有可用的HDFS,我们将您的数据存储在HDFS中。您可以跳过HDFS配置,以继续将数据存储在本地文件系统中。

Hadoop配置

此过程假定您已在本地系统和/或远程系统上配置了Hadoop和HDFS,并且它们正在运行并且可用。它还假定您正在使用Hadoop2。Hadoop文档中有关设置单节点群集的指南是一个很好的起点。

如果HBase正在运行,请停止它。

如果您刚刚完成快速入门而HBase仍在运行,请停止它。此过程将创建一个全新的目录,HBase将在该目录中存储其数据,因此您之前创建的所有数据库都将丢失。

配置HBase。

编辑hbase-site.xml配置。首先,添加以下属性,该属性指示HBase在分布式模式下运行,每个守护程序一个JVM实例。

Apache HBase下载,分布式数据库,数据库类

接下来,hbase.rootdir使用hdfs:////URI语法添加的配置,指向您的HDFS实例的地址。在此示例中,HDFS在本地主机上的端口8020上运行。

Apache HBase下载,分布式数据库,数据库类

您无需在HDFS中创建目录。HBase将为您完成此任务。如果创建目录,则HBase将尝试进行迁移,这不是您想要的。

最后,删除现有的配置hbase.tmp.dir和hbase.unsafe.stream.capability.enforce,

启动HBase。

使用bin/start-hbase.sh命令启动HBase。如果系统配置正确,该jps命令应显示正在运行的HMaster和HRegionServer进程。

检查HDFS中的HBase目录。

如果一切正常,则HBase将在HDFS中创建其目录。在上面的配置中,它存储在HDFS上的/hbase/中。您可以使用hadoopfsHadoop的bin/目录中的命令列出该目录。

Apache HBase下载,分布式数据库,数据库类

创建一个表并用数据填充它。

您可以使用HBaseShell创建一个表,使用数据填充该表,扫描并从中获取值,方法与Shell练习中相同。

启动和停止备用HBase主服务器(HMaster)服务器。

在生产环境中,在同一硬件上运行多个HMaster实例没有任何意义,就像在生产环境中运行伪分布式集群一样。此步骤仅用于测试和学习目的。

HMaster服务器控制HBase群集。您最多可以启动9台备用HMaster服务器,这使总数为10台HMaster主机(包括主服务器)成为可能。要启动备份HMaster,请使用local-master-backup.sh。对于要启动的每个备份主服务器,添加一个代表该主服务器的端口偏移量的参数。每个HMaster使用两个端口(默认情况下为16000和16010)。端口偏移量已添加到这些端口,因此使用偏移量2时,备份HMaster将使用端口16002和16012。以下命令使用端口16002/16012、16003/16013和16005/16015启动3个备份服务器。

Apache HBase下载,分布式数据库,数据库类

要杀死备份主服务器而不杀死整个集群,您需要找到其进程ID(PID)。PID以类似/tmp/hbase-USER-X-master.pid的名称存储在文件中。该文件的唯一内容是PID。您可以使用kill-9命令杀死该PID。以下命令将杀死端口偏移为1的主服务器,但使集群保持运行状态:

Apache HBase下载,分布式数据库,数据库类

启动和停止其他RegionServer

HRegionServer按照HMaster的指示管理其StoreFiles中的数据。通常,群集中的每个节点都运行一个HRegionServer。在同一系统上运行多个HRegionServer对于在伪分布式模式下进行测试非常有用。该local-regionservers.sh命令允许您运行多个RegionServer。它的工作方式与local-master-backup.sh命令相似,因为您提供的每个参数都代表实例的端口偏移量。每个RegionServer需要两个端口,默认端口为16020和16030。由于HBase版本1.1.0,HMaster不使用区域服务器端口,因此剩下10个端口(16020到16029和16030到16039)用于RegionServer。为了支持其他RegionServer,请在运行脚本之前将环境变量HBASE_RS_BASE_PORT和HBASE_RS_INFO_BASE_PORT设置为适当的值。local-regionservers.sh。例如,对于基本端口,值为16200和16300,可以在服务器上支持99个其他RegionServer。以下命令启动四个附加的RegionServer,它们在从16022/16032开始的顺序端口(基本端口16020/16030加2)上运行。

Apache HBase下载,分布式数据库,数据库类

要手动停止RegionServer,请使用local-regionservers.sh带有stop参数和服务器偏移量的命令来停止。

Apache HBase下载,分布式数据库,数据库类

停止HBase。

您可以使用bin/stop-hbase.sh命令以与快速入门过程中相同的方式停止HBase。

2.4。完全分配生产

实际上,您需要一个完全分布式的配置来全面测试HBase并在实际场景中使用它。在分布式配置中,群集包含多个节点,每个节点运行一个或多个HBase守护程序。其中包括主实例和备份Master实例,多个ZooKeeper节点和多个RegionServer节点。

此高级快速入门为集群添加了两个以上的节点。架构如下:

Apache HBase下载,分布式数据库,数据库类

本快速入门假定每个节点都是虚拟机,并且它们都在同一网络上。假设您在该过程中配置的系统现在为,则它以先前的快速入门(用于本地测试的伪分布式)为基础node-a。node-a在继续操作之前,先停止HBase。

确保所有节点都具有完全的通信访问权限,并且没有适当的防火墙规则可能阻止它们相互通信。如果看到类似的错误noroutetohost,请检查防火墙。

过程:配置无密码的SSH访问

node-a需要能够登录node-b和node-c(以及本身)才能启动守护程序。完成此操作的最简单方法是在所有主机上使用相同的用户名,并配置其他用户之间的无密码SSH登录node-a。

在上node-a,生成密钥对。

以将要运行HBase的用户身份登录后,使用以下命令生成SSH密钥对:

Apache HBase下载,分布式数据库,数据库类

如果命令成功执行,则将密钥对的位置打印到标准输出。公钥的默认名称是id_rsa.pub。

创建将在其他节点上保存共享密钥的目录。

在node-b和上node-c,以HBase用户身份登录,并在用户的主目录中创建一个.ssh/目录(如果尚不存在)。如果已经存在,请注意它可能已经包含其他密钥。

将公钥复制到其他节点。

node-a通过使用scp或其他安全方式,将公钥安全地复制到每个节点。在其他每个节点上,创建一个名为.ssh/authorized_keys的新文件(如果尚不存在),并将id_rsa.pub文件的内容附加到文件末尾。请注意,您还需要自己执行此操作node-a。

Apache HBase下载,分布式数据库,数据库类

测试无密码登录。

如果正确执行了该过程,则node-a使用相同的用户名从SSHSSH到其他任何一个节点时,都不会提示您输入密码。

由于node-b将运行备份主服务器,因此重复上述步骤,替换为node-b您看到的所有位置node-a。确保不要覆盖现有的.ssh/authorized_keys文件,而是使用运算符而不是运算符将新密钥连接到现有文件上。

程序:准备node-a

node-a将运行您的主要master和ZooKeeper进程,但不运行RegionServer。停止RegionServer从启动node-a。

编辑conf/regionservers并删除包含的行localhost。加入与主机名或IP地址线node-b和node-c。

即使您确实想在上运行RegionServernode-a,也应使用其他服务器用来与其通信的主机名来引用它。在这种情况下,该值为node-a.example.com。这使您可以将任何主机名冲突将配置分发到群集的每个节点。保存文件。

配置HBasenode-b用作备份主机。

在conf/中创建一个名为backup-masters的新文件,并在其中添加新行,其主机名为node-b。在此演示中,主机名是node-b.example.com。

配置ZooKeeper

实际上,您应该仔细考虑您的ZooKeeper配置。您可以在zookeeper部分中找到有关配置ZooKeeper的更多信息。此配置将指导HBase在群集的每个节点上启动和管理ZooKeeper实例。

在上node-a,编辑conf/hbase-site.xml并添加以下属性。

Apache HBase下载,分布式数据库,数据库类

无处不在的配置,您已经提到node-a的localhost,在参考点切换到主机,其他节点将用来指代node-a。在这些示例中,主机名是node-a.example.com。

程序:准备node-b并node-c

node-b将运行一个备份主服务器和一个ZooKeeper实例。

下载并解压缩HBase。

将HBase下载并解压缩到中node-b,就像对独立和伪分布式快速入门所做的那样。

将配置文件从复制node-a到node-b.andnode-c。

群集的每个节点都需要具有相同的配置信息。将内容复制的conf/目录下的的conf/目录下node-b和node-c。

过程:启动和测试集群

确保HBase不在任何节点上运行。

如果您忘记从先前的测试中停止HBase,则将出现错误。使用jps命令检查HBase是否在您的任何节点上运行。寻找的过程HMaster,HRegionServer和HQuorumPeer。如果它们存在,杀死它们。

启动集群。

在上node-a,发出start-hbase.sh命令。您的输出将类似于以下内容。

Apache HBase下载,分布式数据库,数据库类

ZooKeeper首先启动,然后是主机,然后是RegionServers,最后是备份主机。

验证进程正在运行。

在群集的每个节点上,运行jps命令并验证每个服务器上是否正在运行正确的进程。如果将其他Java进程用于其他目的,则可能还会看到它们在服务器上运行。

node-ajps输出量

Apache HBase下载,分布式数据库,数据库类

node-bjps输出量

Apache HBase下载,分布式数据库,数据库类

node-cjps输出量

Apache HBase下载,分布式数据库,数据库类

ZooKeeper进程名称

该HQuorumPeer过程是一个由HBase控制和启动的ZooKeeper实例。如果以这种方式使用ZooKeeper,则每个群集节点只能使用一个实例,并且仅适用于测试。如果ZooKeeper在HBase外部运行,则该过程称为QuorumPeer。有关ZooKeeper配置的更多信息,包括将外部ZooKeeper实例与HBase一起使用,请参见zookeeper部分。

浏览到WebUI。

WebUI端口更改

在HBase高于0.98.x的版本中,HBaseWebUI使用的HTTP端口从Master的60010和每个RegionServer的60030变为Master的16010和RegionServer的16030。

如果一切设置正确,则应该可以使用Web浏览器连接到主服务器https://node-a.example.com:16010/或辅助主服务器的UIhttps://node-b.example.com:16010/。如果可以通过localhost但不能从其他主机进行连接,请检查防火墙规则。您可以在其IP地址的端口16030上单击每个RegionServer的WebUI,也可以单击主服务器的WebUI中的链接。

测试当节点或服务消失时会发生什么。

使用已配置的三节点群集,情况将不会非常灵活。您仍然可以通过终止关联的进程并查看日志来测试主要Master或RegionServer的行为。

2.5。下一步去哪里

下一章configuration会提供有关不同HBase运行模式,运行HBase的系统要求以及用于设置分布式HBase群集的关键配置区域的更多信息。

ApacheHBase配置

本章在“入门”一章的基础上进一步扩展,以进一步说明ApacheHBase的配置。请仔细阅读本章,尤其是基本先决条件,以确保您的HBase测试和部署顺利进行。还要熟悉支持和测试期望。

3.配置文件

ApacheHBase使用与ApacheHadoop相同的配置系统。所有配置文件都位于conf/目录中,该文件需要与集群中的每个节点保持同步。

HBase配置文件说明

备份大师

默认情况下不存在。一个纯文本文件,其中列出了主机应在其上启动备份主机进程的主机,每行一个主机。

hadoop-metrics2-hbase.properties

用于连接HBaseHadoop的Metrics2框架。有关Metrics2的更多信息,请参见HadoopWiki条目。默认情况下仅包含注释掉的示例。

hbase-env.cmd和hbase-env.sh

用于Windows和Linux/Unix环境的脚本,用于设置HBase的工作环境,包括Java的位置,Java选项和其他环境变量。该文件包含许多注释掉的示例以提供指导。

hbase-policy.xml

RPC服务器用来对客户端请求做出授权决策的默认策略配置文件。仅在启用HBase安全性时使用。

hbase-site.xml

HBase主配置文件。该文件指定了覆盖HBase默认配置的配置选项。您可以在docs/hbase-default.xml上查看(但不能编辑)默认配置文件。您还可以在HBaseWebUI的“HBase配置”选项卡中查看集群的整个有效配置(默认值和替代值)。

log4j.properties

用于通过HBase记录日志的配置文件log4j。

区域服务器

一个纯文本文件,其中包含应在HBase群集中运行RegionServer的主机列表。默认情况下,此文件包含单个条目localhost。它应该包含一个主机名或IP地址的列表,每行一个,并且仅localhost当集群中的每个节点都将在其localhost接口上运行RegionServer时才包含。

检查XML有效性

在编辑XML时,最好使用支持XML的编辑器,以确保语法正确且XML格式正确。您还可以使用该xmllint实用程序来检查XML格式是否正确。默认情况下,xmllint将XML重新流化并打印到标准输出中。要检查格式是否正确并仅在存在错误的情况下才打印输出,请使用命令xmllint-nooutfilename.xml。

使配置在整个群集中保持同步

在分布式模式下运行时,对HBase配置进行编辑后,请确保将conf/目录的内容复制到群集的所有节点。HBase不会为您这样做。使用配置管理工具来管理配置文件并将其复制到您的节点。对于大多数配置,服务器需要重新启动才能获取更改。动态配置是一个例外,下面将对此进行描述。

Apache HBase下载,分布式数据库,数据库类

Tags:Apache HBase下载,分布式数据库,数据库类

应用推荐查看更多
热门下载查看更多
精选应用
点击查看更多
专题合集查看更多
热门专题查看更多
友情链接0投诉联系:ichaoinc@gmail.com