Why Evernote Sticks with MySQL Instead of Jumping on the NoSQL Bandwagon

Published on 10/09/2026 16:00

Hey there, fellow techies and note-takers! If you've been following the latest trends in the world of data management, you might have heard that NoSQL databases have been the talk of the town lately. With companies obsessively looking for ways to optimize their data storage, you would think that even a giant like Evernote would follow suit, right? Well, it turns out that the folks at Evernote have some solid reasons for sticking with their beloved MySQL setup. Let's dive into why Evernote's CTO, Dave Engberg, keeps the faith—especially when it comes to ACID compliance.

What Are We Talking About?

First off, let's break things down a bit. Evernote isn't just your run-of-the-mill note-taking app; it hosts nearly a billion notes and about 2 billion resource files! It sounds tempting to jump on that NoSQL train, given the vast amount of data they handle. But wait, there's more to the story. While some applications might find big benefits in modern key-value storage engines, Evernote believes that their tried-and-true MySQL solution still has its merits.

The Big Deal About ACID Compliance

So, what is ACID compliance, and why should you care? It's actually a pretty big deal for services like Evernote. ACID stands for Atomicity, Consistency, Isolation, and Durability, and these concepts are essential in ensuring that data is accurately stored and remains reliable. Engberg specifically highlights the InnoDB storage engine that MySQL uses. Here's what each of the ACID principles means for Evernote users, in plain English:

  • Atomicity: Think of it like a magic show. When you make a change (like adding a new image to a note), it's either performed completely or not at all. No half-baked attempts allowed! If there's a hiccup during the process, you won't end up with a jumbled mess.

  • Consistency: This principle ensures that you won't see weird anomalies in your notebooks. For example, no disappearing notebooks with random “dangling” notes just because something went awry. Everything stays where it should!

  • Durability: This is the big one! Imagine this as a guarantee from Evernote. If the app says your notebook is created or changed, you can bet your last dollar it really is! If changes weren't durable, every user would have to play detective just to ensure everything lines up correctly, and nobody wants that chaos.

Scaling with Style

Now, let's address the elephant in the room—scalability. Many services are scurrying to NoSQL because scaling can be a nightmare. However, Engberg points out that Evernote cleverly sidesteps this issue by partitioning its data into 20 million unique datasets—yup, one for each user. It’s like saying, "Why hike a crowded mountain when you can take the scenic route?"

Evernote has a rather unique perspective on its data challenges. Instead of wrestling with what they call "big data," they tackle "medium data" storage issues that fit beautifully into a sharded architecture. Engberg describes their setup as tailored for less overwhelming problems, which keeps things running smoothly.

A Nod to the Future

But what about Evernote's aspirations? Engberg does mention that while their user metadata benefits significantly from MySQL's robustness, they’re not blind to newer technologies. For projects that don’t require the same level of ACID compliance, Evernote is definitely keeping its options open. Their reporting and analytics systems have already outgrown MySQL and are prime candidates for an upgrade in the future.

So, there you have it! Evernote is staying put with MySQL for their core user data while keeping one foot in the door of modern tech advancements.

Conclusion

In the world of evolving technology and data management, not every tool fits every job. Sometimes, sticking to what works is the best strategy. Evernote’s commitment to ACID compliance with MySQL helps ensure that user notes are safe, synchronized, and, best of all, reliable. They’re not just riding the wave of trends but taking careful steps to ensure their users get the best experience possible—even if it means going against the grain.

Now, eager to know more? Let's tackle some frequently asked questions!

FAQs

1. What is ACID compliance, and why is it important?
ACID compliance ensures that data transactions are processed reliably. It stands for Atomicity, Consistency, Isolation, and Durability, which are crucial for keeping your data safe and intact.

2. Does Evernote use NoSQL databases?
No, Evernote primarily relies on MySQL for its user metadata while considering NoSQL for other projects that don't need strict ACID compliance.

3. Why does Evernote prefer MySQL over NoSQL?
Evernote values the robustness and reliability provided by MySQL’s ACID compliance, which is essential for ensuring accurate data synchronization.

4. How does Evernote handle scaling with so much data?
Evernote scales by partitioning data into 20 million datasets, one for each user. This sharded architecture simplifies their data management.

5. Could Evernote switch to a different database in the future?
Yes, Engberg has mentioned that they are exploring newer technologies for projects, especially those that require less stringent data management.

6. What kind of data problems does Evernote face?
Evernote deals with what they call "medium data" storage problems, which are more manageable than traditional big data challenges.

7. How has Evernote's architecture evolved over time?
While their core system relies on MySQL, they are evolving their architecture gradually to incorporate new tools and technologies, especially for reporting and analytics.

8. What advantages does MySQL offer for Evernote?
MySQL provides Evernote with a reliable structure for data consistency, durability, and accuracy, which are paramount in maintaining a seamless user experience.

← Back to Articles