trinity.buffer package

Subpackages

Submodules

Module contents

class trinity.buffer.BufferReader[source]

Bases: ABC

Interface of the buffer reader.

abstract read(batch_size: int | None = None, strategy: ReadStrategy | None = None) List[source]

Read from buffer.

abstract async read_async(batch_size: int | None = None, strategy: ReadStrategy | None = None) List[source]

Read from buffer asynchronously.

class trinity.buffer.BufferWriter[source]

Bases: ABC

Interface of the buffer writer.

abstract write(data: List) None[source]

Write to buffer.

abstract async write_async(data: List) None[source]

Write to buffer asynchronously.

abstract async acquire() int[source]

Acquire the buffer writer.

Returns:

The reference count of the buffer after acquiring.

Return type:

int

abstract async release() int[source]

Release the buffer writer. After release, the buffer writer can not be used again.

Returns:

The reference count of the buffer after releasing.

Return type:

int

trinity.buffer.get_buffer_reader(storage_config: StorageConfig, buffer_config: BufferConfig) BufferReader[source]

Get a buffer reader for the given dataset name.

trinity.buffer.get_buffer_writer(storage_config: StorageConfig, buffer_config: BufferConfig) BufferWriter[source]

Get a buffer writer for the given dataset name.