[ 
https://issues.apache.org/jira/browse/ARROW-474?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rok Mihevc updated ARROW-474:
-----------------------------
    External issue URL: https://github.com/apache/arrow/issues/16118

> Create an Arrow streaming file fomat
> ------------------------------------
>
>                 Key: ARROW-474
>                 URL: https://issues.apache.org/jira/browse/ARROW-474
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: Format
>            Reporter: Nong Li
>            Assignee: Nong Li
>            Priority: Major
>             Fix For: 0.2.0
>
>
> It would be helpful to have a file/container layout that allows for streaming 
> consumer and producers of arrow data.
> As a motivating example, a reader could have this API:
> Iterator<Record> read(java.io.InputStream source). 
> Similar a writer can have:
> void write(RecordBatch, java.io.OutputStream dest)
> The streams can be from a variety of sources: it be files, over the network, 
> shared memory, pipe, etc. The layout would make it possible to implement
> both APIs without requiring intermediate buffering. 
> Speaking with Julien, this involves creating a simple container format 
> similar to ARROW-264 but suitable for streaming consumer and producers. The 
> layout in ARROW-264 has the schema at the end so can't be used in a streaming 
> way. This format would likely be a rearranging of the current File layout 
> pieces, something similar to:
> MAGIC, schema, totalBatches, (RecordBatchHeader, RecordBatchBody)*, MAGIC (or 
> some end marker)
> totalBatches is optional for streaming producers that don't know.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to