HBase单机部署教程:从入门到配置详解

版权申诉
0 下载量 9 浏览量 更新于2024-08-06 收藏 839KB DOC 举报
HBase是一种基于Hadoop的分布式、面向列的NoSQL数据库,最初源于Google的Bigtable论文。它被设计用于处理大规模非结构化数据,并且强调高可靠性、高性能和可扩展性。HBase的主要特点是: 1. **分布式架构**:HBase是在Hadoop生态系统内运行,通过HDFS(Hadoop分布式文件系统)提供分布式数据存储,能够利用廉价的商业服务器进行水平扩展。 2. **列式存储**:与传统的行式数据库不同,HBase采用列族的概念,使得数据按列而非按行组织,这有利于高效地处理大量列操作。 3. **非结构化数据支持**:HBase特别适合存储半结构化或非结构化的数据,比如日志、社交网络数据等。 4. **三种模式**: - 单机模式:用于本地测试或小规模部署。 - 伪分布式模式:模拟分布式环境,但数据仍存放在本地。 - 完全分布式模式:真正的分布式部署,数据和处理分布在多台机器上。 5. **配置步骤**: - **安装和解压**:首先下载HBase的tar包,解压并移动到特定目录,如`hbase-0.96-bin`。 - **环境变量设置**:编辑`hbase-env.sh`文件,设置JAVA_HOME指向正确的Java安装路径,以及开启ZooKeeper管理(HBASE_MANAGES_ZK)。 - **主配置文件**:编辑`hbase-site.xml`,设置核心配置参数,如`hbase.rootdir`指定数据存储目录,`hbase.master.info.port`设置HMaster服务的端口号。 - **环境变量配置**:在系统级别的`/etc/profile`或其他合适的配置文件中添加HBase环境变量。 通过以上配置,用户可以根据实际需求选择合适的部署模式,并确保HBase环境的正确设置,以便在大数据环境中有效地管理和存储数据。

org.apache.hadoop.hbase.DoNotRetryIOException: Unable to load configured region split policy 'org.apache.phoenix.schema.MetaDataSplitPolicy' for table 'SYSTEM.CATALOG' Set hbase.table.sanity.checks to false at conf or table descriptor if you want to bypass sanity checks at org.apache.hadoop.hbase.util.TableDescriptorChecker.warnOrThrowExceptionForFailure(TableDescriptorChecker.java:296) at org.apache.hadoop.hbase.util.TableDescriptorChecker.sanityCheck(TableDescriptorChecker.java:109) at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:2025) at org.apache.hadoop.hbase.master.MasterRpcServices.createTable(MasterRpcServices.java:657) at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java) at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:413) at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:133) at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:338) at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:318) org.apache.hadoop.hbase.DoNotRetryIOException: Unable to load configured region split policy 'org.apache.phoenix.schema.MetaDataSplitPolicy' for table 'SYSTEM.CATALOG' Set hbase.table.sanity.checks to false at conf or table descriptor if you want to bypass sanity checks at org.apache.hadoop.hbase.util.TableDescriptorChecker.warnOrThrowExceptionForFailure(TableDescriptorChecker.java:296) at org.apache.hadoop.hbase.util.TableDescriptorChecker.sanityCheck(TableDescriptorChecker.java:109) at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:2025) at org.apache.hadoop.hbase.master.MasterRpcServices.createTable(MasterRpcServices.java:657) at org.apache.hadoop.hbase.shaded.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java) at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:413) at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:133) at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:338) at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:318)

2023-07-14 上传