debezium VS PostgreSQL

Compare debezium vs PostgreSQL and see what are their differences.

debezium

Change data capture for a variety of databases. Please log issues at https://issues.redhat.com/browse/DBZ. (by debezium)

PostgreSQL

Mirror of the official PostgreSQL GIT repository. Note that this is just a *mirror* - we don't work with pull requests on github. To contribute, please see https://wiki.postgresql.org/wiki/Submitting_a_Patch (by postgres)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
debezium PostgreSQL
80 404
9,843 14,619
1.8% 3.1%
9.9 9.9
1 day ago 1 day ago
Java C
Apache License 2.0 GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

debezium

Posts with mentions or reviews of debezium. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-10.
  • Choosing Between a Streaming Database and a Stream Processing Framework in Python
    10 projects | dev.to | 10 Feb 2024
    They manage data in the application layer and your original data stays where it is. This way data consistency is no longer an issue as it was with streaming databases. You can use Change Data Capture (CDC) services like Debezium by directly connecting to your primary database, doing computational work, and saving the result back or sending real-time data to output streams.
  • Generating Avro Schemas from Go types
    4 projects | dev.to | 14 Jan 2024
    Both of these articles mention a key player, Debezium. In fact, Debezium has had a place in the modern infrastructure. Let's use a diagram to understand why.
  • debezium VS quix-streams - a user suggested alternative
    2 projects | 7 Dec 2023
  • All the ways to capture changes in Postgres
    12 projects | news.ycombinator.com | 22 Sep 2023
  • Real-time Data Processing Pipeline With MongoDB, Kafka, Debezium And RisingWave
    3 projects | dev.to | 18 Jul 2023
    Debezium
  • How to Listen to Database Changes Using Postgres Triggers in Elixir
    10 projects | news.ycombinator.com | 14 Jun 2023
  • What are your favorite tools or components in the Kafka ecosystem?
    10 projects | /r/apachekafka | 31 May 2023
    Debezium: https://debezium.io/ (connector for cdc)
  • [Need feedback] I wrote a guide about the fundamentals of BigQuery for software developers & traditional database users
    4 projects | /r/dataengineering | 14 Apr 2023
    You don't want to couple your analytics database with your app. The only time this makes sense is when you're building small projects. When you have very high traffic, this method will break. Just stick to CDC. Look into tools like debezium if your team is concerned with sending raw data to the cloud.
  • How Change Data Capture (CDC) Works with Streaming Database
    5 projects | dev.to | 7 Apr 2023
    If you’re already using Debezium to extract CDC logs into Kafka, you can just set up RisingWave to consume changes from that Kafka topic. In this case, Kafka acts like a hub of CDC data, and beside RisingWave, other downstream systems like search index or data warehouses can consume changes as well.
  • PostgreSQL Logical Replication Explained
    4 projects | news.ycombinator.com | 18 Mar 2023
    Logical replication is also great for replicating to other systems - for example Debezium [1] that writes all changes to a Kafka stream.

    I'm using it to develop a system to replicate data to in-app SQLite databases, via an in-between storage layer [2]. Logical replication is quite a low-level tool with many tricky cases, which can be difficult to handle when integrating with it directly.

    Some examples:

    1. Any value over 8KB compressed (configurable) is stored separately from the rest of the row (TOAST storage), and unchanged values included in the replicated record by default. You need to keep track of old values in the external system, or use REPLICA IDENTITY FULL (which adds a lot of overhead on the source database).

    2. PostgreSQL's primary keys can be pretty-much any combination of columns, and may or may not be used as the table's replica identity, and it may change at any time. If "REPLICA IDENTITY FULL" is used, you don't even have an explicit primary key on the receiver side - the entire record is considered the identity. Or with "REPLICA IDENTITY NOTHING", there is no identity - every operation is treated as an insert. The replica identity is global per table, so if logical replication is used to replicate to multiple systems, you may not have full control over it. This means many different combinations of replica identity needs to be handled.

    3. For initial sync you need to read the tables directly. It takes extra effort to make sure these are replicated in the same way as with incremental replication - for example taking into account the list of published tables, replica identity, row filters and column lists.

    4. Depending on what is used for high availability, replication slots may get lost in a fail-over event, meaning you'll have to re-sync all data from scratch. This includes cases where physical or logical replication is used. The only case where this is not an issue is where the underlying block storage is replicated, which is the case in AWS RDS for example.

    [1]: https://debezium.io

    [2]: https://powersync.co

