I must apologize for my C++-centrist view of the world -- note that we do have a query engine project in the codebase already, in Rust
https://github.com/apache/arrow/tree/master/rust/datafusion Andy has developed a SQL front end for DataFusion that I think is partially contained in https://github.com/andygrove/sqlparser-rs On Sun, Jul 14, 2019 at 4:56 PM Wes McKinney <wesmck...@gmail.com> wrote: > > hi Doug, > > Gandiva has a much narrower scope of functionality than what you're > looking for. It generates optimized computational "kernels" that can > be used inside of query engine runtime. > > Let's consider a SQL query like: > > SELECT YEAR(a), MONTH(b), DAY(c), log(d - 1) > FROM table > WHERE e < 5 & f > 10 > > Gandiva is responsible for creating compiled functions that > efficiently evaluate the parts of the SELECT and WHERE block of the > query. The other parts of the SQL engine: > > * Materializing row batches from "table" > * Performing the projection in the SELECT part on each batch > * Filtering rows based on the WHERE predicate > > that's up to you. We are discussing developing a query engine in > Apache Arrow, but we need more developers in the project in all areas > to make faster progress > > https://docs.google.com/document/d/10RoUZmiMQRi_J1FcPeVAUAMJ6d_ZuiEbaM2Y33sNPu4/edit?usp=sharing > > - Wes > > On Sun, Jul 14, 2019 at 4:19 PM Doug Friedman <dfrie...@gmail.com> wrote: > > > > Hello- > > > > I have a feeling this question will have a painfully simple answer so I > > apologize in advance: > > > > I am interested in the Gandiva portion of the apache arrow project, as a > > SQL-like interface to arrow data. I browsed the source code and I see a > > lot relating to building and evaluating expression trees, but I cannot find > > anywhere where the Parser/Lexer frontend is defined. I'm also looking for > > a binary/executable interface where I could evaluate a string expression in > > the Gandiva language against some arrow data. > > > > Am i sorely mistaken about the purpose of this sub-project? Or am I > > missing something quite obvious? > > > > Thank you, and thanks for creating this excellent project.