[ https://issues.apache.org/jira/browse/ARROW-4502?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Rok Mihevc updated ARROW-4502: ------------------------------ External issue URL: https://github.com/apache/arrow/issues/21054 > [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 > Priority: Major > Labels: performance, pull-request-available > Fix For: 0.13.0 > > Original Estimate: 48h > Time Spent: 8h 20m > Remaining Estimate: 0h > > 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 (v8.20.10#820010)