Static contextual data
Enrich events with essential slow changing data from Joule’s in-memory database.
Last updated
Was this helpful?
Enrich events with essential slow changing data from Joule’s in-memory database.
Last updated
Was this helpful?
The enricher enables users to enhance events with multiple data elements through advanced mapping.
Slow-moving contextual data such as
Customer information (i.e. subscriptions, product interactions)
Contract pricing
Product skews
Daily prices
Financial market data such as; FX rates, interest rates, start of day market index levels etc;.
Complex engineered ML features
are essential for rule-based triggers in business functions.
Joule supports this by using its internal database and allowing data import during the initialisation process (see for details).
There are various uses for this filter such as:
In retail Utilise static discount rules and seasonal pricing stored in the in-memory database to automatically apply the latest price adjustments to product events, supporting personalised promotions.
In financial services Leverage exchange rate data by querying an in-memory database, enabling real-time currency conversion and accurate, timely financial calculations in customer-facing apps.
In transportation Enrich vehicle routing events with fuel price data stored in-memory to enable efficient route adjustments based on the latest fuel costs, supporting cost-effective logistics.
Joule's architecture for handling static contextual data relies on its internal database, with data imported during the initialisation phase.
This code defines an enricher that enhances events with data from the JouleDB
using SQL queries. There are three enrichment strategies:
with_values
Retrieves the exchange_rate
for a given symbol
using a SQL query from the fx_rates
table.
as_object
Retrieves all details as an object for a given symbol
from the fx_rates
table.
all_attributes
Retrieves all attributes for a given symbol
from the fx_rates
table.
Each enrichment uses a query with symbol
as the key to fetch data from the JouleDB
store.
To direct the enricher to use Joule's in-memory database apply the setting to the using
DSL attribute.
using: JouleDB
Directs processor to bind to the in-memory Joule database. No further storage configuration is required.
String
Not supported: The attribute is not supported when using the Joule in-memory database.