Modern event-driven architectures rely on scalable, reliable streaming platforms to move data between services in real time. Oracle Transactional Event Queues (TxEventQ) enables event streaming natively within Oracle Database, allowing applications to publish, consume, and persist events with full transactional guarantees—without requiring a separate messaging broker.
A key capability of TxEventQ is its support for Kafka-compatible clients. Existing Kafka Java producers and consumers can connect directly to Oracle Database using familiar Kafka APIs, enabling teams to extend or modernize their architectures while continuing to use established development models and tooling.
This post explains the high-level integration approach, how Kafka Java clients work with TxEventQ, and how you can try it out using an Oracle LiveLabs workshop.
Why Use Oracle Transactional Event Queues with Kafka Applications?
Traditional Kafka deployments introduce additional infrastructure layers that must be operated, scaled, and monitored independently of the database. They also require careful coordination to maintain consistency between database transactions and message delivery.
Oracle Transactional Event Queues addresses these challenges by embedding event streaming directly inside the database.
With TxEventQ, you get:
- Database-native event streaming built into Oracle Database
- Transactional consistency between data changes and event publication
- Compatibility with Kafka APIs and the broader Kafka ecosystem
- Reduced operational overhead by eliminating external brokers
This makes TxEventQ well suited for microservices, event-driven workflows, and data-centric streaming architectures that require strong consistency and reliability.
High-Level Integration Model
At a conceptual level, integrating Kafka applications with Oracle TxEventQ follows a straightforward model.
TxEventQ queues are created inside Oracle Database and act as durable event streams. Kafka applications connect directly to the database endpoint rather than a Kafka broker. Producers and consumers continue to use standard Kafka APIs, while Oracle Database handles event persistence, delivery, and transactional behavior.
In this model, Kafka provides the client-facing API, and Oracle Database provides the underlying event streaming platform.
How Kafka Java Clients Work with TxEventQ
Kafka Java clients, including KafkaProducer and KafkaConsumer, interact with TxEventQ using the same programming interfaces used with Apache Kafka.
Kafka Producers
From the application perspective, producers create records and publish messages using the standard Kafka producer API.
Internally, these messages are written to Transactional Event Queues in Oracle Database. Event publication can participate in database transactions, ensuring that messages are committed or rolled back together with related data changes.
Kafka Consumers
Consumers subscribe to topics and poll for messages using standard Kafka consumer APIs.
Under the hood, messages are dequeued from TxEventQ queues. Offset tracking and delivery semantics are managed within the database, allowing consumers to benefit from Oracle Database reliability, recovery, and transactional guarantees.
Because the Kafka APIs remain unchanged, existing Kafka Java applications can be reused with minimal configuration changes.
Trying It Yourself with Oracle LiveLabs
If you want to see this integration in action, Oracle provides a hands-on LiveLabs workshop that walks through using Kafka Java clients with Oracle Transactional Event Queues.
The LiveLabs workshop covers:
- Creating and configuring TxEventQ queues
- Connecting Kafka Java producers and consumers to Oracle Database
- Publishing and consuming events using standard Kafka APIs
- Observing end-to-end message flow through TxEventQ
You can access the LiveLabs workshop here:
https://livelabs.oracle.com/ords/r/dbpm/livelabs/view-workshop?wid=4326
Summary
Oracle Transactional Event Queues allows Kafka Java applications to work directly with Oracle Database using familiar Kafka APIs. By combining database-native event streaming with Kafka ecosystem compatibility, TxEventQ simplifies architecture, reduces operational complexity, and provides strong transactional guarantees for event-driven applications.
Oracle Transactional Event Queue (TxEventQ) is a built-in feature of Oracle AI Database 26ai , Oracle’s AI-powered database.
Learn more at : https://www.oracle.com/database/advanced-queuing/
Here are some additional resources that will help you get started and build your event streaming platform using Oracle TxEventQ:
- Oracle Documentation: https://docs.oracle.com/en/database/oracle/oracle-database/23/adque/aq-introduction.html
- Developer Guide: https://oracle.github.io/microservices-datadriven/transactional-event-queues/
- Code Samples: https://github.com/oracle/spring-cloud-oracle/tree/main/database/starters/oracle-spring-boot-starter-samples
If you want to reach us, please contact support: https://support.oracle.com/ (Product – Oracle Database – Enterprise Edition, Problem Type>Information Integration>Advanced Queuing. (mention TxEventQ in the description.
