深入理解HBase:权威指南学习笔记整理

版权申诉
0 下载量 93 浏览量 更新于2024-10-09 收藏 75KB ZIP 举报
资源摘要信息:"HBase权威指南学习代码" 知识点一:HBase简介 HBase是一个开源的、分布式的、非关系型的数据库,它提供了高可靠性、高性能、列存储、可伸缩性、实时读写等特性。HBase运行在Hadoop文件系统(HDFS)之上,它与传统的关系数据库不同,是非关系型的,即它不使用SQL语言,而是提供了自己的API来访问数据。 知识点二:HBase数据模型 HBase的数据模型是基于列族的,每个列族下可以有多个列,每个列存储一个值,每个值有一个时间戳。HBase中的数据是按照行键来组织的,每个行键对应一个行,每个行包含多个列族,每个列族包含多个列,每个列存储一个值。 知识点三:HBase架构 HBase主要由四个主要部分组成:客户端、主服务器(Master Server)、区域服务器(Region Server)和HBase存储。主服务器负责管理区域服务器,维护表的元数据信息,处理表的创建、删除、修改等操作。区域服务器负责数据的实际存储和读写操作。 知识点四:HBase操作 HBase的操作主要包括创建表、删除表、修改表、插入数据、查询数据、删除数据等。创建表时需要指定表名和列族,删除表和修改表都需要通过API来实现。插入数据时,需要指定行键和列,查询数据时,可以通过行键、列族、列和时间戳来定位数据。 知识点五:HBase读写流程 HBase的读写流程分为写流程和读流程。写流程是从客户端开始,数据先写入写前缓存(MemStore),当缓存满时,会将数据写入磁盘。读流程是从客户端开始,先从缓存中读取数据,如果缓存中没有,再从磁盘中读取数据。 知识点六:HBase高级特性 HBase提供了很多高级特性,如数据版本控制、数据压缩、数据过滤、批量操作等。数据版本控制可以让用户看到数据的历史版本,数据压缩可以减少存储空间,数据过滤可以在读取数据时过滤掉不需要的数据,批量操作可以提高数据处理的效率。 知识点七:HBase与Hadoop的关系 HBase是运行在Hadoop之上的,Hadoop提供了大规模数据的存储和处理能力,而HBase利用了Hadoop的存储能力,提供了高性能、高可靠的实时读写操作。HBase是Hadoop生态系统中的重要组成部分,为Hadoop提供了实时的数据访问能力。

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 上传

23/07/23 16:19:48 ERROR AsyncProcess: Failed to get region location org.apache.hadoop.hbase.DoNotRetryIOException: java.lang.NoClassDefFoundError: Could not initialize class org.apache.hadoop.hbase.util.ByteStringer at org.apache.hadoop.hbase.client.RpcRetryingCaller.translateException(RpcRetryingCaller.java:241) at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithoutRetries(RpcRetryingCaller.java:214) at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas$RetryingRPC.call(ScannerCallableWithReplicas.java:364) at org.apache.hadoop.hbase.client.ScannerCallableWithReplicas$RetryingRPC.call(ScannerCallableWithReplicas.java:338) at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithRetries(RpcRetryingCaller.java:137) at org.apache.hadoop.hbase.client.ResultBoundedCompletionService$QueueingFuture.run(ResultBoundedCompletionService.java:65) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.apache.hadoop.hbase.util.ByteStringer at org.apache.hadoop.hbase.protobuf.RequestConverter.buildRegionSpecifier(RequestConverter.java:1041) at org.apache.hadoop.hbase.protobuf.RequestConverter.buildScanRequest(RequestConverter.java:492) at org.apache.hadoop.hbase.client.ClientSmallReversedScanner$SmallReversedScannerCallable.call(ClientSmallReversedScanner.java:291) at org.apache.hadoop.hbase.client.ClientSmallReversedScanner$SmallReversedScannerCallable.call(ClientSmallReversedScanner.java:276) at org.apache.hadoop.hbase.client.RpcRetryingCaller.callWithoutRetries(RpcRetryingCaller.java:212) ... 7 more

2023-07-24 上传