Kinetica   C#   API  Version 7.2.3.1
RecordRetriever< T > Class Template Reference

Object that permits efficient retrieval of records from GPUdb, with support More...

+ Collaboration diagram for RecordRetriever< T >:

Public Member Functions

 RecordRetriever (Kinetica kdb, string table_name, KineticaType ktype, WorkerList? workers=null)
 Create a RecordRetriever object with the given parameters. More...
 
GetRecordsResponse< T > getRecordsByKey (T record, string? expression=null)
 Retrieves records for a given shard key, optionally further limited by an additional expression. More...
 

Public Attributes

Kinetica KineticaDB => _kinetica
 Gets the Kinetica connection. More...
 
string TableName => _tableName
 Gets the table name. More...
 
int NumClusterSwitches => _numClusterSwitches
 Gets the number of cluster switches due to HA failover. More...
 
int HARingSize => _dbHaRingSize
 Gets the HA ring size. More...
 

Detailed Description

Object that permits efficient retrieval of records from GPUdb, with support

for multi-head access and HA failover.

RecordRetriever instances are thread safe and may be used from any number of threads simultaneously.

This implementation matches the Rust RecordRetriever with full HA support.

Template Parameters
TThe type of object being retrieved.
Type Constraints
T :new() 

Definition at line 19 of file RecordRetriever.cs.

Constructor & Destructor Documentation

◆ RecordRetriever()

RecordRetriever< T >.RecordRetriever ( Kinetica  kdb,
string  table_name,
KineticaType  ktype,
WorkerList workers = null 
)
inline

Create a RecordRetriever object with the given parameters.

Parameters
kdbThe Kinetica connection.
table_nameThe table name to retrieve from.
ktypeThe KineticaType for the table.
workersOptional worker list for multi-head retrieval.

Definition at line 81 of file RecordRetriever.cs.

Member Function Documentation

◆ getRecordsByKey()

GetRecordsResponse<T> RecordRetriever< T >.getRecordsByKey ( record,
string?  expression = null 
)
inline

Retrieves records for a given shard key, optionally further limited by an additional expression.

All records matching the key and satisfying the expression will be returned, up to the system-defined limit. For multi-head mode the request will be sent directly to the appropriate worker.

Parameters
recordThe record based on whose shard column values records will be fetched from the table.
expressionAn optional expression. Default is null.
Returns
A GetRecordsResponse object with the decoded retrieved values.

Definition at line 360 of file RecordRetriever.cs.

Member Data Documentation

◆ HARingSize

int RecordRetriever< T >.HARingSize => _dbHaRingSize

Gets the HA ring size.

Definition at line 68 of file RecordRetriever.cs.

◆ KineticaDB

Kinetica RecordRetriever< T >.KineticaDB => _kinetica

Gets the Kinetica connection.

Definition at line 53 of file RecordRetriever.cs.

◆ NumClusterSwitches

int RecordRetriever< T >.NumClusterSwitches => _numClusterSwitches

Gets the number of cluster switches due to HA failover.

Definition at line 63 of file RecordRetriever.cs.

◆ TableName

string RecordRetriever< T >.TableName => _tableName

Gets the table name.

Definition at line 58 of file RecordRetriever.cs.


The documentation for this class was generated from the following file: