Salute, Evernote

I have been using Evernote for a long time, and more and more lately.

As I continue to work on my file-organizing research project (continue to rush before the deadline), finally I found out what I have been using to do th e work is actually quite similar to what I want to do.

Indeed, after all organizing file & note share same objectives, at least for human logical view. What we need to organize is a piece of information and the way we do so should be simple & fast enough, which is the reason I started the project.

Although I am not a big fan of Evernote as a user (I am a big fan of Onenote)(And thats why this post is not an advertisement), after I studied the internals of it I found it quite impressive.

Familiar words & Jargons are seen. Sharding, Job Node, WebDAV, Lucene… Many problems have been faced and they do it pretty well. Quite a lot for me to learn.

Some impressive things I noted:

Internals

As in post of “A Digest of Evernote’s Architecture” The basic stack of Evernote is

Debian + Java 6 + Tomcat + Hibernate + Ehcache +  Stripes +GWT + MySQL (for metadata) + hierarchical local file systems (for file data).

To my surprise, MySQL is being used (Once upon a time a famous blogger said it is the only db with data integrity issue, source:forgotten!). Anyway none of the DB in the world I am familiar with, therefore I could not comment.

And for the question Why SQL (at all), you can find the official answer in this post

To sum up, it is the ACID properties, which ease their awesome synchronization model.

Sharding

It is meaningless to create a data storage application if it cannot scale. Evernote do this amazingly. It leverage its advantage — basically there is not much to be shared among users in terms of data (ignoring shared notebooks).  Every User’s data is localized in one shard, replicated in 2 VMs in it using DRBD.  Each shard handle both data & application logic for 100,000 users. This model scales in horizontal pretty nice. Here sharding is not a buzz word like what echoes in some companies’ meeting rooms.

To keep these servers manageable,  the automation deployment is doing good of course.

This is how they improve the model recently, where one point of improvement is for the great IO produced by the Lucene Indexing. The latest model introduce metadata+app shard using SSD
Cost drop from $0.10/ hardware & 3.7mW/power  to  $0.05 and 1.4mW per user.

The searching capability

Perhaps the most crucial part. When you create a new note, its content is immediately searchable. This is extremely useful, besides normal searching this speed is a feature which save the day when I am organizing notes create now and then, trying to referring back to the note I am working on. And searching are not limited to plain text, but also Pdf and images.

There are unbelievable state-of-the-art technology and dedicated infrastructure being used for image processing, even for free accounts.

For some details, read here for the indexing system, esp on AIR Servers which are for image processing and even more details

Successful Freemium Model

Compare to many nice & popular websites that with  yet-to-sure business model (remember the ad-free youtube?), Evernote’s Freemium model is among the most successful ones. (Dropbox comes to mind, of course)

Evernote IS making money. Numbers speak for themselves

34M Users, 1.4M Paying User.   $30 million, triples annualy   1B valuation, IPO in todo list (2012)

Sharing the technical details

Not every company, esp closed source, wants to share their technical stuff like Evernote does.  Sometimes you will read article like facebook’s self-healing engine. While the tech blog in Evernote is really detailed and nice written. Some companies I know have even worse internal documentation compare to these blogs.

It is a culture of sharing, let people criticize the design and tell them what they want. This is what I am most thankful for and how I can write this blog post.

This post is about the tech & business side. I skipped lots of details (while they are in my evernote notebook.) Let see if I have time & interesting points to discuss later.

I am going to write another post on some on my experience with it / smart tools with using it.

Advertisements

8 thoughts on “Salute, Evernote

  1. Reorganizing my blogging experience – write markdown in Evernote with Postach.io and sync to WordPress – Kleine Blase

  2. Reorganizing my blogging experience – write markdown in Evernote with Postach.io and sync to WordPress – Kleine Blase | kelt cloud space

  3. Third time’s the charm | mikako520's Blog

  4. test post #2 | mikako520's Blog

  5. test post IFTTT | mikako520's Blog

  6. new IFTTT trial | mikako520's Blog

  7. LAST TIME | mikako520's Blog

  8. Excellent beat ! I wish to apprentice while you amend your web site,
    how could i subscribe for a blog web site? The account helped me a acceptable deal.
    I had been tiny bit acquainted of this your broadcast provided bright clear concept

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s