libMapRClient C APIs

This section provides the MapR Database libMapRClient C API library. This library is MapR's extension of the libhbase C API library. The libMapRClient header files are in the directory: /opt/mapr/include/hbase.

The libMapRClient API implements functions in addition to the functions in the libhbase API.
NOTE Your applications need include only the hbase.h header file. The header files are provided for display purposes.
admin.h
Describes the APIs for Apache HBase table administration operations such as creating and enabling tables, checking if tables exist, and deleting tables, to name a few .
client.h
Describes the APIs for Apache HBase client side operations such as creating and terminating client connections, and flushing buffered client-side writes to Apache HBase.
coldesc.h
Describes the APIs for performing operations such as creation, deletion, and setting the maximum and minimum number of cell versions to be retained for each Apache HBase column family.
connection.h

libMapRClient includes a function in the connection.h header file: hb_connection_create_as_user(). This function provides support for impersonation, so that you can connect to a MapR cluster and access MapR Database tables by using a specific username.

The user that is passed with the hb_connection_create_as_user() API must have permissions on the tables that the application accesses. For example, to read from a table, the user must have the readperm permission. To write to a table, the user must have the writeperm permission. See Enabling Table and Stream Authorizations with ACEs.

For hb_connection_create() and hb_connection_create_as_user(), the standard C APIs for Apache HBase require a list of ZooKeeper nodes. For MapR Database, this list is interpreted as a list of CLDB nodes. The zk_root parameter is ignored. If zk_quorum is NULL, then the connection is created to the default cluster that is listed in the mapr-clusters.conf file.

get.h
Describes the APIs to query and fetch data from Apache HBase tables.
hbase.h

Describes the APIs and data structures of a C client for Apache HBase.

log.h
Describes the APIs to manage Apache HBase logs.
macros.h
Defines internal macros that Apache HBase uses for its operations.
multiget.h
Describes the APIs to queue and manage multiple GET requests to fetch data from Apache HBase tables.
mutations.h
Describes the APIs for row and column mutations on Apache HBase tables.
result.h
Describes the buffers for internal temporary storage of results.
scanner.h
Describes the APIs for the client side scanner to scan and request rows from the Apache HBase server.
types.h
Defines the data types and error codes that Apache HBase uses.