Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Streaming
  3. databus

databus

Apache-2.0Java

A source-agnostic distributed change data capture system for reliably capturing and streaming primary data changes.

GitHubGitHub
3.7k stars737 forks0 contributors

What is databus?

Databus is a source-agnostic distributed change data capture system built by LinkedIn to reliably capture and stream primary data changes from databases like Oracle and MySQL. It solves the problem of keeping secondary data stores, caches, and indexes consistent with primary data mutations by mining database transaction logs, avoiding the consistency issues of application-driven dual writes.

Target Audience

Data engineers and architects at technology companies building complex data ecosystems with multiple specialized data stores (e.g., relational databases, NoSQL, caches, search indexes) that need reliable, low-latency data change propagation.

Value Proposition

Developers choose Databus for its source-agnostic approach that prevents technology lock-in, its strong consistency guarantees by using database logs as a single source of truth, and its ability to handle high throughput with low latency while supporting infinite data lookback.

Overview

Source-agnostic distributed change data capture system

Use Cases

Best For

  • Building reliable data pipelines between primary OLTP databases and secondary stores like search indexes or caches
  • Keeping social graph or people search indexes consistent with member profile data changes
  • Implementing change data capture for Oracle or MySQL databases without proprietary replication
  • Avoiding consistency issues in application-driven dual-write architectures
  • Enabling infinite lookback capabilities for data change replay in downstream applications
  • Creating scalable event streaming systems for data change propagation in microservices architectures

Not Ideal For

  • Environments using databases not supported by Databus, like PostgreSQL or MongoDB, without custom log mining adapters
  • Small-scale projects where application-driven dual writes with eventual consistency are acceptable and simpler to implement
  • Teams lacking expertise in distributed systems or database transaction log mining, as setup and maintenance are complex
  • Organizations seeking a cloud-managed, zero-dependency CDC service with minimal operational overhead

Pros & Cons

Pros

Source-Agnostic Log Mining

Extracts changes from database transaction logs like Oracle and MySQL without relying on proprietary replication, avoiding technology lock-in, as highlighted in the Key Features.

Strong Consistency Guarantees

Solves consistency issues by mining database logs as a single source of truth, unlike error-prone application-driven dual writes, per the Philosophy and Use-cases sections.

High Performance and Low Latency

Delivers transport layer latencies in low milliseconds and handles thousands of events per second per server, ensuring scalable data flow for high-throughput environments.

Infinite Data Lookback

Supports replaying historical data changes from any point in time, enabling flexible subscription and recovery capabilities for downstream applications.

Cons

Complex Setup and Dependencies

Requires downloading Oracle JDBC driver with specific licensing and version, and uses gradle for build, making initial setup non-trivial and prone to errors, as warned in the How to build? section.

Limited Database Support

Primarily designed for Oracle and MySQL sources; adapting to other databases requires custom log mining implementations, which may not be well-documented or supported.

Potentially Outdated Ecosystem

Based on a 2012 paper and older technology, the project might have less active development and community support compared to modern CDC tools like Debezium, risking obsolescence.

Frequently Asked Questions

Quick Stats

Stars3,678
Forks737
Contributors0
Open Issues32
Last commit2 years ago
CreatedSince 2012

Tags

#linkedin#oracle#change-data-capture#distributed-systems#database-replication#mysql#event-streaming#data-pipeline#data-consistency

Built With

G
Gradle

Included in

Streaming3.0k
Auto-fetched 6 hours ago

Related Projects

Apache Kafka StreamsApache Kafka Streams

Apache Kafka - A distributed event streaming platform

Stars33,317
Forks15,375
Last commit12 hours ago
nsqnsq

A realtime distributed messaging platform

Stars25,757
Forks2,891
Last commit3 days ago
Apache RocketMQApache RocketMQ

Apache RocketMQ is a cloud native messaging and streaming platform, making it simple to build event-driven applications.

Stars22,526
Forks12,002
Last commit18 hours ago
Apache PulsarApache Pulsar

Apache Pulsar - distributed pub-sub messaging system

Stars15,298
Forks3,743
Last commit12 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub