wjones127 commented on PR #3582:
URL: https://github.com/apache/arrow-rs/pull/3582#issuecomment-1408946429

   > Can you confirm that the usecase of this project (adbc in arrow-rs) is to 
make it easier for users to implement (in Rust) the ADBC interface for a 
specific database)?
   
   There are two use cases for this project, but this PR will only add the 
first:
   
    1. Implement ADBC drivers as an interface for querying a particular 
database.
    2. (Not for this PR) Provide a driver manager, that allows loading and 
using an ADBC driver. ADBC drivers can either be initialized from a specific 
function (if statically linking to a particular driver) or by dynamically 
loading the init function (if dynamically loading drivers).
   
   I am starting with the first since that's my use case, but will probably add 
the second in a follow-up soon because it makes testing a lot easier. 😄 
   
   > It seems this is likely the most useful for databases that were already 
implemented in Rust and thus their "native" client drivers and codebase are 
written in Rust as well (for example GreptimeDB, IOx, and Ballista).
   
   Yes, but except for in-memory ones, there's not a hard rule that you have to 
write the client in the same language as the server. The main requirement is 
that the language can produce dynamic libraries, which I think excludes Java 
for example. The recommended stack for an Arrow-native database is use ADBC as 
the client-facing API, and the client-server communication in FlightSQL.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to