Peter Mattis Profile
Peter Mattis

@petermattis

Followers
1K
Following
856
Media
10
Statuses
579

CTO and co-founder @CockroachDB.

New York
Joined October 2011
Don't wanna be here? Send us removal request.
@petermattis
Peter Mattis
1 month
RT @CockroachDB: You shouldn’t have to guess how your database will behave under chaos. With Performance under Adversity, you will get proo….
0
3
0
@petermattis
Peter Mattis
4 months
I haven't contributed to GIMP in decades (literally), yet it still holds a special place in my heart. It is really amazing to see the community continue to develop it.
0
0
2
@petermattis
Peter Mattis
4 months
😎.
1
0
8
@petermattis
Peter Mattis
5 months
8/8 Analogies help us understand complexity—and I'd love to hear yours. Does this resonate with you? What analogies help you make sense of our rapidly evolving relationship with AI?.
1
0
0
@petermattis
Peter Mattis
5 months
7/8 If you're still on the fence or just unaware, I encourage you: get in the car. The journey is better together, and there's so much to discover.
1
0
0
@petermattis
Peter Mattis
5 months
6/8 We're actively learning how to collaborate, constantly reshaping each other as we navigate this new terrain. The future feels thrilling, unknown, and filled with potential, but our choices now matter immensely.
1
0
0
@petermattis
Peter Mattis
5 months
5/8 And here's the fascinating part: the AI "car" itself is continually transforming beneath us. Yesterday it was a Model T, today a sleek Chevy, tomorrow perhaps a Tesla with autonomous driving. What's next—a flying car? A starship?.
1
0
0
@petermattis
Peter Mattis
5 months
4/8 That car is AI. Excited yet cautious, we all climb in. We learn by doing—steering, braking, accelerating—aware of risks but inspired by the incredible possibilities unfolding.
1
0
0
@petermattis
Peter Mattis
5 months
3/8 Now, imagine a group of engineers who've carefully designed and built a car—powerful, intriguing, yet complex enough that even they aren't sure exactly how it will behave. Together with broader society, they begin exploring how to responsibly guide and control this vehicle.
1
0
0
@petermattis
Peter Mattis
5 months
2/8 Humanity—and each of us individually—has always augmented our abilities through tools. We've moved from simple sticks and wheels to sophisticated machines, each transforming how we interact with the world.
1
0
0
@petermattis
Peter Mattis
5 months
1/8 I'm not an AI luminary—I'm a technologist who loves exploring complex ideas through analogies. Lately, I've been reflecting on our collective journey with AI. Here's one analogy that resonates deeply with me.
1
0
1
@petermattis
Peter Mattis
5 months
Slack falls silent.Seek an unbreakable core.@CockroachDB awaits the call.
0
0
6
@petermattis
Peter Mattis
5 months
@CockroachDB If you enjoyed this thread, take a look at which provides more details on the Go maps Swiss Tables implementation.
0
0
1
@petermattis
Peter Mattis
5 months
8/8 Columnar blocks are a big leap from rowblk. Inspired by columnar systems (common in OLAP), we adapted it for OLTP. Huge thanks to the @CockroachDB Pebble team—future columnar improvements are on the horizon!.
1
0
7
@petermattis
Peter Mattis
5 months
7/8 Due to its use of MVCC, CockroachDB frequently has to skip over different versions of a key using a NextPrefix operation. The colblk.Bitmap ( records when the prefix changes allowing next prefix determination without looking at keys.
1
1
4
@petermattis
Peter Mattis
5 months
6/8 Online restore is simpler: storing block-wide prefixes & timestamp suffixes separately allows quick updates without rewriting entire blocks—crucial for online restore which serves backups directly out of s3-like systems.
1
0
3
@petermattis
Peter Mattis
5 months
5/8 PrefixBytes ( is key: colbk groups 16 keys into a bundle, extracts a shared bundle prefix, and also stores a block-wide prefix. This means less repeated prefix decoding and no varint fuss.
1
1
3
@petermattis
Peter Mattis
5 months
4/8 Columnar blocks swap rows for columns, eliminating varints via a fixed layout (. The tricky part? Doing so without making blocks larger. Mission accomplished.
1
0
3
@petermattis
Peter Mattis
5 months
3/8 Historically, Pebble’s rowblk format (inherited from RocksDB) used row-oriented storage & varint encoding (space-efficient but adds decoding overhead). It also used prefix compression, storing full keys only every 16th row.
1
0
2
@petermattis
Peter Mattis
5 months
2/8 SSTables are sorted, immutable files of key-value pairs. They’re split into blocks, letting Pebble load only what’s needed from disk—crucial for CockroachDB’s performance.
1
0
5