Welcome to the zinzu User Guide

Learn the core concepts, connect your data, and build queries to discover patterns in your business events.

3 min readProduct documentationzinzu user guide

For an introduction to zinzu and the problems it solves, read the zinzu Product Overview.

Data Source

A data source is a table or view containing records you want to analyze. Each source can have its own column names and structure. zinzu handles the conversion into its common internal format; you do not need to reshape your source tables.

Example: A Payments table stores payment attempts, while a Service_logs table stores retry activity.

EventOwner (Entity)

An EventOwner, also called an entity, is who or what you want to find sequences for—a customer, order, request or device.

zinzu groups records with the same EventOwner ID across your selected sources, arranges them by timestamp, and searches for patterns within each owner’s timeline. Different owners are analyzed separately.

The EventOwner column can have a different name in each source. You select the appropriate column for each table; zinzu groups records using its values, rather than its name.

Example: Payments uses request_id, while Service_logs uses trace_id. If both contain R-42 for the same request, zinzu combines those records into one timeline and looks for Payment failed → Retry → Payment succeeded.

Query example: Payment failure, retry, and success for one EventOwner.

Column names can differ, but the values must identify the same entity.

Timestamp

A timestamp shows when an action happened. zinzu uses it to arrange each EventOwner’s records in chronological order. You select the timestamp column for each source; its name can differ between tables.

Example: Payments uses payment_time to record a failure at 10:00:00, while Service_logs uses logged_at to record its retry at 10:00:12.

Event

An event is a named definition of records from a configured Event Source. It uses that source’s EventOwner and timestamp columns and can include filter conditions to select a subset of records.

Example: “Payment failed” uses the Payments table, request_id as the EventOwner, payment_time as the timestamp, and status = failed as the filter condition.

Filters

Filters are conditions that select which source records belong to an event. Combine conditions using AND to require every condition or OR to accept any condition. Without filters, all records from the source qualify for the event.

Example: status = failed AND method = card selects failed card payments.

zinzu supports multiple filters combined using either AND or OR, but not a mix of both.

zinzu query

A zinzu query defines the pattern you want to find. You select the events and specify how they should relate—for example, their order, allowed repetitions, time limits or actions that must not occur.

When you run the query, zinzu searches each EventOwner’s timeline within the selected date/time range and returns matching sequences.

Example: A query for Payment failed → Retry → Payment succeeded, completed within 30 seconds, finds requests whose records follow that pattern and satisfy the time limit.

Query example: Payment recovery completed within 30 seconds.
Continue readingTypes of queries
Search documentation · Esc to close
Open original image ↗