HBase写路径存储机制

4,654浏览
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

在HBase 中无论是增加新行还是修改已有的行,其内部流程都是相同的。HBase 接到命令后存下变化信息,或者写入失败抛出异常。默认情况下,执行写入时会写到两个地方:预写式日志(write-ahead log,也称HLog)和MemStore(见图2-1)。HBase 的默认方式是把写入动作记录在这两个地方,以保证数据持久化。只有当这两个地方的变化信息都写入并确认后,才认为写动作完成。

继续阅读“HBase写路径存储机制”

用ImportTsv和Completebulkload导入数据到HBase中

11,005浏览
1 Star2 Stars3 Stars4 Stars5 Stars (1 votes, average: 5.00 out of 5)
Loading...

使用ImportTsv和Completebulkload导入数据到HBase中

有时候,我们需要将日志文件中的数据导入到HBase库中,通常情况下,你可以写一个方法来逐行读取日志记录然后写入到HBase中,但这种方法往往效率比较低下,更好的处理方式是将日志文件里的内容通过某种工具直接导入到HBase中,会显得更快速更方便,而HBase中是有现成的工具来支持这么做的。

这两个工具分别是ImportTsv和Completebulkload,下面分别介绍之。

继续阅读“用ImportTsv和Completebulkload导入数据到HBase中”

NotServingRegionException: Region is not online: .META.,,1

8,573浏览
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

有时候hbase启动后,通过hbase的shell命令status发现节点都是活着的,但运行其它命令比如list等等时,会报错如:

org.apache.hadoop.hbase.NotServingRegionException: org.apache.hadoop.hbase.NotServingRegionException: Region is not online: .META.,,1

继续阅读“NotServingRegionException: Region is not online: .META.,,1”

华为公司关于HBase二级索引的PDF文档

7,087浏览
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

HBase现在并不能创建二级索引,但在Scan这样的操作中,在大数据量的情况下,搜索性能会出现问题,如果这个时候针对此创建二级索引再scan的话,性能会有大幅的提升。

本PDF是华为公司的工程师Anoop Sam John作的一篇关于HBase二级索引方面的文档,上面中所提到的针对scan创建二级索引的性能提升情况,在该PDF文档中也有一个对比,文档也对二级索引的结构也举例进行了说明。

继续阅读“华为公司关于HBase二级索引的PDF文档”

hadoop和hbase节点添加和单独重启

11,084浏览
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

有时候hadoop或hbase集群运行时间久了后,某些节点就会失效,这个时候如果不想重启整个集群(这种情况在很多情况下已经不被允许),这个时候可以单独重启失效节点。

继续阅读“hadoop和hbase节点添加和单独重启”

HBASE ERROR:Failed setting up proxy interface org.apache.hadoop.hbase.ipc.HRegionInterface

4,308浏览
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

出现如题的错误原因都可能与Hosts文件配置有关。我改过其中一个,改过后错误便消失,HBase便可用了。

继续阅读“HBASE ERROR:Failed setting up proxy interface org.apache.hadoop.hbase.ipc.HRegionInterface”

hbase错误记录及解决1

8,594浏览
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

在重新启动HBase服务的时候可能会出现如下的错误:

INFO ipc.HbaseRPC: Server at /227.23.56.100:60020 could not be reached after 1 tries, giving up.

出现这个错误的原因可能会有很多,比如各个配置文件中的地址不一致等,但我这里给出的一个可能原因是端口号被其他某一进程占用,或者还是HBase进程使用着,但此服务(或说此端口)已经不再可用,解决的方式为:通过此端口查找到对应的进程,然后杀死对应的进程,再重启HBase服务,你会发现上面出现的错误将消失,服务启动正常。

具体步骤为:

继续阅读“hbase错误记录及解决1”

HBase使用例子(中文翻译)

12,614浏览
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
Loading...

通过编码(java)的形式对HBase进行一系列的管理涉及到对表的管理、数据的操作等。

1、  对表的创建、删除、显示以及修改等,可以用HBaseAdmin,一旦创建了表,那么可以通过HTable的实例来访问表,每次可以往表里增加数据。

2、  插入数据

创建一个Put对象,在这个Put对象里可以指定要给哪个列增加数据,以及当前的时间戳等值,然后通过调用HTable.put(Put)来提交操作,子猴在这里提请注意的是:在创建Put对象的时候,你必须指定一个行(Row)值,在构造Put对象的时候作为参数传入。

继续阅读“HBase使用例子(中文翻译)”