hbase-thrift項目是對HBase Thrift接口的封裝,屏蔽底層的細節,使用戶可以方便地通過HBase Thrift接口訪問HBase集群,同時基於此對C++客戶端讀寫的效率進行了簡單的測試。該項目目前基於的是HBase thrift接口,至於HBase 0.94版本中的HBase thrift2接口,後續再考慮進一步的支持。
前提條件
1)下載,解壓,安裝 thrift-0.8.0。
wget https://dist.apache.org/repos/dist/release/thrift/0.8.0/thrift-0.8.0.tar.gz tar zxvf thrift-0.8.0.tar.gz sudo yum install automake libtool flex bison pkgconfig gcc-c++ boost-devel libevent-devel zlib-devel python-devel ruby-devel cd thrift-0.8.0 ./configure make sudo make install
2)下載,解壓 hbase-0.92.1 或之前的版本,用戶根據Hbase.thrift文件生成客戶端thrift接口代碼實現。
wget http://www.fayea.com/apache-mirror/hbase/hbase-0.92.1/hbase-0.92.1.tar.gz
tar zxvf hbase-0.92.1.tar.gz
接口實現
目前已封裝實現的接口如下:
class HbCli { public: // Constructor and Destructor HbCli(const char *server, const char *port); ~HbCli(); // Util Functions bool connect(); bool disconnect(); bool reconnect(); inline bool isconnect(); // HBase DDL Functions bool createTable(const std::string table, const ColVec &columns); bool deleteTable(const std::string table); bool tableExists(const std::string table); // HBase DML Functions //