Jorge created ARROW-10109:
-----------------------------

             Summary: [Rust] Add support to produce and consume a C Data 
interface
                 Key: ARROW-10109
                 URL: https://issues.apache.org/jira/browse/ARROW-10109
             Project: Apache Arrow
          Issue Type: New Feature
          Components: Rust
            Reporter: Jorge
            Assignee: Jorge
             Fix For: 3.0.0


The goal of this issue is to support importing C Data arrays into Rust via 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)

Reply via email to