pyvideo.org: Videos of Niall O'Higginshttp://www.pyvideo.org/speaker/207/niall-o-higgins/rssen-usFri, 11 Mar 2011 00:00:00 -0600500MongoDB + Pylons at Catch.com: Scalable Web Apps with Python and NoSQLhttp://www.pyvideo.org/video/399/pycon-2011--mongodb---pylons-at-catch-com--scalab<p>Description</p>
MongoDB + Pylons at Catch.com: Scalable Web Apps with Python and NoSQL
Presented by Niall O'Higgins
The Catch.com backend provides an API for publishing and querying your
personal data - used by many hugely popular Android, iOS and Web clients. We
ported this system to Python and MongoDB, using the Pylons Web framework. This
talk details our reasoning for choosing - and experiences with - these
cutting-edge Web and NoSQL database technologies in a high-traffic, real-world
production system.
Abstract
Faced with the limits of our initial Catch.com Java/BDB backend implemention,
we evaluated various alternative technologies including Amazon SimpleDB,
MySQL, Cassandra and MongoDB. Eventually we settled on Python, Pylons and
MongoDB.
We found Python and MongoDB gave us unique flexibility with our data model,
allowed us to scale for increased reliability and performance and decreased
feature development time - and in this talk we'll describe exactly how.
While there are many advantages, Python/Pylons and MongoDB (as a relative
newcomer on the database scene) certainly have issues and limitations which
must be taken into careful consideration for any real-world production
deployment.
We compare MongoDB with other database technologies such as more traditional
RDBMS like MySQL and competing NoSQL options such as Cassandra, CouchDB and
BDB.
We give a detailed introducton to data modeling in MongoDB - with special
attention paid to how this differs from a traditional relational system - the
operators provided by its rich query language and utilizing advanced features
such as GeoSpatial indexing, Replica Sets, Sharding - and how to deal with
some of the more publicized limitations of the system (such as single-server
durability).
While much of this talk will be about using MongoDB with Python, we will also
touch on issues surrounding production deployment of the Pylons Web framework,
including how we work around the GIL to take advantage of multi-core machines.
Niall O'HigginsFri, 11 Mar 2011 00:00:00 -0600http://www.pyvideo.org/video/399/pycon-2011--mongodb---pylons-at-catch-com--scalab