Franck Pachot's Avatar

Franck Pachot

@franckpachot.bsky.social

https://dev.to/franckpachot πŸ₯‘ Developer Advocate at πŸƒ MongoDB πŸ”Έ AWS Data Hero πŸ…ΎοΈ Oracle Certified Master 🐘 PostgreSQL andβ–β–ž Yugabyte​DB

1,072 Followers  |  324 Following  |  326 Posts  |  Joined: 25.06.2023  |  1.8003

Latest posts by franckpachot.bsky.social on Bluesky

I'm curious to find out whether Oracle still uses DerbyDB in their Oracle Database Appliances to store the metadata, and what they will replace it with

16.10.2025 10:13 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

If the banner has AI in lower and upper case, it must be great

14.10.2025 14:47 β€” πŸ‘ 4    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0
Preview
First/Last per Group: PostgreSQL DISTINCT ON and MongoDB DISTINCT_SCAN Performance On Stack Overflow, the most frequent question for PostgreSQL is: "Select first row in each GROUP BY...

SELECT DISTINCT ON ... ORDER BY equivalent in MongoDB (and faster)

dev.to/franckpachot...

03.10.2025 22:28 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Was just trying to be funny 😭 AI and vibe coding, resulting in too many buffer pins

01.10.2025 09:11 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

I can think of 100s of reasons but you said 23ai, so... vibe pinning?

01.10.2025 08:57 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
WiredTigerHS.wt: MongoDB MVCC Durable History Store MongoDB uses the WiredTiger storage engine, which implements Multi‑Version Concurrency Control (MVCC)...

More WiredTiger internals: persisting MongoDB's committed MVCC versions through checkpoints and restarts dev.to/franckpachot...

29.09.2025 09:01 β€” πŸ‘ 2    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0

Trust me I was so against it when I arrived at spark I’ve used it in the past and hated it.
but the lack of relations is actually amazing for backfill. it just makes it so simple and painless that I’m willing to live with the mongo of it all

28.09.2025 03:14 β€” πŸ‘ 5    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

and store the buffer in aifiedt.buf to be more AI friendly

26.09.2025 18:18 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Blog post for September 2025

SQL Developer isn't entirely CBO-friendly.
jonathanlewis.wordpress.com/2025/09/24/s...

24.09.2025 12:17 β€” πŸ‘ 21    πŸ” 8    πŸ’¬ 4    πŸ“Œ 0
Preview
MongoDB Search Index Internals with Luke (Lucene Toolbox GUI tool) Previously, I demonstrated MongoDB text search scoring with a simple example, creating a dynamic...

A closer look at MongoDB Text Search: which terms are indexed for a string, how they're stored, and what formula is used to calculate the query's matching score. Since it's based on Lucene, let's use Lucene tools. dev.to/franckpachot...

22.09.2025 14:31 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Text Search with MongoDB and PostgreSQL MongoDB Search Indexes provide full‑text search capabilities directly within MongoDB, allowing...

Comparing 🍏 to 🍊, and MongoDB to PostgreSQL, with full-text search indexes

dev.to/franckpachot...

19.09.2025 20:47 β€” πŸ‘ 12    πŸ” 0    πŸ’¬ 2    πŸ“Œ 1
Preview
Combine Two JSON Collections with Nested Arrays: MongoDB and PostgreSQL Aggregations Suppose you need to merge two sources of dataβ€”both JSON documents containing nested arrays. This was...

An example of MongoDB aggregation pipeline compared to the equivalent in SQL/JSON with common table expressions (CTE), from a StackOverflow question: dev.to/franckpachot...

18.09.2025 07:40 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
MongoDB Multikey Indexes and Index Bound Optimization Previously, I discussed how MongoDB keeps track of whether indexed fields contain arrays. This...

A flexible schema permits arrays in fields without upfront declaration, and filters and indexes (multiple keys per document) use it automatically. MongoDB tracks multikey paths in indexed fields to optimize index scans:

dev.to/franckpachot...

16.09.2025 16:52 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
MongoDB Internals: How Collections and Indexes Are Stored in WiredTiger WiredTiger is MongoDB’s default storage engine, but what really occurs behind the scenes when...

MongoDB’s strength is not only in its flexible, document-oriented API, but also in its ability to store documents to disk without random I/O slicing or vacuuming later. Here's how MongoDB persists collections and indexes in WiredTiger:

dev.to/franckpachot...

15.09.2025 07:10 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Encryption is not yet there in PostgreSQL

09.09.2025 12:54 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Queryable Encryption - Database Manual - MongoDB Docs

As that's on disk and malicious users with host access may access memory, the only full protection is encryption from the client. MongoDB has such queryable encryption:
www.mongodb.com/docs/manual/...

09.09.2025 10:46 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Yes, more difficult as you have to calculate checksum and propagate to parent. Encryption protects from reading/changing block content

