#database

ls ./tags/database
2026-07-30~9 min
Why Apache Avro Needs Two Schemas

Avro payloads cannot be decoded without the writer schema, and that two-schema model is what makes rolling upgrades and schema evolution work.

2026-02-25~8 min
Building Index-Backed Query Plans in DataFusion

What I learned about manually constructing physical query plans for secondary index queries, and the library that came out of it.

2026-01-30~11 min
FoundationDB's Transaction Model for Layer Engineers

How optimistic concurrency control works in FoundationDB, and how to design data structures that stop fighting it

2025-06-04~6 min
Thank You, DataFusion: Queries in Rust, Without the Pain

Why Apache DataFusion, a composable Rust-native SQL engine rather than a rigid framework, finally let me plug real queries into our FoundationDB-based system after years of watching from the sidelines.

2025-06-03~7 min
Bypassing FoundationDB's Transaction Limits with Record Layer Continuations

A technical deep-dive into FoundationDB Record Layer continuations, explaining how they enable long-running operations by segmenting work across multiple FDB transactions, effectively bypassing the inherent 5-second and 10MB limits.

2025-03-27~2 min
Key design tip: reverse number scanning in ordered key-value stores

A key design trick for ordered key-value stores like HBase, FoundationDB, and RocksDB: reverse a number by subtracting it from its max value so a forward scan finds the highest one first.

2025-03-07~3 min
Debugging FoundationDB's Data Distributor

A deep dive into the internals of FoundationDB's Data Distributor and how it manages shard placement and team priorities.

2025-02-11~4 min
Ensuring Safety in FoundationDB's Rust Crate

Strategies and techniques for enhancing safety in the FoundationDB Rust crate

2024-04-22~3 min
Redwood’s memory tuning in FoundationDB

Learn how to tune FoundationDB for Redwood storage Engine

2024-03-12~4 min
True idempotent transactions with FoundationDB 7.3

Learn how to avoid FDB's biggest caveats by using a new feature called automatic idempotency in FoundationDB

2022-01-17~11 min
Best resources to learn about data and distributed systems

Learning distributed systems is tough. You need to go through a lot of academic papers, concepts, code review, before being able to have a global pictures. Thankfully, there is a lot of resources out there that can help you. Here's the best resources I used to learn distributed systems

2021-02-21~5 min
Crafting row keys in FoundationDB

An overview of all the helpers to generate row keys with FoundationDB

2020-09-23~3 min
Announcing Record-Store, a new (experimental) place for your data

Opensourcing Record-Store

2020-02-14~7 min
Contributing to Apache HBase: custom data balancing

In today’s blogpost, we’re going to take a look at our upstream contribution to Apache HBase’s stochastic load balancer, based on our experience of running HBase clusters to support OVHcloud’s monitoring.

2020-01-30~14 min
Notes about FoundationDB

List of ressources gleaned about FoundationDB

2019-11-17~4 min
Diving into Hbase's MemStore

A code-level dive into HBase's MemStore, from the ConcurrentSkipListMap backing HBase 1.x to the in-memory compactions Accordion introduced in HBase 2.0.

2019-05-27~3 min
Playing with TTL in HBase

A hands-on walkthrough of HBase's TTL feature, how cell timestamps and compaction interact to expire data, and how to control it by setting your own version timestamp.

2019-02-03~4 min
What are ACID transactions?

A walkthrough of the ACID properties of database transactions, from the 1983 Haerder and Reuter paper that coined them to isolation levels and PostgreSQL's MVCC implementation.

2019-01-27~4 min
Hbase Data Model

An overview of HBase's data model, row keys, column families and qualifiers, and why key design determines whether you get good performance or a hotspotted region.

2017-10-08~8 min
Engage maximum warp speed in time series analysis with WarpScript

An introduction to WarpScript, the stack-oriented language behind the Warp10 time series platform we ran at OVH's Metrics Data Platform to store and analyze sensor data.