Expand description
Lookup table support for enrichment joins.
§External Lookup Tables for Enrichment Joins
This module provides the TableLoader trait for loading data from external
reference tables (dimension tables) to enrich streaming events.
§Architecture
┌─────────────────────────────────────────────────────────────┐
│ LookupJoinOperator │
│ (laminar-core) │
│ ┌─────────┐ ┌─────────┐ ┌─────────────────────────┐ │
│ │ Event │───▶│ Cache │───▶│ Output (enriched) │ │
│ │ Stream │ │ (State) │ │ │ │
│ └─────────┘ └────┬────┘ └─────────────────────────┘ │
│ │ miss │
│ ▼ │
│ ┌─────────────┐ │
│ │ TableLoader │ (trait, implemented here) │
│ └──────┬──────┘ │
└──────────────────────┼──────────────────────────────────────┘
│
▼
┌──────────────────────┐
│ External Systems │
│ (Redis, PostgreSQL, │
│ HTTP APIs, etc.) │
└──────────────────────┘§Implementations
InMemoryTableLoader- For testing and static reference data- Redis, PostgreSQL, HTTP loaders
Re-exports§
pub use postgres_source::PostgresLookupSource;pub use postgres_source::PostgresLookupSourceConfig;pub use parquet_source::ParquetLookupSource;pub use parquet_source::ParquetLookupSourceConfig;
Modules§
- cdc_
adapter - CDC-to-reference-table adapter for using CDC sources as lookup tables. CDC-to-reference-table adapter.
- parquet_
source - Parquet file lookup source for static/slowly-changing dimension tables. Parquet file lookup source.
- postgres_
source - PostgreSQL lookup source with connection pooling and predicate pushdown.
PostgreSQLlookup source implementation.
Structs§
- NoOp
Table Loader - A no-op table loader that always returns
NotFound.
Enums§
- Lookup
Error - Errors that can occur during table lookup operations.
- Lookup
Result - Result of a lookup operation.
Traits§
- Table
Loader - Trait for loading data from external reference tables.