09.09.2025 10:43 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Resilience of MongoDB's WiredTiger Storage Engine to Disk Failure Compared to PostgreSQL and Oracle There have been jokes that have contributed to persistent myths about MongoDB's durability. The...

For nearly a decade, MongoDB provided reliable persistence with one of the most robust storage engines. Yet somehow, the oldest jokes keep persisting, too, so here are some facts:

dev.to/franckpachot...

09.09.2025 07:22 β€” πŸ‘ 7    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0
Preview
DocumentDB: Comparing Emulation Internals with MongoDB MongoDB is the leading database for document data modeling, with its Atlas service available on AWS,...

MongoDB is popular, inspiring databases to mimic its features on top of RDBMS. Examining execution plans can provide insight into how things workβ€”such as how to simulate multi-key indexes in a database engine designed for single-key indexes on normalized schemas
dev.to/aws-heroes/d...

01.09.2025 12:14 β€” πŸ‘ 4    πŸ” 3    πŸ’¬ 0    πŸ“Œ 0
Preview
Updates to the Same Value: MongoDB Optimization In MongoDB, when you update a field to the same value it already holds, the database optimizes the...

If you update a row/document with the same values, is it still an update, or should the database skip the write? SQL vs NoSQL.
dev.to/franckpachot...

28.08.2025 19:44 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Embedding into JSONB still feels like a JOIN for large documents Think PostgreSQL with JSONB can replace a document database? It’s a tempting idea: embed your related...

Embedding a One-to-Many relationship into JSONB to avoid joins, if over 2KB, hides the join, but does not prevent it. Here's how PostgreSQL TOAST works:
dev.to/franckpachot...

25.08.2025 13:09 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

SQL or NoSQL?
@franckpachot.bsky.social explains how to pick the right model for your app in this #IntelliJIDEAConf session πŸ‘‰ youtu.be/CuA84bJEjDo

20.08.2025 12:03 β€” πŸ‘ 12    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Preview
MongoDB arrays: sort order and comparison Arrays in MongoDB are ordered lists of values, and querying them can be confusing because a field...

New blog post about comparing and sorting arrays in @MongoDB πŸ‘‡πŸΌ

It's a long story with a short conclusion to help remind it.

dev.to/franckpachot...

18.08.2025 09:42 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Why doesn't Oracle Multi-Value Index optimize .sort() like MongoDB does with its multi-key index? Until recently, Oracle Database offered very limited options for creating inverted indexes, primarily...

πŸ€“ Some geekery (for my #POUG2025 talk) on index dumps and internals to understand how Oracle Database emulates MongoDB multi-key indexes, and where the limitations come from.

dev.to/franckpachot...

15.08.2025 14:34 β€” πŸ‘ 5    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
Does PostgreSQL support as much "schema flexibility" as MongoDB? Not for indexing! Another day, another myth. Someone on Medium claims PostgreSQL offers as much "schema flexibility" as...

PostgreSQL makes it easy to fact-check internet myths: read documentation + test with explain analyze πŸ‘‰πŸ» an example: dev.to/mongodb/does... πŸ€”

13.08.2025 05:59 β€” πŸ‘ 5    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Preview
MongoDB indexing internals: showRecordId() and hint({$natural:1}) You can understand how MongoDB stores documents internally with simple queries that rely on the...

Is MongoDB storing documents like heap tables or index-organized tables?

πŸ‘‰πŸ» kind of both, a B+Tree optimized for flexible size documents

dev.to/franckpachot...

07.08.2025 14:17 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

I made it more clear in the article.Thanks for the feedback. It's OCC in WiredTiger, per document, and MongoDB built fail-on-conflict on top, for transactions. Commit should not fail because of data, and could be retried without rollback what was done. Some drivers do that to be resilient to failure

07.08.2025 09:46 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Per statement. I should use fail-on-conflict rather than OCC which is generally used for detection at commit

05.08.2025 23:44 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Transaction performance πŸ‘‰πŸ» retry with backoff A benchmark sponsored by EDB, a PostgreSQL company, in 2019 contributed to the myth that MongoDB...

Benchmarks from DbX's vendor showing it's faster than DbY are mainly marketing and serve little purpose in promoting DbX. However, they can help DbY's users spot poor design choices and anti-patterns that made DbY slower than carefully-tuned DbX
dev.to/franckpachot...

05.08.2025 14:09 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Why MongoDB skips indexes when flattening or renaming sub-document fields in $project before $match aggregation pipeline MongoDB is a general-purpose database that offers more than just a JSON datastore. It is recognized...

Query planner transformations on MongoDB documents with flexible schemas can surprise users familiar with SQL databases, which typically have fixed tabular schemas. An example of these subtle differences is explained in a new blog post. dev.to/franckpachot...

04.08.2025 17:57 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

@franckpachot is following 20 prominent accounts