org.apache.accumulo.core.client
Class Connector

java.lang.Object
  extended by org.apache.accumulo.core.client.Connector
Direct Known Subclasses:
ConnectorImpl, MockConnector

public abstract class Connector
extends Object

Connector connects to an Accumulo instance and allows the user to request readers and writers for the instance as well as various objects that permit administrative operations. The Connector enforces security on the client side by forcing all API calls to be accompanied by user credentials.


Constructor Summary
Connector()
           
 
Method Summary
abstract  BatchDeleter createBatchDeleter(String tableName, Authorizations authorizations, int numQueryThreads, BatchWriterConfig config)
           
abstract  BatchDeleter createBatchDeleter(String tableName, Authorizations authorizations, int numQueryThreads, long maxMemory, long maxLatency, int maxWriteThreads)
          Deprecated. since 1.5.0; Use createBatchDeleter(String, Authorizations, int, BatchWriterConfig) instead.
abstract  BatchScanner createBatchScanner(String tableName, Authorizations authorizations, int numQueryThreads)
          Factory method to create a BatchScanner connected to Accumulo.
abstract  BatchWriter createBatchWriter(String tableName, BatchWriterConfig config)
          Factory method to create a BatchWriter connected to Accumulo.
abstract  BatchWriter createBatchWriter(String tableName, long maxMemory, long maxLatency, int maxWriteThreads)
          Deprecated. since 1.5.0; Use createBatchWriter(String, BatchWriterConfig) instead.
abstract  ConditionalWriter createConditionalWriter(String tableName, ConditionalWriterConfig config)
          Factory method to create a ConditionalWriter connected to Accumulo.
abstract  MultiTableBatchWriter createMultiTableBatchWriter(BatchWriterConfig config)
          Factory method to create a Multi-Table BatchWriter connected to Accumulo.
abstract  MultiTableBatchWriter createMultiTableBatchWriter(long maxMemory, long maxLatency, int maxWriteThreads)
          Deprecated. since 1.5.0; Use createMultiTableBatchWriter(BatchWriterConfig) instead.
abstract  Scanner createScanner(String tableName, Authorizations authorizations)
          Factory method to create a Scanner connected to Accumulo.
abstract  Instance getInstance()
          Accessor method for internal instance object.
abstract  InstanceOperations instanceOperations()
          Retrieves an InstanceOperations object to modify instance configuration.
abstract  NamespaceOperations namespaceOperations()
          Retrieves a NamespaceOperations object to perform namespace functions, such as create and delete.
abstract  SecurityOperations securityOperations()
          Retrieves a SecurityOperations object to perform user security operations, such as creating users.
abstract  TableOperations tableOperations()
          Retrieves a TableOperations object to perform table functions, such as create and delete.
abstract  String whoami()
          Get the current user for this connector
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Connector

public Connector()
Method Detail

createBatchScanner

public abstract BatchScanner createBatchScanner(String tableName,
                                                Authorizations authorizations,
                                                int numQueryThreads)
                                         throws TableNotFoundException
Factory method to create a BatchScanner connected to Accumulo.

Parameters:
tableName - the name of the table to query
authorizations - A set of authorization labels that will be checked against the column visibility of each key in order to filter data. The authorizations passed in must be a subset of the accumulo user's set of authorizations. If the accumulo user has authorizations (A1, A2) and authorizations (A2, A3) are passed, then an exception will be thrown.
numQueryThreads - the number of concurrent threads to spawn for querying
Returns:
BatchScanner object for configuring and querying
Throws:
TableNotFoundException - when the specified table doesn't exist

createBatchDeleter

@Deprecated
public abstract BatchDeleter createBatchDeleter(String tableName,
                                                           Authorizations authorizations,
                                                           int numQueryThreads,
                                                           long maxMemory,
                                                           long maxLatency,
                                                           int maxWriteThreads)
                                         throws TableNotFoundException
Deprecated. since 1.5.0; Use createBatchDeleter(String, Authorizations, int, BatchWriterConfig) instead.

Factory method to create a BatchDeleter connected to Accumulo.

Parameters:
tableName - the name of the table to query and delete from
authorizations - A set of authorization labels that will be checked against the column visibility of each key in order to filter data. The authorizations passed in must be a subset of the accumulo user's set of authorizations. If the accumulo user has authorizations (A1, A2) and authorizations (A2, A3) are passed, then an exception will be thrown.
numQueryThreads - the number of concurrent threads to spawn for querying
maxMemory - size in bytes of the maximum memory to batch before writing
maxLatency - size in milliseconds; set to 0 or Long.MAX_VALUE to allow the maximum time to hold a batch before writing
maxWriteThreads - the maximum number of threads to use for writing data to the tablet servers
Returns:
BatchDeleter object for configuring and deleting
Throws:
TableNotFoundException - when the specified table doesn't exist

createBatchDeleter

public abstract BatchDeleter createBatchDeleter(String tableName,
                                                Authorizations authorizations,
                                                int numQueryThreads,
                                                BatchWriterConfig config)
                                         throws TableNotFoundException
