It's slower than the PostgreSQL protocol.
The followings may be related but we need to look into it:
- Building
arrow::RecordBatch is slow?
- We need to build
arrow::RecordBatches to use arrow::ipc::RecordBatchWriter(). We need to copy PostgreSQL data for it. (Not zero-copy.)
- Should we add an API that writes Apache Arrow streaming format data without building
arrow::RecordBatch to Apache Arrow C++?
- Calling
SPI_getbinval() is slow?
It's slower than the PostgreSQL protocol.
The followings may be related but we need to look into it:
arrow::RecordBatchis slow?arrow::RecordBatches to usearrow::ipc::RecordBatchWriter(). We need to copy PostgreSQL data for it. (Not zero-copy.)arrow::RecordBatchto Apache Arrow C++?SPI_getbinval()is slow?nocachegetattr()https://github.com/postgres/postgres/blob/3edc6580c0e27fb8f13322efd255a88d20dda6c2/src/backend/access/common/heaptuple.c#L496-L712 and it's not a short function. Can we shortcut some operations?