PostgreSQL

Posts with mentions or reviews of PostgreSQL. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-09.
  • Understanding SQL vs. NoSQL Databases: A Beginner's Guide
    5 projects | dev.to | 9 Apr 2024
    SQL (Structured Query Language) databases are relational databases. They organize data into tables with rows and columns, and they use SQL for querying and managing data. Examples include MySQL, PostgreSQL, and SQLite.
  • From zero to hero: using SQL databases in Node.js made easy
    3 projects | dev.to | 19 Mar 2024
    Node.js, MySQL and PostgreSQL servers installed on your machine
  • I Deployed My Own Cute Lil’ Private Internet (a.k.a. VPC)
    8 projects | dev.to | 18 Mar 2024
    Each app’s front end is built with Qwik and uses Tailwind for styling. The server-side is powered by Qwik City (Qwik’s official meta-framework) and runs on Node.js hosted on a shared Linode VPS. The apps also use PM2 for process management and Caddy as a reverse proxy and SSL provisioner. The data is stored in a PostgreSQL database that also runs on a shared Linode VPS. The apps interact with the database using Drizzle, an Object-Relational Mapper (ORM) for JavaScript. The entire infrastructure for both apps is managed with Terraform using the Terraform Linode provider, which was new to me, but made provisioning and destroying infrastructure really fast and easy (once I learned how it all worked).
  • How to dump and restore a Postgres DB with new table ownership
    2 projects | dev.to | 14 Mar 2024
    I've used MySQL for years. But recently, I found myself working PostgreSQL and simple things like dumping and restoring a database are different enough that I decided to document the process. It's straightforward enough once I knew how.
  • Test Driving a Rails API - Part One
    11 projects | dev.to | 11 Mar 2024
    A running Rails application needs a database to connect to. You may already have your database of choice installed, but if not, I recommend PostgreSQL, or Postgres for short. On a Mac, probably the easiest way to install it is with Posrgres.app. Another option, the one I prefer, is to use Homebrew. With Homebrew installed, this command will install PostgreSQL version 16 along with libpq:
  • Um júnior e um teste técnico: The battle.
    5 projects | dev.to | 3 Mar 2024
    PostgreSQL
  • How to choose the right type of database
    15 projects | dev.to | 28 Feb 2024
    PostgreSQL: Offers a robust feature set and strong compliance with SQL standards, making it suitable for a wide range of applications, from simple to complex, particularly where data integrity and extensibility are key.
  • NoSQL Postgres: Add MongoDB compatibility to your Supabase projects with FerretDB
    6 projects | dev.to | 23 Feb 2024
    FerretDB is an open source document database that adds MongoDB compatibility to other database backends, such as Postgres and SQLite. By using FerretDB, developers can access familiar MongoDB features and tools using the same syntax and commands for many of their use cases.
  • Preventing SQL injection attacks in Node.js
    6 projects | dev.to | 22 Feb 2024
    To better understand how SQL injection works, let's quickly create a vulnerable app using Node.js, Express, and a PostgreSQL database. The application takes user input from a form, constructs a SQL query, and executes it against the database to fetch some data.
  • Full Stack Chat App with Socket.io
    3 projects | dev.to | 16 Feb 2024
    We'll use PostgreSQL, and first of all, you need to install PostgreSQL if you haven't installed it yet. https://www.postgresql.org/

What are some alternatives?

When comparing debezium and PostgreSQL you can also consider the following projects:

maxwell - Maxwell's daemon, a mysql-to-json kafka producer

psycopg2 - PostgreSQL database adapter for the Python programming language

ClickHouse - ClickHouse® is a free analytics DBMS for big data

phpMyAdmin - A web interface for MySQL and MariaDB

kafka-connect-bigquery - A Kafka Connect BigQuery sink connector

realtime - Broadcast, Presence, and Postgres Changes via WebSockets

Firebird - FB/Java plugin for Firebird

Adminer - Database management in a single PHP file

Airflow - Apache Airflow - A platform to programmatically author, schedule, and monitor workflows

hudi - Upserts, Deletes And Incremental Processing on Big Data.

SQLAlchemy - The Database Toolkit for Python

RocksDB - A library that provides an embeddable, persistent key-value store for fast storage.