Eric Erhardt created ARROW-4502:
-----------------------------------

             Summary: [C#] Add support for zero-copy reads
                 Key: ARROW-4502
                 URL: https://issues.apache.org/jira/browse/ARROW-4502
             Project: Apache Arrow
          Issue Type: Improvement
          Components: C#
            Reporter: Eric Erhardt
            Assignee: Eric Erhardt


In the Python (and C++) API, you can create a `RecordBatchStreamReader`, and if 
you give it an `InputStream` that supports zero-copy reads, you can get back 
`RecordBatch` objects without allocating new memory and copying all the data.

There is currently no way to read Arrow RecordBatch instances without 
allocating new memory and copying all the data. We should enable this scenario 
in the C# API.

 

My proposal is to create a new `class ArrowRecordBatchReader : IArrowReader`. 
It's constructor will take a `ReadOnlyMemory<byte> data` parameter, and it will 
be able to read `RecordBatch` instances just like the existing 
`ArrowStreamReader`. As part of this new class, we will refactor any common 
code out of `ArrowStreamReader` in order for the parsing logic to be shared, 
where necessary.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to