[
https://issues.apache.org/jira/browse/ARROW-10110?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jorge Leitão resolved ARROW-10110.
----------------------------------
Resolution: Fixed
Addressed by
[1d2b4a5|https://github.com/apache/arrow/commit/1d2b4a55770fa4dbe24959b3b40c745964c3184e]
> [Rust] Add support to consume C Data Interface
> ----------------------------------------------
>
> Key: ARROW-10110
> URL: https://issues.apache.org/jira/browse/ARROW-10110
> Project: Apache Arrow
> Issue Type: New Feature
> Components: Rust
> Reporter: Jorge Leitão
> Assignee: Jorge Leitão
> Priority: Major
> Labels: pull-request-available
> Fix For: 3.0.0
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> The goal of this issue is to support consuming C Data arrays from Rust using
> FFI.
> The use-case that motivated this issue was the possibility of running
> DataFusion from Python and support moving arrays from DataFusion to
> Python/Pyarray and vice-versa.
> In particular, so that users can write Python UDFs that expect arrow arrays
> and return arrow arrays, in the same spirit as pandas-udfs in Spark work for
> Pandas.
> The brute-force way of writing these arrays is by converting element by
> element from and to native types. The efficient way of doing it to pass the
> memory address from and to each implementation, which is zero-copy.
> To support the latter, we need an FFI implementation in Rust that produces
> and consumes [C's Data
> interface|https://arrow.apache.org/docs/format/CDataInterface.html]
--
This message was sent by Atlassian Jira
(v8.3.4#803005)