Package oracle.kv.hadoop.table

# Class TableInputSplit

java.lang.Object
org.apache.hadoop.mapreduce.InputSplit
oracle.kv.hadoop.table.TableInputSplit

All Implemented Interfaces:
  `Writable`

public class TableInputSplit extends InputSplit implements Writable
Concrete implementation of the InputSplit interface required to perform Hadoop MapReduce. A RecordReader will take instances of this class, where each such instance corresponds to data stored in an Oracle NoSQL Database store, and use those instances to retrieve that data when performing the MapReduce job.

Since:
  3.1

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `EMPTY_STR`
  `static final int`
  `QUERY_BY_INDEX`
  `static final int`
  `QUERY_BY_ONQL_ALL_PARTITIONS`
  `static final int`
  `QUERY_BY_ONQL_SHARDS`
  `static final int`
  `QUERY_BY_ONQL_SINGLE_PARTITION`
  `static final int`
  `QUERY_BY_PRIMARY_ALL_PARTITIONS`
  `static final int`
  `QUERY_BY_PRIMARY_SINGLE_PARTITION`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `TableInputSplit()`
  No-arg constructor required by Hadoop semantics.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `equals(Object obj)`
  `String[]`
  `getKVHelperHosts()`
  Returns a String array with elements of the form, '<hostname:port>'; where each elment specifies the connection information for each of store's helper hosts.
  `String`
  `getKVStoreName()`
  Returns the name of the store containing the records associated with this split.
  `long`
  `getLength()`
  Get the size of the split, so that the input splits can be sorted by size.
  `String[]`
  `getLocations()`
  Get the list of nodes by name where the data for the split would be local.
  `List<Set<Integer>>`
  `getPartitionSets()`
  Returns a `List` whose elements are `Set`s of partitions; whose union is the set of all partitions in the store.
  `int`
  `getQueryBy()`
  `PasswordCredentials`
  `getSecurityCredentials()`
  `String`
  `getSecurityLogin()`
  `String`
  `getSecurityTrust()`
  `Set<oracle.kv.impl.topo.RepGroupId>`
  `getShardSet()`
  `String`
  `getTableName()`
  `String`
  `getWhereClause()`
  `int`
  `hashCode()`
  `void`
  `readFields(DataInput in)`
  Deserialize the fields of this object from `in`.
  `TableInputSplit`
  `setQueryInfo(int newQueryBy, String whereClause)`
  `String`
  `toString()`
  `void`
  `write(DataOutput out)`
  Serialize the fields of this object to `out`.

  ### Methods inherited from class org.apache.hadoop.mapreduce.InputSplit

  `getLocationInfo`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### QUERY_BY_PRIMARY_ALL_PARTITIONS

    public static final int QUERY_BY_PRIMARY_ALL_PARTITIONS
    See Also:
      - Constant Field Values

  - ### QUERY_BY_PRIMARY_SINGLE_PARTITION

    public static final int QUERY_BY_PRIMARY_SINGLE_PARTITION
    See Also:
      - Constant Field Values

  - ### QUERY_BY_INDEX

    public static final int QUERY_BY_INDEX
    See Also:
      - Constant Field Values

  - ### QUERY_BY_ONQL_ALL_PARTITIONS

    public static final int QUERY_BY_ONQL_ALL_PARTITIONS
    See Also:
      - Constant Field Values

  - ### QUERY_BY_ONQL_SINGLE_PARTITION

    public static final int QUERY_BY_ONQL_SINGLE_PARTITION
    See Also:
      - Constant Field Values

  - ### QUERY_BY_ONQL_SHARDS

    public static final int QUERY_BY_ONQL_SHARDS
    See Also:
      - Constant Field Values

  - ### EMPTY_STR

    public static final String EMPTY_STR
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### TableInputSplit

    public TableInputSplit()
    No-arg constructor required by Hadoop semantics.

- ## Method Details

  - ### getLength

    public long getLength()
    Get the size of the split, so that the input splits can be sorted by size.
    Specified by:
      `getLength` in class `InputSplit`
    Returns:
      the number of bytes in the split

  - ### getLocations

    public String[] getLocations()
    Get the list of nodes by name where the data for the split would be local. The locations do not need to be serialized.
    Specified by:
      `getLocations` in class `InputSplit`
    Returns:
      a new array of the node nodes.

  - ### getKVHelperHosts

    public String[] getKVHelperHosts()
    Returns a String array with elements of the form, '<hostname:port>'; where each elment specifies the connection information for each of store's helper hosts.

  - ### getKVStoreName

    public String getKVStoreName()
    Returns the name of the store containing the records associated with this split.

  - ### getTableName

    public String getTableName()

  - ### getPartitionSets

    public List<Set<Integer>> getPartitionSets()
    Returns a `List` whose elements are `Set`s of partitions; whose union is the set of all partitions in the store.

  - ### setQueryInfo

    public TableInputSplit setQueryInfo(int newQueryBy, String whereClause)

  - ### getQueryBy

    public int getQueryBy()

  - ### getWhereClause

    public String getWhereClause()

  - ### getShardSet

    public Set<oracle.kv.impl.topo.RepGroupId> getShardSet()

  - ### getSecurityLogin

    public String getSecurityLogin()

  - ### getSecurityCredentials

    public PasswordCredentials getSecurityCredentials()

  - ### getSecurityTrust

    public String getSecurityTrust()

  - ### write

    public void write(DataOutput out) throws IOException
    Serialize the fields of this object to `out`.
    Specified by:
      `write` in interface `Writable`
    Parameters:
      `out` - `DataOuput` to serialize this object into.
    Throws:
      `IOException` - if an I/O error occurs

  - ### readFields

    public void readFields(DataInput in) throws IOException
    Deserialize the fields of this object from `in`.

    For efficiency, implementations should attempt to re-use storage in the existing object where possible.

    Specified by:
      `readFields` in interface `Writable`
    Parameters:
      `in` - `DataInput` to deseriablize this object from.
    Throws:
      `IOException` - if an I/O error occurs

  - ### equals

    public boolean equals(Object obj)
    Overrides:
      `equals` in class `Object`

  - ### hashCode

    public int hashCode()
    Overrides:
      `hashCode` in class `Object`

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`