Forum OpenACS Q&A: Response to How would one handle 12,000 db backed request per second?

Just an interesting side-note. Assuming most of those massively many "hits" are SQL queries (and frequently one hit uses the same identical SQL query as the next).. you may find it interesting that most websites end up doing few work on tuning the database and much more time on the caching server, the web server, the data and domain partitioning engineering, clustering and networks. Basically little is changed on the server. Just figure out a way not to force it to do something it CAN'T. One of the things people figure out is that you still shouldn't ask a Oracle box to handle thousands of practically identical queries for no apparant good reason.

It's interesting that Don mentioned SABRE, because in some ways SABRE does on the spot reservation and availability queries for goodness knows how many car rentals, hotels, and airlines. Each query is likely to be unique (although there will be hot spots--or opportunities for tuning--like people care most about next week's flight availability--less so next years).. and each transaction does count. However, it seems like that sort of database would benefit from a smart (less work building and maintaining) data partitioning plan (to achieve the high transactions per second)--one clearly neither Oracle nor another major RDBMS vendor could provide--why else would they build their own database engine (I don't know if they use Oracle or build their own engine)? Has any one at SABRE (or APOLLO) written about the engineering problems they were trying to solve? It'd be interesting read. Travelocity.com is a SABRE company I believe, is it merely a website that talks to the same RDBMS engine or does it talk to a commercial database like Oracle? I am very interested in hearing something from a SABRE expert!