如何在hbase中关闭WAL,

时间:2013-10-16 14:22:00

标签: python performance hadoop hbase database-performance

我需要在Hbase设置中提高读/写操作的性能,在我的设置中不需要打开WAL,请告诉我如何关闭WAL

请给我你的建议/提示。

提前致谢

2 个答案:

答案 0 :(得分:1)

Here关于如何打开WAL的HBase文档。

答案 1 :(得分:0)

您可以使用HBase thrift API

当你有一个突变列表时,你可以指定不写入WAL

struct Mutation {
  1:bool isDelete = 0,
  2:Text column,
  3:Text value,
  4:bool writeToWAL = 1
}

一旦你generated a thirft client 你可以

from thrift.transport.TSocket import TSocket
from thrift.transport.TTransport import TBufferedTransport
from thrift.protocol import TBinaryProtocol
from hbase import Hbase 

transport = TBufferedTransport(TSocket('localhost', 9090))
transport.open()
protocol = TBinaryProtocol.TBinaryProtocol(transport)
client = Hbase.Client(protocol)
table_name = 'theTable'
row_key = 'test_row1'
colfamily = 'test_colfamily1'
qualifier = 'test_col1'
fullyqualied = ('%s:%s' % (colfamily, qualifier))
value = 'some value'
client.mutateRow(table_name, row_key, [Mutation(column=fullyqualified, value=value,writeToWAL=false)], {})