pyarrow.plasma.PlasmaBuffer

class pyarrow.plasma.PlasmaBuffer

Bases: pyarrow.lib.Buffer

This is the type returned by calls to get with a PlasmaClient.

We define our own class instead of directly returning a buffer object so that we can add a custom destructor which notifies Plasma that the object is no longer being used, so the memory in the Plasma store backing the object can potentially be freed.

object_id

The ID of the object in the buffer.

Type:ObjectID
client

The PlasmaClient that we use to communicate with the store and manager.

Type:PlasmaClient
__init__()

Initialize self. See help(type(self)) for accurate signature.

Methods

equals(self, Buffer other) Determine if two buffers contain exactly the same data.
slice(self[, offset, length]) Slice this buffer.
to_pybytes(self) Return this buffer as a Python bytes object.

Attributes

address The buffer’s address, as an integer.
is_mutable Whether the buffer is mutable.
parent
size The buffer size in bytes.
address

The buffer’s address, as an integer.

equals(self, Buffer other)

Determine if two buffers contain exactly the same data.

Parameters:other (Buffer) –
Returns:are_equal (True if buffer contents and size are equal)
is_mutable

Whether the buffer is mutable.

parent
size

The buffer size in bytes.

slice(self, offset=0, length=None)

Slice this buffer. Memory is not copied.

You can also use the Python slice notation buffer[start:stop].

Parameters:
  • offset (int, default 0) – Offset from start of buffer to slice
  • length (int, default None) – Length of slice (default is until end of Buffer starting from offset)
Returns:

sliced (Buffer) – A logical view over this buffer.

to_pybytes(self)

Return this buffer as a Python bytes object. Memory is copied.