Expand description
§tiders-query
Arrow RecordBatch query engine with row filtering, column projection, and cross-table joins.
This crate operates on BTreeMap<String, RecordBatch> where keys are table names
(e.g. “blocks”, “transactions”, “logs”). It supports:
- Row filtering via
Contains(set membership) andStartsWith(prefix matching). - Column projection via
select_fields. - Cross-table joins via
Include, which filters rows in one table based on matching column values in another.
Filtering uses xxhash3 for fast hash-table lookups (for sets >= 128 elements) and rayon for parallel execution across tables and selections.
Structs§
- Contains
- Set membership filter backed by a hash table for fast lookups.
- Include
- Defines a cross-table join: after filtering the source table, include rows from
other_table_namewhoseother_table_field_namescolumns match the source table’sfield_namescolumns. - Query
- A query definition specifying which rows and columns to return from a set of tables.
- Starts
With - Prefix matching filter for binary and string columns.
- Table
Selection - A single selection rule for one table: column filters (AND-combined) plus cross-table join includes.
Enums§
- Filter
- A row-level filter applied to a single column.
Functions§
- run_
query - Executes a query against a set of named tables, returning filtered and projected results.
- select_
fields - Projects each table to include only the specified columns.