"Thrift is a software framework for scalable cross-language services development. It combines a powerful software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, and Ruby. Thrift was developed at Facebook, and we are now releasing it as open source." For additional information, see http://developers.facebook.com/thrift/. Facebook has announced their intent to migrate Thrift into Apache Incubator.
The Hbase API is defined in the
file Hbase.thrift. A server-side implementation of the API is in
org.apache.hadoop.hbase.thrift.ThriftServer
. The generated interfaces,
types, and RPC utility files are checked into SVN under the
org.apache.hadoop.hbase.thrift.generated
directory.
The files were generated by running the commands:
thrift -strict --gen java Hbase.thrift mv gen-java/org/apache/hadoop/hbase/thrift/generated . rm -rf gen-java
The 'thrift' binary is the Thrift compiler, and it is distributed as a part of the Thrift package. Additionally, specific language runtime libraries are a part of the Thrift package. A version of the Java runtime is checked into SVN under the hbase/lib directory.
To start ThriftServer, use:
./bin/hbase-daemon.sh start thrift [--port=PORT]The default port is 9090.
To stop, use:
./bin/hbase-daemon.sh stop thrift