Articles
- When Postgres is not enough: performance evaluation of PostgreSQL vs. Distributed DBMSs
- How we switched to Java 21 virtual threads and got a deadlock in TPC-C for PostgreSQL
- Migrations in YDB using “goose”
- About prepared statements, server-side compiled query cache, or how to efficiently cache queries in YDB
- YDB meets TPC-C: distributed transactions performance now revealed
- database/sql bindings for YDB in Go
- YCSB performance series: YDB, CockroachDB, and YugabyteDB
The materials are divided by categories and tagged:
When Postgres is not enough: performance evaluation of PostgreSQL vs. Distributed DBMSs
The research presented is the result of our joint effort and close collaboration with Evgeny Efimkin, an expert in PostgreSQL who doesn’t work on YDB.
How we switched to Java 21 virtual threads and got a deadlock in TPC-C for PostgreSQL
In this post, we present a case study on how we encountered a deadlock with virtual threads in TPC-C for PostgreSQL, even without the dining philosophers problem. This post might be helpful for Java developers who are considering switching to virtual threads.
Migrations in YDB using “goose”
Any production process that works with a database will require a schema migration sooner or later. The migration updates the database’s table structure from one version to the next. Schema migrations can be done manually by executing an ALTER TABLE
query or by using specialized tools. One such tool is called goose. In this article we see how goose provides schema management in a project and has supported YDB (a distributed open-source database) since v3.16.0.
About prepared statements, server-side compiled query cache, or how to efficiently cache queries in YDB
There are various ways to reduce the cost of SQL query execution in modern DBMS. The most common approaches are using prepared statements and query caching. Both methods are available in YDB. Their functionality and benefits are discussed in this article.
YDB meets TPC-C: distributed transactions performance now revealed
We are excited to present our first results of TPC-C*, which is industry-standard On-Line Transaction Processing (OLTP) benchmark. According to these results, there are scenarios in which YDB slightly outperforms CockroachDB, another trusted and well-known distributed SQL database.
database/sql bindings for YDB in Go
YQL is a SQL dialect with YDB specific strict types. This is great for performance and correctness, but sometimes can be a bit daunting to express in a query, especially when they need to be parametrized externally from the application side. For instance, when a YDB query needs to be parametrized, each parameter has name and type provided via DECLARE
statement. To explore more about this and see practical examples, read the detailed explanation in this article.
YCSB performance series: YDB, CockroachDB, and YugabyteDB
It’s a challenge to implement a distributed database with strong consistency, ensuring high speed and scalability. YDB excels in these aspects, and our customers can attest to this through their own experiences. Unfortunately, we have never presented any performance numbers to a broader audience. We recognize the value of this information, and we are preparing more benchmark results to share.