HBase权威指南读书笔记精要

版权申诉
0 下载量 137 浏览量 更新于2024-10-09 收藏 103KB ZIP 举报
资源摘要信息:"HBase 权威指南是关于HBase数据库管理与应用的详细指南书籍。HBase是基于Google的Bigtable模型构建的开源、分布式的NoSQL数据库,它运行在Hadoop文件系统(HDFS)之上,被设计用来支持高并发和大数据量的随机访问。本书主要针对HBase的安装、配置、数据模型、数据操作以及高级特性等多个方面进行了深入的探讨。" 知识点详细说明: 1. HBase数据库基本概念: HBase是Apache软件基金会的Hadoop项目的一部分,它是一个分布式的、可扩展的、非关系型数据库管理系统。HBase旨在提供对大型数据集的快速随机访问,以及良好的可伸缩性。它能够存储结构化数据,并且支持大规模的数据集,特别适合处理稀疏数据。 2. HBase的架构与组件: HBase的架构设计使其能够在廉价的硬件上水平扩展,实现高可用性。其主要组件包括Master服务器和RegionServer。Master服务器负责表和Region的管理工作,而RegionServer则负责存储数据,每个RegionServer可以包含多个Region,每个Region包含了表的一部分数据。 3. HBase的数据模型: HBase采用列式存储方式,数据模型基于列族(column families)的概念。一个列族是一组列的集合,可以动态地添加新的列,每个列族可以有不同数量的列。数据在HBase中是以行的形式存储,每行都有唯一的行键(row key),行内可以有多个列族,每个列族内可以有多个列和相应的值。 4. HBase的数据操作: 数据的增加、删除、修改和查询在HBase中是通过特定的API完成的。HBase提供了多种API接口,如Java API、RESTful API、Thrift API等。数据的读写操作主要涉及对行键、列族和列的定位以及版本控制。 5. HBase的数据版本控制: HBase支持数据版本控制,每个单元格(cell)可以存储多个版本的数据。通过时间戳来区分不同版本的数据。默认情况下,HBase会保留数据的三个版本,但可以通过配置来改变这个设置。 6. HBase的索引机制: HBase使用行键作为主索引,对行键进行快速查找,索引机制保证了高效的读写性能。由于HBase是设计给大表使用的,因此它并没有对列建立索引,而是推荐使用行键设计来实现高效的列检索。 7. HBase的集群管理: HBase集群的管理包括节点的添加与移除、负载均衡、故障检测与恢复等。HBase提供了丰富的集群管理工具和API,例如HBase的Web UI提供了可视化的集群状态监控和管理。 8. HBase的高级特性: HBase包含了高级特性,如支持过滤器、协处理器(co-processors)、数据压缩、快照和复制等。这些特性可以提升HBase的应用性能,保证数据的安全性和一致性。 9. HBase的安装和配置: HBase的安装涉及到Hadoop和Zookeeper的配置,需要进行适当的环境配置,如Java环境、Hadoop配置文件、HBase配置文件等。HBase的配置通常可以通过编辑hbase-site.xml文件进行。 10. HBase的应用场景: HBase由于其非关系型特性,特别适合于需要处理大量数据、高并发读写和实时性访问的应用场景。例如,它可以用于日志存储、实时分析、大数据处理等多种场景。 由于是读书笔记形式的压缩文件,该文件可能还包含了对以上知识点的具体案例分析、实践操作指南、常见问题解答以及个人理解总结等内容,能够帮助读者更全面深入地理解和运用HBase。

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

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