forked from clintam/hbase-transactional-tableindexed
-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathREADME.txt
56 lines (43 loc) · 1.87 KB
/
README.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
This project is a transactional and indexing extension for hbase.
Current status:
Now working with HBase 0.90.
Working Features:
* Ability to create manage and query with pre-defined table indexes.
* Ability to perform multiple HBase operations within serialized and atomic JTA transactions.
Known limitations and issues:
https://github.com/hbase-trx/hbase-transactional-tableindexed/issues
Installation:
Drop the jar in the classpath of your application
Configuration:
To enable the extension in hbase-site.xml:
<property>
<name>hbase.regionserver.class</name>
<value>org.apache.hadoop.hbase.ipc.TransactionalRegionInterface</value>
</property>
<property>
<name>hbase.regionserver.impl</name>
<value>org.apache.hadoop.hbase.regionserver.transactional.TransactionalRegionServer</value>
</property>
<property>
<name>hbase.hregion.impl</name>
<value>org.apache.hadoop.hbase.regionserver.transactional.TransactionalRegion</value>
</property>
<property>
<name>hbase.hlog.splitter.impl</name>
<value>org.apache.hadoop.hbase.regionserver.transactional.THLogSplitter</value>
</property>
To further enable indexing use the above configuration except for the following replacements:
<property>
<name>hbase.regionserver.class</name>
<value>org.apache.hadoop.hbase.ipc.IndexedRegionInterface</value>
</property>
<property>
<name>hbase.regionserver.impl</name>
<value>org.apache.hadoop.hbase.regionserver.tableindexed.IndexedRegionServer</value>
</property>
<property>
<name>hbase.hregion.impl</name>
<value>org.apache.hadoop.hbase.regionserver.tableindexed.IndexedRegion</value>
</property>
Also, currently you have to manually create the GLOBAL_TRX_LOG table with HBaseBackedTransactionLogger.createTable() before you start using any transactions.
For more details, looks at the package.html in the appropriate client package of the source.