Join Tables in Your Monitors
We’re excited to roll out Join support for data monitors!
You can now add joins directly in the monitor setup UI, making it easier than ever to build context-rich data quality checks that span across datasets.
✨ What You Can Do:
-
Group by columns in a joined table
Example: MonitorORDER
volume grouped byCUSTOMER_TYPE
after joining with theCUSTOMERS
table. -
Filter based on joined table values
Example: Filter out users whereCUSTOMERS.LAST_ORDERED_AT > CURRENT_DATE() - 30
. -
Flexible join key selection
Define join conditions using shared keys (e.g.,CUSTOMER_ID
) between datasets.
To get started, simply click + Add join
in the monitor setup panel, pick your table, set a join key, and build more powerful monitors in minutes!
🛠️ Data Quality as Code: Define Joins Programmatically
Prefer infrastructure as code? You can now define dataset joins in your YAML monitor definitions.
🔧 Example:
datasets:
- uri: snowflake://sifflet-internal/DEMO.TEST.AGG_CASE_WHEN
joins:
- dataset:
uri: snowflake://sifflet-internal/DEMO.TEST.ALLUSERS
joinCondition:
kind: Equality
fieldPairs:
- leftField:
dataset:
uri: snowflake://sifflet-internal/DEMO.TEST.AGG_CASE_WHEN
name: FIRSTNAME
rightField:
dataset:
uri: snowflake://sifflet-internal/DEMO.TEST.ALLUSERS
name: FIRSTNAME
You can now define:
- Join conditions
- Join fields
- Datasets and datasources all in YAML — enabling version control and CI/CD for data quality.
🔮 Coming Soon: Custom Aggregations in the Wizard
We're working on something exciting! Soon, you'll be able to define custom aggregations directly in the UI.
Example use cases:
SUM(conversion_rate * amount_in_original_currency)
Stay tuned for more powerful and flexible monitoring options that don’t require SQL!
For additional details on joining tables in monitors, you can refer to the dedicated documentation page. Want help getting started or converting your current monitors to use joins or YAML? Reach out to your customer engineer — we're here to help!
App version: v494