Sha256: 990016efabf17aa185ff4acf6839ba27265a2a662687d6032db78f19c95580f0
Contents?: true
Size: 916 Bytes
Versions: 5
Compression:
Stored size: 916 Bytes
Contents
module HBaseRb class Client def initialize(server, port=9090) socket = Thrift::Socket.new(server, port) @transport = Thrift::BufferedTransport.new(socket) @transport.open protocol = Thrift::BinaryProtocol.new(@transport) @client = Apache::Hadoop::Hbase::Thrift::Hbase::Client.new(protocol) end def table_names @client.getTableNames end def has_table?(name) table_names.include? name end def get_table(tablename) raise HBaseRb::NoSuchTable if not has_table? tablename HBaseRb::Table.new @client, tablename end def create_table(tablename, *column_family_names) column_family_names.map! { |name| Apache::Hadoop::Hbase::Thrift::ColumnDescriptor.new(:name => name) } @client.createTable tablename, column_family_names get_table tablename end def close @transport.close end end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
hbaserb-0.0.5 | lib/hbaserb/client.rb |
hbaserb-0.0.4 | lib/hbaserb/client.rb |
hbaserb-0.0.3 | lib/hbaserb/client.rb |
hbaserb-0.0.2 | lib/hbaserb/client.rb |
hbaserb-0.0.1 | lib/hbaserb/client.rb |