Alternative Databases: Scott Macvicar Dutch PHP Conference 2009
Alternative Databases: Scott Macvicar Dutch PHP Conference 2009
Scott MacVicar
Dutch PHP Conference 2009
Relation Table
Derived
Result Set
Relation
Tuple Row
Attribute Column
Domain Type
Saturday, 13 June 2009
SQL Purpose
Retrieval
Manipulation
Transactions
Complex Specification
Join Fails
Where clause
Secure Share
Simple Protocol
Tried and tested DB
Transactions
Replication
Collection of types
Created for mixi.jp (Facebook of Japan)
Common API
New in PHP6, maybe PHP 5.3.1
Key Value
Key Value
Key Value
Key Value
Key Value
Key Value
Ordered Access
Multiple Keys
Cursor
Schema-less
Named Attributes
Indexes
Queries
Network wrapper
Speaks Memcache / HTTP
Extension in works by Mikko
High Availability
Asynchronous Updates
Lua scripting
REST
JavaScript
Erlang
Document Database
Replication
Map Reduce
No Indexes
GET /_all_dbs
PUT /somedatabase/
DELETE /somedatabase/
GET /somedatabase/
GET /somedatabase/_all_docs
PUT /somedatabase/some_docid
POST /somedatabase/
DELETE /somedatabase/some_docid
GET /somedatabase/some_docid
Caching
Clustering
Layering
PHPillow - http://short.ie/buiqhu
Phly_Couch - http://short.ie/pa47gp
XML Rest
Application
1 billion attributes
5 seconds execution
1024 byte values
http://talks.macvicar.net
http://couchdb.apache.org
http://aws.amazon.com
http://memcachedb.org