MongoDB: A New Genie in the LAMP (Stack) Kristina Chodorow kristina@mongodb.org
a retrospective
SQL invented now 1974 2010
SQL invented now 1974 2010
SQL invented now 1974 2010 1979
SQL invented now 1974 2010 1979
SQL invented now 1974 2010 1982-1996 1979
SQL invented now 1974 2010 1982-1996 1995 1979
SQL invented now 1974 2010 1982-1996 1995 2010 1979
until 2009...
until 2009...
SQL invented now 1974 2010 1982-1996 1995 1979 2010
server databases contain tables contain rows
server schema databases contain tables contain rows
server schema databases contain tables contain rows joins
things have changed in the last 15 years duh
SQL invented now 1974 2010 1982-1996 1995 1979 2010
1995 SQL invented now 1974 2010 1982-1996 1995 1979 2010
1995 2738 websites 1994 SQL invented now 1974 2010 1982-1996 1995 1979 2010
>10,000 websites 1995 1995 2738 websites 1994 SQL invented now 1974 2010 1982-1996 1995 1979 2010
>10,000 websites 1998 1995 1995 2738 websites 1994 SQL invented now 1974 2010 1982-1996 1995 1979 2010
We should get a mainframe, old chap. Harumph.
never leave me!
downtime becomes important
hardware ok?
failover to slave no hardware ok?
failover to slave no hardware ok? yes fsck worked?
failover to slave no hardware ok? yes no fsck worked?
failover to slave no hardware ok? yes no fsck worked? yes transaction log
failover to slave no no hardware ok? yes no fsck worked? yes transaction log
failover to slave no no hardware ok? yes no fsck worked? yes yes transaction yay! log
failover to slave no no hardware ok? yes no fsck worked? yes yes transaction yay! log
>10,000 websites 1998 1995 1995 2738 websites 1994 SQL invented now 1974 2010 1982-1996 1995 1979 2010
>10,000 websites 1998 1995 1995 2738 websites 2004 1994 SQL invented now 1974 2010 1982-1996 1995 1979 2010
>10,000 websites 1998 1995 1995 2738 websites 2004 1994 BigTable 2004 SQL invented now 1974 2010 1982-1996 1995 1979 2010
MapReduce >10,000 websites 2005 1998 1995 1995 2738 websites 2004 1994 BigTable 2004 SQL invented now 1974 2010 1982-1996 1995 1979 2010
you left me!
eh, whatever.
prod1.example.co m prod2.example.co m
prod1.example.co m prod2.example.co m
prod1.example.co m prod2.example.co m
prod2.example.co m prod1.example.co m
prod1.example.co m prod2.example.co m
prod1.example.co m prod2.example.co m
prod1.example.co ? m prod2.example.co m
prod1.example.co m prod2.example.co m
? prod1.example.co m prod2.example.co m
prod1.example.co m prod2.example.co m
prod1.example.co m prod2.example.co m
primary secondary secondary passive
My priority is 2 My priority is 1 secondary secondary passive
primary secondary passive
I'm 3ms behind I'm 2ms behind secondary secondary passive
secondary primary passive
I'll still take reads. passive
okay
?
make sure two slaves have this
all set
EXCEPTION
EXCEPTION
E
MapReduce >10,000 websites 2005 1998 1995 1995 2738 websites 2004 2007 1994 BigTable 2004 SQL invented now 1974 2010 1982-1996 1995 1979 2010
Application PHP Apache Linux
getting started
www.mongodb.org
$ mysqld
$ mongod
$ mysql
$ mongo
$ mongo MongoDB shell version 1.6.0 connecting to: test >
$ mongo MongoDB shell version 1.6.0 connecting to: test > db
$ mongo MongoDB shell version 1.6.0 connecting to: test > db test >
$ mongo MongoDB shell version 1.6.0 connecting to: test NO ADMINISTRATION > db test >
$ mongo MongoDB shell version 1.6.0 connecting to: test > db test > table = db.foo
server
server databases
Recommend
More recommend