hi Miki, Steps
* Convert the Table to a sequence of RecordBatch objects. You can use arrow::TableBatchReader to do this [1] * Write a stream using MockOutputStream [2] * Use the reported size of the total stream to allocate memory in Plasma * Write a real stream using arrow::io::FixedSizeBufferWriter I'm interested at some point to reduce the amount of boilerplate associated with this process, and also to avoid multiple metadata serialization and record batch disassembly steps. I'll open a JIRA issue We'd be delighted if you would contribute to the C++ documentation at https://github.com/apache/arrow/tree/master/docs/source/cpp - Wes [1]: https://github.com/apache/arrow/blob/master/cpp/src/arrow/table.h#L340 [2]: https://github.com/apache/arrow/blob/7a5562174cffb21b16f990f64d114c1a94a30556/cpp/src/arrow/io/memory.h#L89 On Mon, May 20, 2019 at 7:24 AM Miki Tebeka <[email protected]> wrote: > > Hi, > > I'm looking for an example on how to store/retrieve a an arrow::Table in > plasma. The examples I see in the documentation site are for basic types. > > My end goal is to create data (Table) in C++, store it in plasma and read if > from Python. > > From reading around, I need to allocate buffer in plasma, but how can I find > the size of the Table to allocate the table? And how can I serialize it into > the created Buffer? > > Thanks, > Miki
