Super Volatile

Krzysztof Szafranek's link blog

Hi, I'm Krzysztof and I make websites.
When I'm not making websites, I read these.
Nov 13, 2011 / 1:25pm

ORM is an anti-pattern

The whole point of an abstraction is that it is supposed to simplify. An abstraction of SQL that requires you to understand SQL anyway is doubling the amount you need to learn: first you need to learn what the SQL you're trying to run is, then you have to learn the API to get your ORM to write it for you. In Hibernate, to perform complicated SQL you actually have to learn a third language, HQL, which is maddeningly almost-but-not-quite SQL, which then gets translated to SQL for you.

more on seldo.com

On fundamental flaws of ORM. When one reads this article it sounds obvious, but for some reason I've seen ORM used with many projects without any reflection if it's actually saving work or adding it.

Filed under: database   programming  
Oct 2, 2010 / 3:37pm

Why Enterprises Are Uninterested in NoSQL

Much of the OLTP data kept by this company is mission critical. Screwing it up causes people to lose their jobs. In his world, ACID is the gold standard for update to shared data sets. Any system that does not support real transactions is considered a nonstarter in his OLTP environment.

Even if a data set can get by with single-record transactions now (a common feature of NoSQL DBMSs), he is unwilling to guarantee that it will never need multi-record transactions in the future. Put differently, his company assumes that ACID may be required in the future for any OLTP data set, and nixes non-ACID systems.

more on cacm.acm.org

A pinch of salt in the NoSQL hype.

Filed under: database   nosql  
Mar 27, 2010 / 10:56pm

I Can't Wait for NoSQL to Die - Ted Dziuba

You Are Not Google

The sooner your company admits this, the sooner you can get down to some real work.  Developing the app for Google-sized scale is a waste of your time, plus, there is no way you will get it right. Absolutely none. It's not that you're not smart enough, it's that you do not have the experience to know what problems you will see at scale.

I've participated in more than one project that suffered great from the developer's obsession with “scalability” and eventually died in oblivion. NoSQL is great sometimes but it's not a silver bullet and SQL is going to stay. It's good to have a choice.

Filed under: database   scalability  
Mar 24, 2010 / 8:45am

Digg: 4000% Performance Increase by Sorting in PHP Rather than MySQL

Scaling practices turn a relational database into a non-relational database. To scale at Digg they followed a set of practices very similar to those used at eBay. No joins, no foreign key constraints (to scale writes), primary key look-ups only, limited range queries, and joins were done in memory. When implementing the comment feature a 4,000 percent increase in performance was created by sorting in PHP instead of MySQL. All this effort required to make a relational database scale basically meant you were using a non-relational database anyway.

Nice article on scalability, based on the interview of former Digg CTO.

Filed under: database   scalability