Repository navigation
|
I'm proficient in other languages but I'm not very familiar with Rust, wanting to learn it. My use-case is likely a good starting point for using existing code to add functionality. I'll use https://doc.rust-lang.org/stable/book/ as a reference for coding standards. What I'm asking for help with is for gotchas or advice on best practices in where I'm trying to go with this. I'd like to be able to add a simple filters to Initially (in)equality is my first "need", since I'm trying to remove specific IDs from one field. I'd love to be able to support a set of simple/basic filters, and if easy I'll extend into sets, missingness, etc.
(Perhaps saying "SQL-like filter" might be sufficient for many things, I'm sure I'm missing something in that comparison :-) I am not familiar with the Rust ecosystem, if bringing in another dependency to easily support this (such as parsing of my SQL-like code above) is required, I'll learn that. Ultimately, I'm hoping for advice from experienced arrow/parquet users/rustaceans along these lines:
If I'm even partially successful, I'm happy to submit a PR for inclusion here if others find value in this, but it's not a requirement for me (local use only). (Due to my lack of experience with rust, a good review from others would certainly be justified.) |
Replies: 1 comment
|
A lot of these points seem like they'd be more fitting for a query engine such as DataFusion, which I believe would implement most of these things (filter pushdown, coercion of types, etc.) Rather than adding more logic to parquet-rewrite it might be worth exploring if the same can be achieved with DataFusion |
A lot of these points seem like they'd be more fitting for a query engine such as DataFusion, which I believe would implement most of these things (filter pushdown, coercion of types, etc.)
Rather than adding more logic to parquet-rewrite it might be worth exploring if the same can be achieved with DataFusion