C++ YT Wrapper
C++ library for working with YT clusters
Loading...
Searching...
No Matches
NYT::IClientBase Class Referenceabstract

Base class for NYT::IClient and NYT::ITransaction. More...

#include <client.h>

Inheritance diagram for NYT::IClientBase:
NYT::ICypressClient NYT::IIOClient NYT::IOperationClient NYT::IClient NYT::ITransaction

Public Member Functions

virtual ITransactionPtr StartTransaction (const TStartTransactionOptions &options=TStartTransactionOptions())=0
 Start a [transaction] (https://ytsaurus.tech/docs/en/user-guide/storage/transactions.html#master_transactions).
virtual TDistributedWriteFileSessionWithCookies StartDistributedWriteFileSession (const TRichYPath &richPath, i64 cookieCount, const TStartDistributedWriteFileOptions &options={})=0
 Initialize distributed file session and request cookies for participants.
virtual TDistributedWriteTableSessionWithCookies StartDistributedWriteTableSession (const TRichYPath &richPath, i64 cookieCount, const TStartDistributedWriteTableOptions &options={})=0
 Initialize distributed table session and request cookies for participants.
virtual void AlterTable (const TYPath &path, const TAlterTableOptions &options=TAlterTableOptions())=0
 Change properties of table.
virtual TBatchRequestPtr CreateBatchRequest ()=0
 Create batch request object that allows to execute several light requests in parallel.
virtual IClientPtr GetParentClient (bool ignoreGlobalTx=false)=0
 Get root client.
Public Member Functions inherited from NYT::ICypressClient
virtual TNodeId Create (const TYPath &path, ENodeType type, const TCreateOptions &options=TCreateOptions())=0
 Create Cypress node of given type.
template<typename TRowType>
TNodeId CreateTable (const TYPath &path, const TSortColumns &sortColumns=TSortColumns(), const TCreateOptions &options=TCreateOptions())
 Create table with schema inferred from the template argument.
virtual void Remove (const TYPath &path, const TRemoveOptions &options=TRemoveOptions())=0
 Remove Cypress node.
virtual bool Exists (const TYPath &path, const TExistsOptions &options=TExistsOptions())=0
 Check if Cypress node exists.
virtual TNode Get (const TYPath &path, const TGetOptions &options=TGetOptions())=0
 Get Cypress node contents.
virtual void Set (const TYPath &path, const TNode &value, const TSetOptions &options=TSetOptions())=0
 Set Cypress node contents.
virtual void MultisetAttributes (const TYPath &path, const TNode::TMapType &attributes, const TMultisetAttributesOptions &options=TMultisetAttributesOptions())=0
 Set multiple attributes for cypress path.
virtual TNode::TListType List (const TYPath &path, const TListOptions &options=TListOptions())=0
 List Cypress map or attribute node keys.
virtual TNodeId Copy (const TYPath &sourcePath, const TYPath &destinationPath, const TCopyOptions &options=TCopyOptions())=0
 Copy Cypress node.
virtual TNodeId Move (const TYPath &sourcePath, const TYPath &destinationPath, const TMoveOptions &options=TMoveOptions())=0
 Move Cypress node (equivalent to copy-then-remove).
virtual TNodeId Link (const TYPath &targetPath, const TYPath &linkPath, const TLinkOptions &options=TLinkOptions())=0
 Create link to Cypress node.
virtual void Concatenate (const TVector< TRichYPath > &sourcePaths, const TRichYPath &destinationPath, const TConcatenateOptions &options=TConcatenateOptions())=0
 Concatenate several tables into one.
virtual void Concatenate (const TVector< TYPath > &sourcePaths, const TYPath &destinationPath, const TConcatenateOptions &options=TConcatenateOptions())
 Concatenate several tables into one.
virtual TRichYPath CanonizeYPath (const TRichYPath &path)=0
 Canonize YPath, moving all the complex YPath features to attributes.
virtual TVector< TTableColumnarStatistics > GetTableColumnarStatistics (const TVector< TRichYPath > &paths, const TGetTableColumnarStatisticsOptions &options={})=0
 Get statistics for given sets of columns in given table ranges.
virtual TMultiTablePartitions GetTablePartitions (const TVector< TRichYPath > &paths, const TGetTablePartitionsOptions &options)=0
 Divide input tables into disjoint partitions.
virtual TFilePartitions GetFilePartitions (const TYPath &path, const TVector< TFileReadRange > &ranges, const TGetFilePartitionsOptions &options={})=0
 Split a file into partitions according to the given byte ranges.
virtual TMaybe< TYPath > GetFileFromCache (const TString &md5Signature, const TYPath &cachePath, const TGetFileFromCacheOptions &options=TGetFileFromCacheOptions())=0
 Get file from file cache.
virtual TYPath PutFileToCache (const TYPath &filePath, const TString &md5Signature, const TYPath &cachePath, const TPutFileToCacheOptions &options=TPutFileToCacheOptions())=0
 Put file to file cache.
Public Member Functions inherited from NYT::IIOClient
virtual IFileReaderPtr CreateFileReader (const TRichYPath &path, const TFileReaderOptions &options=TFileReaderOptions())=0
 Create a reader for file at path.
virtual IFileReaderPtr CreateFilePartitionReader (const TString &cookie, const TFilePartitionReaderOptions &options={})=0
 Create a reader of file partition.
virtual IFileWriterPtr CreateFileWriter (const TRichYPath &path, const TFileWriterOptions &options=TFileWriterOptions())=0
 Create a writer for file at path.
virtual IFileFragmentWriterPtr CreateFileFragmentWriter (const TDistributedWriteFileCookie &cookie, const TFileFragmentWriterOptions &options=TFileFragmentWriterOptions())=0
 Create a fragment writer for given distributed file session cookie.
template<class T>
TTableReaderPtr< T > CreateTableReader (const TRichYPath &path, const TTableReaderOptions &options=TTableReaderOptions())
 Create a typed reader for table at path.
template<class T>
TTableWriterPtr< T > CreateTableWriter (const TRichYPath &path, const TTableWriterOptions &options=TTableWriterOptions())
 Create a typed writer for table at path.
virtual TTableWriterPtr<::google::protobuf::Message > CreateTableWriter (const TRichYPath &path, const ::google::protobuf::Descriptor &descriptor, const TTableWriterOptions &options=TTableWriterOptions())=0
 Create a writer to write protobuf messages with specified descriptor.
template<class T>
ITableFragmentWriterPtr< T > CreateTableFragmentWriter (const TDistributedWriteTableCookie &cookie, const TTableFragmentWriterOptions &options={})
 Create a fragment table writer for given distributed table session cookie.
virtual TRawTableReaderPtr CreateRawReader (const TRichYPath &path, const TFormat &format, const TTableReaderOptions &options=TTableReaderOptions())=0
 Create a reader to read a table using specified format.
virtual TRawTableWriterPtr CreateRawWriter (const TRichYPath &path, const TFormat &format, const TTableWriterOptions &options=TTableWriterOptions())=0
 Create a reader to write a table using specified format.
virtual TRawTableReaderPtr CreateRawTablePartitionReader (const TString &cookie, const TFormat &format, const TTablePartitionReaderOptions &options={})=0
 Create raw reader of table partition.
template<class T>
TTableReaderPtr< T > CreateTablePartitionReader (const TString &cookie, const TTablePartitionReaderOptions &options={})
 Create reader of table partition.
virtual IFileReaderPtr CreateBlobTableReader (const TYPath &path, const TKey &blobId, const TBlobTableReaderOptions &options=TBlobTableReaderOptions())=0
 Create a reader for blob table at path.
Public Member Functions inherited from NYT::IOperationClient
IOperationPtr Map (const TMapOperationSpec &spec, ::TIntrusivePtr< IMapperBase > mapper, const TOperationOptions &options=TOperationOptions())
 Run Map operation.
IOperationPtr Map (::TIntrusivePtr< IMapperBase > mapper, const TOneOrMany< TStructuredTablePath > &input, const TOneOrMany< TStructuredTablePath > &output, const TMapOperationSpec &spec=TMapOperationSpec(), const TOperationOptions &options=TOperationOptions())
 Run Map operation.
virtual IOperationPtr RawMap (const TRawMapOperationSpec &spec, ::TIntrusivePtr< IRawJob > rawJob, const TOperationOptions &options=TOperationOptions())=0
 Run raw Map operation.
IOperationPtr Reduce (const TReduceOperationSpec &spec, ::TIntrusivePtr< IReducerBase > reducer, const TOperationOptions &options=TOperationOptions())
 Run Reduce operation.
IOperationPtr Reduce (::TIntrusivePtr< IReducerBase > reducer, const TOneOrMany< TStructuredTablePath > &input, const TOneOrMany< TStructuredTablePath > &output, const TSortColumns &reduceBy, const TReduceOperationSpec &spec=TReduceOperationSpec(), const TOperationOptions &options=TOperationOptions())
 Run Reduce operation.
virtual IOperationPtr RawReduce (const TRawReduceOperationSpec &spec, ::TIntrusivePtr< IRawJob > rawJob, const TOperationOptions &options=TOperationOptions())=0
 Run raw Reduce operation.
IOperationPtr MapReduce (const TMapReduceOperationSpec &spec, ::TIntrusivePtr< IMapperBase > mapper, ::TIntrusivePtr< IReducerBase > reducer, const TOperationOptions &options=TOperationOptions())
 Run JoinReduce operation.
IOperationPtr MapReduce (const TMapReduceOperationSpec &spec, ::TIntrusivePtr< IMapperBase > mapper, ::TIntrusivePtr< IReducerBase > reduceCombiner, ::TIntrusivePtr< IReducerBase > reducer, const TOperationOptions &options=TOperationOptions())
 Run MapReduce operation.
IOperationPtr MapReduce (::TIntrusivePtr< IMapperBase > mapper, ::TIntrusivePtr< IReducerBase > reducer, const TOneOrMany< TStructuredTablePath > &input, const TOneOrMany< TStructuredTablePath > &output, const TSortColumns &reduceBy, TMapReduceOperationSpec spec=TMapReduceOperationSpec(), const TOperationOptions &options=TOperationOptions())
 Run MapReduce operation.
IOperationPtr MapReduce (::TIntrusivePtr< IMapperBase > mapper, ::TIntrusivePtr< IReducerBase > reduceCombiner, ::TIntrusivePtr< IReducerBase > reducer, const TOneOrMany< TStructuredTablePath > &input, const TOneOrMany< TStructuredTablePath > &output, const TSortColumns &reduceBy, TMapReduceOperationSpec spec=TMapReduceOperationSpec(), const TOperationOptions &options=TOperationOptions())
 Run MapReduce operation.
virtual IOperationPtr RawMapReduce (const TRawMapReduceOperationSpec &spec, ::TIntrusivePtr< IRawJob > mapper, ::TIntrusivePtr< IRawJob > reduceCombiner, ::TIntrusivePtr< IRawJob > reducer, const TOperationOptions &options=TOperationOptions())=0
 Run raw MapReduce operation.
virtual IOperationPtr Sort (const TSortOperationSpec &spec, const TOperationOptions &options=TOperationOptions())=0
 Run Sort operation.
IOperationPtr Sort (const TOneOrMany< TRichYPath > &input, const TRichYPath &output, const TSortColumns &sortBy, const TSortOperationSpec &spec=TSortOperationSpec(), const TOperationOptions &options=TOperationOptions())
 Run Sort operation.
virtual IOperationPtr Merge (const TMergeOperationSpec &spec, const TOperationOptions &options=TOperationOptions())=0
 Run Merge operation.
virtual IOperationPtr Erase (const TEraseOperationSpec &spec, const TOperationOptions &options=TOperationOptions())=0
 Run Erase operation.
virtual IOperationPtr RemoteCopy (const TRemoteCopyOperationSpec &spec, const TOperationOptions &options=TOperationOptions())=0
 Run RemoteCopy operation.
virtual IOperationPtr RunVanilla (const TVanillaOperationSpec &spec, const TOperationOptions &options=TOperationOptions())=0
 Run Vanilla operation.
virtual void AbortOperation (const TOperationId &operationId)=0
 Abort operation.
virtual void CompleteOperation (const TOperationId &operationId)=0
 Complete operation.
virtual void WaitForOperation (const TOperationId &operationId)=0
 Wait for operation to finish.
virtual EOperationBriefState CheckOperation (const TOperationId &operationId)=0
 Check and return operation status.
virtual IOperationPtr AttachOperation (const TOperationId &operationId)=0
 Create an operation object given operation id.

Detailed Description

Base class for NYT::IClient and NYT::ITransaction.

This class contains transactional commands.

Member Function Documentation

◆ AlterTable()

virtual void NYT::IClientBase::AlterTable ( const TYPath & path,
const TAlterTableOptions & options = TAlterTableOptions() )
pure virtual

Change properties of table.

Allows to:

  • switch table between dynamic/static mode
  • or change table schema
    See also
    YT doc

◆ CreateBatchRequest()

virtual TBatchRequestPtr NYT::IClientBase::CreateBatchRequest ( )
pure virtual

Create batch request object that allows to execute several light requests in parallel.

See also
YT doc

◆ GetParentClient()

virtual IClientPtr NYT::IClientBase::GetParentClient ( bool ignoreGlobalTx = false)
pure virtual

Get root client.

Parameters
ignoreGlobalTxroot client could be created already attached to some global transaction, NYT::TConfig::GlobalTx. when ignoreGlobalTx = false original client (attached to GlobalTx) is returned when ignoreGlobalTx = true, returned client is not attached to any transaction.

TODO: rename to GetRootClient()

◆ StartDistributedWriteFileSession()

virtual TDistributedWriteFileSessionWithCookies NYT::IClientBase::StartDistributedWriteFileSession ( const TRichYPath & richPath,
i64 cookieCount,
const TStartDistributedWriteFileOptions & options = {} )
pure virtual

Initialize distributed file session and request cookies for participants.

See also
YT doc

◆ StartDistributedWriteTableSession()

virtual TDistributedWriteTableSessionWithCookies NYT::IClientBase::StartDistributedWriteTableSession ( const TRichYPath & richPath,
i64 cookieCount,
const TStartDistributedWriteTableOptions & options = {} )
pure virtual

Initialize distributed table session and request cookies for participants.

See also
YT doc

◆ StartTransaction()

virtual ITransactionPtr NYT::IClientBase::StartTransaction ( const TStartTransactionOptions & options = TStartTransactionOptions())
nodiscardpure virtual

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