Ian Cook created ARROW-13472:
--------------------------------

             Summary: [R] Redesign the UX for using the DuckDB engine
                 Key: ARROW-13472
                 URL: https://issues.apache.org/jira/browse/ARROW-13472
             Project: Apache Arrow
          Issue Type: Improvement
          Components: R
            Reporter: Ian Cook
             Fix For: 6.0.0


ARROW-12688 added:
 * A new function {{to_duckdb()}} which registers an Arrow Dataset with DuckDB 
and returns a dbplyr object that can be used in dplyr pipelines
 * An {{.engine = "duckdb"}} option in the {{summarise()}} function which calls 
{{to_duckdb()}} inside {{summarise()}}

At the moment, the latter is very convenient because {{summarise()}} is not yet 
natively supported for Arrow Datasets.

However, this {{.engine = "duckdb"}} option is probably not such a great design 
for how users should interact with the arrow package in the longer term after 
native {{summarise()}} support is added. At that point, it will seem strange 
that this one particular dplyr verb has an {{.engine}} option while the others 
do not. Adding the option to all the other dplyr verbs also seems like a poor 
UX design.

Consider whether we should ultimately have users choose whether to use the 
Arrow C++ engine or the DuckDB engine by passing an {{.engine}} argument to the 
{{collect()}} or {{compute()}} function, as [~jonkeane] suggested in these 
comments. {{collect()}} would return a tibble whereas {{compute()}} would 
return an Arrow Table.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to