Configuring Real-Time Delivery Mode in Data Hub
Overview
Real-Time Delivery Mode lets Boomi Data Hub push golden record updates to a Boomi Event Streams topic instantly, without waiting for a scheduled batch run. When a golden record changes, Data Hub publishes the update to an EventStreams topic, where it is available immediately to any downstream integration or application that is subscribed to it.
This article explains how to configure, deploy, and govern real-time outbound delivery for a Data Hub model.
How it works
Real-Time Delivery Mode adds a push model to complement Data Hub's existing pull-based batch delivery:
- In batch mode, a downstream system fetches golden record updates on a schedule.
- In real-time mode, Data Hub publishes an update to an Event Streams topic the moment a golden record changes. Downstream systems subscribe to the topic and receive the update immediately.
- Both modes can coexist within the same model. You can configure some sources as batch and others as real-time.
When you deploy a model with a real-time source, Data Hub automatically creates a dedicated Event Streams topic for that source. The topic name follows this convention:
DH_[Channel ID]
You do not need to create the topic manually. Data Hub also creates a subscription under the topic, named DH_[Channel ID]_sub.
You can change a source's delivery mode from real-time back to batch at any time during model configuration. Once the model is deployed, this change is irreversible. Plan your delivery mode selection carefully before deploying.
Getting access
Real-Time Delivery Mode must be enabled at the repository level before you can deploy a model that uses it. If you deploy without enabling the feature first, the deployment fails.
The feature is enabled per repository, not per account. If you have multiple repositories, each must be enrolled separately.
Before you begin
Before configuring real-time delivery, ensure the following are in place:
- You have an active Event Streams environment.
- You have access to the Event Streams environment settings to retrieve an environment token scoped with both Produce and Consume permissions.
- The Data Hub model you want to configure exists and has at least one source configured for outbound delivery.
Setting up and deploying a real-time source
Complete the following steps to configure and deploy a Data Hub model with a real-time source.
Step 1: Linking your repository to an Event Streams environment
Data Hub uses an Event Streams environment token to know where to publish real-time updates. You must configure this token at the repository level before deploying.
- In Event Streams, navigate to the target environment and open Settings.
- Copy the Environment Token.
- In Data Hub, open the Repository Settings for your non-production repository.
- Paste the token into the Event Streams Environment Token field and save. The Event Streams environment must belong to the same account as the Data Hub repository. A token from a different account will error on save.
This token authorizes Data Hub to publish events to and consume events from the Event Streams environment. The same token is used when configuring the Event Streams connector in Boomi Integration.
Step 2: Configuring a source for real-time delivery
Real-Time Delivery Mode is configured at the source level within a model.
- Open your Data Hub model and navigate to the Sources tab.
- Add a new source. Configure the source to accept outbound channel updates.
- In the Delivery Mode field, select Real-Time. The default is Batch.
- Optionally, configure delivery filters to control which records are pushed:
- Exclude specific fields from the push payload.
- Filter by record tags, status, or region to limit which records trigger a push.
- Set quality threshold rules to push only records that meet defined data quality criteria.
- Save and publish the updated model version.
Use delivery filters to limit real-time pushes to records that genuinely require immediate downstream action. Real-time delivery is designed for operational precision, not for broadcasting all updates to all systems.
Step 3: Deploying the model
Real-time delivery is activated at deploy time, not at model creation time. The Delivery Mode options are visible in the model editor regardless of whether the feature is enabled for the target repository.
- In your repository, deploy the updated model version that includes the real-time source.
- After a successful deployment, the repository summary view displays the Delivery Mode for each source alongside new Pause and Resume controls.
- Data Hub automatically creates an Event Streams topic and subscription for the real-time source using the naming convention described in How it works.
Managing delivery channels
After deployment, you can control real-time delivery channels from the repository summary view. Each source configured for real-time delivery has a Pause and Resume control.
Pausing a channel
Pause a channel when you need to temporarily stop real-time pushes. Common reasons include:
- A downstream system is temporarily unavailable.
- A high-volume data onboarding is in progress and you want to avoid flooding downstream systems with every intermediate update.
- Scheduled maintenance on the downstream system or integration.
- In the repository summary, locate the source with the real-time delivery channel.
- Click Pause next to the source.
While a channel is paused, golden record updates are pending and not distributed. When you resume, pending updates are pushed to ensure the downstream system comes back into sync.
Resuming a channel
- In the repository summary, locate the paused source.
- Click Resume. The channel returns to Active state and begins processing pending updates.
A channel must be in Active (playing) state for real-time pushes to occur. Always confirm the channel status before testing or validating end-to-end delivery.
Monitoring outbound activity
Real-time push events are reported in the Outbound Activity section of the repository. A new event status distinguishes real-time deliveries from batch deliveries:
- Records pushed for the first time through real-time delivery are logged as Outbound Create events.
- Each entry shows the golden record, the destination Event Streams topic, and the timestamp of delivery.
- Pause and resume state changes are captured in platform logs.
You can also monitor delivery end to end from the execution log of the integration process consuming from the Event Streams topic (see Consuming updates downstream). Each execution corresponds to a single golden record update event, since Data Hub publishes one message per record even when the underlying change originates from a batch of up to 200.
Consuming updates downstream
For step-by-step setup of the Event Streams connector (connection, connector operation, topic, subscription), refer to the Event Streams tutorials. When consuming Data Hub updates, configure the following:
- Environment Token: use the same token configured in your repository settings.
- Topic Name: use the auto-generated topic name from Event Streams.
- Subscription Name: the subscription created by Data Hub for the topic.
- Acknowledgement Mode: transacted acknowledgement is recommended to ensure delivery integrity. To ensure in-order processing, messages should be consumed in an Exclusive Subscription Type.
Deploy and run the process. It executes once per golden record update event received from the topic.
Data Hub's responsibility is to get the update to the Event Streams topic and acknowledge at the topic level. Event Streams manages distribution to subscribers. If transacted acknowledgement is configured and the integration process fails, the event is routed to the Event Streams dead letter queue for review and retry.
Large messages
Event Streams limits messages produced through the REST API to 5MB. If a golden record update exceeds this limit, Data Hub publishes a notification to the topic instead of the full message. The notification includes a link to retrieve the full message using the Data Hub Repository API:
{{CLOUD_HOST}}/mdm/universes/:universeId/sources/:sourceId/updates/:messageId
When consuming from the Event Streams topic, your integration process must check for this notification, parse the link out of the message, and add a step to call the Repository API to retrieve the full update.
Troubleshooting
If you run into issues with Real-Time Delivery Mode, use the following guidance to diagnose and resolve them.
Data validation errors during outbound sync are not automated
Error handling for this scenario is still under design and not yet automated by Data Hub. If you have specific requirements, share them with your Boomi account team.
Real-time updates are not being delivered
Check the following:
- Confirm the delivery channel is in Active state in the repository summary. If it is paused, click Resume.
- Confirm the Event Streams environment token is correctly configured in the repository settings.
- Confirm the token has not expired and is scoped with both Produce and Consume permissions.
- Confirm the integration process listening to the Event Streams topic is deployed and running.
- Check the universe's source tab for error state (red status icon with tooltip). If you have access, check the Log tab for related errors, such as failed attach.
- Check the Event Streams dead letter queue for events that may have failed acknowledgement.
- Confirm the update should have been generated in the first place. If you don't see it in either a pending or a delivered state, the issue may be upstream of delivery entirely, not specific to real-time. To isolate this, create a temporary Batch source with the same configuration as the real-time source and check whether a message is generated for that channel. If it isn't, the root cause is in outbound message generation, not in real-time delivery.
Expected updates are not appearing in Event Streams
Check the following:
- Confirm the Event Streams environment has not reached its maximum topic limit (1,000 topics per environment). If it has, delete unused topics, or create a new environment and update the repository's Event Streams Environment Token to point to it.
- Confirm the auto-generated topic exists in Event Streams. If it does not, verify that the model was successfully deployed after the real-time source was added.
- Confirm the auto-generated subscription also exists. A topic without a subscription does not error, and Data Hub marks messages as delivered, but Event Streams does not retain them.
- Confirm the delivery filter conditions on the source are not filtering out the records you expect to view. If tag or status filters are applied, verify the affected records meet those criteria.