[erlang-questions] "Erlang plus BDB: Disrupting the Conventional Web Wisdom"

Chris Newcombe <>
Thu Oct 11 19:07:17 CEST 2007

Ulf wrote:

   >>2007 has been a good year for Erlang

I thought people might be interested in this...

The bi-annual conference on High Performance Transaction Systems
(sponsored by Amazon, Google, eBay and others), took place this week.


Margo Seltzer gave a talk entitled:

  "Erlang plus BDB: Disrupting the Conventional Web Wisdom"

Margo is an original author of Berkeley DB, founder and CTO of
Sleepycat Software (maintainers of Berkeley DB, acquired by Oracle
around two years ago), and is currently an architect at Oracle.  She
is also Herchel Smith Professor of Computer Science at Harvard

None of the presentations are online yet, but I've pasted the abstract
of Margo's talk below.

FYI you can download EDTK and the BDB driver from:



>From http://www.hpts.ws/hpts_abstracts2007.pdf :

 Tuesday 11:00AM – 11:30AM Margo Seltzer Oracle/Harvard

  Erlang plus BDB: Disrupting the Conventional Web Wisdom.

  "The conventional wisdom says that you implement a web site with web
servers, application servers, and a relational database backend.
However, this solution is neither scalable nor reliable. Next
generation high performance, highly reliable web sites are going to be
implemented using Erlang and Berkeley DB.

Erlang is a language, developed by Ericsson, used in mission-critical
telecom applications requiring nine 9's -- yes, that's 31 ms/year of
downtime. Erlang applications achieve non-stop operation, live
upgrades, and failure resilience, by taking the historic UNIX model of
small, simple processes to the extreme.
Applications consist of thousands or tens of thousands of isolated,
light-weight processes, communicating through message-passing. The
magic is that Erlang process creation and IPC are fast (a few
microseconds), but there is no shared memory, no mutexes, and all
Erlang data are immutable.

The only thing missing from Erlang is large-scale persistent storage.
Enter Berkeley DB. Berkeley DB is an embedded database library
providing ACID, replication, and automatic failover. The Berkeley DB
Driver in the Erlang Driver Toolkit unites the scalable,
fault-resilient, and highly concurrent Erlang
environment with the high-performance, highly- available, flexible
storage of Berkeley DB. This combination enables the development of
enormous, high-performance web sites with the reliability profile of
mission-critical telecom switches."

More information about the erlang-questions mailing list