You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Jorge (Jira)" <ji...@apache.org> on 2020/09/27 14:35:00 UTC

[jira] [Updated] (ARROW-10109) [Rust] Add support to produce a C Data interface

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

Jorge updated ARROW-10109:
--------------------------
    Summary: [Rust] Add support to produce a C Data interface  (was: [Rust] Add support to produce and consume a C Data interface)

> [Rust] Add support to produce 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
>            Priority: Major
>             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)