SF PUG video - PostgreSQL for high performance Rails apps

Posted by Tom Copeland Fri, 28 Aug 2009 12:07:00 GMT

Here's a video from a few months ago - a talk given by Gleb Arshinov (CEO of Pluron) on June 9 2009 at the San Francisco PostgreSQL User's Group entitled "PostgreSQL as a Secret Weapon for High-Performance Ruby on Rails Applications". Here's the link to the mov file, and here are all the SFPUG videos. Note that the video file is 409 MB; I'm asking around to see if there's a version uploaded to YouTube or something.

Some notes on the presentation:

  • Pluron makes Acunote, an Agile project management app. They have 4K customers (some at EngineYard, some internal). They use nginx+mongrel.
  • Have used PostgreSQL from day one for their app.
  • PostgreSQL has good SQL standard compliance, good documentation.
  • Noted that PostgreSQL doesn't support bulk update (e.g., ON DUPLICATE KEY UPDATE). A good discussion here around the 21:00 about possible solutions and problems with race conditions and such. The slide has some text about replication but unfortunately he doesn't talk about that.
  • Mentions Acunote's virtual attributes plugin
  • Discusses their treatment of tree structures around 33:40.
  • Talks about pagination at 37:00.
  • Talks about their search language at 42:00. As far as I could tell they're not using Sphinx or any external search tool... not sure if they're using PostgreSQL full text search or not.
  • Around 46:00 discusses using any(array()) vs in(). Interesting if you don't mind going database-specific in your Rails app.
  • At 1:03:00 suggests using SQL DDL via Rails DDL DSL (e.g., CREATE TABLE vs create_table). Same for using SQL to do data changes in migrations. I've found that this is a good idea as well, especially when dealing with larger data sets.
  • Recommends using foreign key constraints - but using them to protect data integrity, not to implement business logic.

A great presentation with some good technical content... highly recommended!

Trackbacks

Use the following link to trackback from your own site:
http://railsonpostgresql.com/trackbacks?article_id=7

Leave a comment

Comments