Parameters:
tableName - the name of the table to query and delete from
authorizations - A set of authorization labels that will be checked against the column visibility of each key in order to filter data. The authorizations passed in must be a subset of the accumulo user's set of authorizations. If the accumulo user has authorizations (A1, A2) and authorizations (A2, A3) are passed, then an exception will be thrown.
numQueryThreads - the number of concurrent threads to spawn for querying
config - configuration used to create batch writer
Returns:
BatchDeleter object for configuring and deleting
Throws:
TableNotFoundException
Since:
1.5.0

createBatchWriter

@Deprecated
public abstract BatchWriter createBatchWriter(String tableName,
                                                         long maxMemory,
                                                         long maxLatency,
                                                         int maxWriteThreads)
                                       throws TableNotFoundException
Deprecated. since 1.5.0; Use createBatchWriter(String, BatchWriterConfig) instead.

Factory method to create a BatchWriter connected to Accumulo.

Parameters:
tableName - the name of the table to insert data into
maxMemory - size in bytes of the maximum memory to batch before writing
maxLatency - time in milliseconds; set to 0 or Long.MAX_VALUE to allow the maximum time to hold a batch before writing
maxWriteThreads - the maximum number of threads to use for writing data to the tablet servers
Returns:
BatchWriter object for configuring and writing data to
Throws:
TableNotFoundException - when the specified table doesn't exist

createBatchWriter

public abstract BatchWriter createBatchWriter(String tableName,
                                              BatchWriterConfig config)
                                       throws TableNotFoundException
Factory method to create a BatchWriter connected to Accumulo.

Parameters:
tableName - the name of the table to insert data into
config - configuration used to create batch writer
Returns:
BatchWriter object for configuring and writing data to
Throws:
TableNotFoundException
Since:
1.5.0

createMultiTableBatchWriter

@Deprecated
public abstract MultiTableBatchWriter createMultiTableBatchWriter(long maxMemory,
                                                                             long maxLatency,
                                                                             int maxWriteThreads)
Deprecated. since 1.5.0; Use createMultiTableBatchWriter(BatchWriterConfig) instead.

Factory method to create a Multi-Table BatchWriter connected to Accumulo. Multi-table batch writers can queue data for multiple tables, which is good for ingesting data into multiple tables from the same source

Parameters:
maxMemory - size in bytes of the maximum memory to batch before writing
maxLatency - size in milliseconds; set to 0 or Long.MAX_VALUE to allow the maximum time to hold a batch before writing
maxWriteThreads - the maximum number of threads to use for writing data to the tablet servers
Returns:
MultiTableBatchWriter object for configuring and writing data to

createMultiTableBatchWriter

public abstract MultiTableBatchWriter createMultiTableBatchWriter(BatchWriterConfig config)
Factory method to create a Multi-Table BatchWriter connected to Accumulo. Multi-table batch writers can queue data for multiple tables. Also data for multiple tables can be sent to a server in a single batch. Its an efficient way to ingest data into multiple tables from a single process.

Parameters:
config - configuration used to create multi-table batch writer
Returns:
MultiTableBatchWriter object for configuring and writing data to
Since:
1.5.0

createScanner

public abstract Scanner createScanner(String tableName,
                                      Authorizations authorizations)
                               throws TableNotFoundException
Factory method to create a Scanner connected to Accumulo.

Parameters:
tableName - the name of the table to query data from
authorizations - A set of authorization labels that will be checked against the column visibility of each key in order to filter data. The authorizations passed in must be a subset of the accumulo user's set of authorizations. If the accumulo user has authorizations (A1, A2) and authorizations (A2, A3) are passed, then an exception will be thrown.
Returns:
Scanner object for configuring and querying data with
Throws:
TableNotFoundException - when the specified table doesn't exist

createConditionalWriter

public abstract ConditionalWriter createConditionalWriter(String tableName,
                                                          ConditionalWriterConfig config)
                                                   throws TableNotFoundException
Factory method to create a ConditionalWriter connected to Accumulo.

Parameters:
tableName - the name of the table to query data from
config - configuration used to create conditional writer
Returns:
ConditionalWriter object for writing ConditionalMutations
Throws:
TableNotFoundException - when the specified table doesn't exist
Since:
1.6.0

getInstance

public abstract Instance getInstance()
Accessor method for internal instance object.

Returns:
the internal instance object

whoami

public abstract String whoami()
Get the current user for this connector

Returns:
the user name

tableOperations

public abstract TableOperations tableOperations()
Retrieves a TableOperations object to perform table functions, such as create and delete.

Returns:
an object to manipulate tables

namespaceOperations

public abstract NamespaceOperations namespaceOperations()
Retrieves a NamespaceOperations object to perform namespace functions, such as create and delete.

Returns:
an object to manipulate namespaces

securityOperations

public abstract SecurityOperations securityOperations()
Retrieves a SecurityOperations object to perform user security operations, such as creating users.

Returns:
an object to modify users and permissions

instanceOperations

public abstract InstanceOperations instanceOperations()
Retrieves an InstanceOperations object to modify instance configuration.

Returns:
an object to modify instance configuration


Copyright © 2015 Apache Accumulo Project. All rights reserved.