Philipp Fent
pfent.bsky.social
Philipp Fent
@pfent.bsky.social
Co-Founder @cedardb.com
Reposted by Philipp Fent
What if a database could be your game engine?

During parental leave @lukasvogel.bsky.social
built DOOMQL: A multiplayer DOOM-like where everything (rendering, game loop, state) runs in pure SQL on CedarDB.
It's fast, ridiculous, and surprisingly elegant.

Full write-up: cedardb.com/blog/doomql
September 9, 2025 at 3:17 PM
Reposted by Philipp Fent
Vol:18 No:11 → SQLStorm: Taking Database Benchmarking into the LLM Era
👥 Authors: Tobias Schmidt, Leis Viktor, Peter Boncz, Thomas Neumann
📄 PDF: https://www.vldb.org/pvldb/vol18/p4144-schmidt.pdf
August 26, 2025 at 4:00 PM
Reposted by Philipp Fent
Leaving academia is always a big step, especially if you bring your research project with you into the real world.

Read our latest post to learn what we did to prepare a research project for production workloads and what we learned along the way: cedardb.com/blog/researc...
What It Takes to Get a Research Project Ready for Production
CedarDB is a database system that delivers unmatched performance for transactions and analytics, from small writes to handling billions of rows. Built on cutting-edge research to power today’s tools a...
cedardb.com
July 24, 2025 at 3:43 PM
Reposted by Philipp Fent
Congratulations to SortMergeJoins from TU Munich - winners of the 2025 SIGMOD Programming Contest! Built by the Umbra research group (CedarDB’s roots), their system ran 12× faster than median - entirely open-source and no sort-merge-joins to be found 😉: github.com/umbra-db/con...
July 9, 2025 at 12:17 PM
Reposted by Philipp Fent
NULL BITMAP: Kicking the Tires on CedarDB's SQL buttondown.com/jaffray/arch...
May 19, 2025 at 6:14 PM
Reposted by Philipp Fent
You don’t need an army of C++ devs to hand-optimize every query. We let the code write the code.
Read our latest blog post to see how we mix runtime flexibility with almost magical performance!

cedardb.com/blog/compila...
Fast Compilation or Fast Execution: Just Have Both!
Learn the basics of code generation, which is one of the secrets behind CedarDB's performance. CedarDB creates custom machine code for every query. This keeps data in CPU registers as long as possib...
cedardb.com
April 2, 2025 at 3:51 PM
Reposted by Philipp Fent
B-trees may be decades old, but we still use them extensively in CedarDB.

Read our latest blog post to learn how to scale B-tree operations to hundreds of cores.

cedardb.com/blog/optimis...
To B or not to B: B-Trees with Optimistic Lock Coupling
B-Trees stand the test of time. In this article, we explore why we still use a 55 year old data structure: It is still super efficient on modern hardware when we use contention free optimistic lock co...
cedardb.com
March 6, 2025 at 6:03 PM
Reposted by Philipp Fent
We follow up on our past claims that fewer code branches are better in our return to blogging after our winter break.

Read on to find out why branches are a burden on the CPU, and what both you and the CPU can do to avoid performance penalties.

cedardb.com/blog/reducin...
Why Trees Without Branches Grow Faster: The Case for Reducing Branches in Code
In some of our blog posts, we explained what steps we take to reduce the number of branching instructions in our critical paths. However, we only ever claimed that this is much better and faster, and ...
cedardb.com
January 29, 2025 at 4:29 PM
Reposted by Philipp Fent
"Helping Christmas Elves Count Presents" 🎁🎅 is the title of our last blog post of the year.

Read how to implement vectorized overflow checking here: cedardb.com/blog/vectori...
Helping Christmas Elves Count Presents (or: Vectorized Overflow Checking)
In a previous post, we explained the importance of overflow checks when summing numbers, and mentioned that the usual approaches are not easily vectorized. Read here how to get 4x the performance when...
cedardb.com
December 24, 2024 at 4:43 PM
Reposted by Philipp Fent
Vol:18 No:1 → Cardinality Estimation for Having-Clauses
👤 Author: Guido Moerkotte
📄 PDF: https://www.vldb.org/pvldb/vol18/p28-moerkotte.pdf
December 5, 2024 at 11:00 PM
Reposted by Philipp Fent
Have you ever wondered why you see the last entry again when switching to the second page of a website? 👬 📖

The culprit is "offset"! Read why in our blog post and find out what to use instead. 🌲

cedardb.com/blog/paginat...
Offset Considered Harmful or: The Surprising Complexity of Pagination in SQL
Have you ever wondered why you sometimes see duplicate results when clicking on the second page of a website? In this blog post, we explore techniques for result pagination, how they impact the work n...
cedardb.com
November 19, 2024 at 4:35 PM
Reposted by Philipp Fent
Can Delta Compete with Frame-of-Reference for Lightweight Integer Compression?
vldb.org/workshops/2...

I see TUM paper, I tweet TUM paper.
November 17, 2024 at 5:07 AM