Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

YugabyteDB as a distributed alternative to PostgreSQL #24

Merged
merged 3 commits into from
Jul 12, 2024

Conversation

FranckPachot
Copy link
Contributor

This PR adds a docker compose in simple-ts to start YugabyteDB instead of PostgreSQL.
YugabyteDB is an Open Source PostgreSQL-compatible Distributed SQL. It can scale horizontally by simply adding new nodes.

Example, here is a 6 nodes YugabyteDB cluster with Replication Factor 3 (resilient to one node failure):

docker-compose -f docker-compose-yugabytedb.yml up -d --scale dist=0
docker-compose -f docker-compose-yugabytedb.yml up -d --scale dist=1
docker-compose -f docker-compose-yugabytedb.yml up -d --scale dist=2
docker-compose -f docker-compose-yugabytedb.yml up -d --scale dist=3
docker-compose -f docker-compose-yugabytedb.yml up -d --scale dist=4
docker-compose -f docker-compose-yugabytedb.yml up -d --scale dist=5

The application connects to any node with the same driver as PostgreSQL

npm install
npm run start

The YugabyteDB UI is on port 15433:
image
The "users" table is distributed to 6 tablets with Raft leaders on all nodes:
image

Copy link
Contributor

@oskardudycz oskardudycz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you @FranckPachot, I had a few people asking if Pongo is compatible with Yugabyte. Now I have the proof!

I'll also add it to the matrix in my e2e compatibility tests to ensure there's no regression 🙂

@oskardudycz oskardudycz added this to the 0.3.0 milestone Jul 12, 2024
@oskardudycz oskardudycz merged commit 0a4ac89 into event-driven-io:main Jul 12, 2024
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants