When and why are database joins expensive?

I’m doing some research into databases and I’m looking at some limitations of relational DBs.

I’m getting that joins of large tables is very expensive, but I’m not completely sure why. What does the DBMS need to do to execute a join operation, where is the bottleneck?
How can denormalization help to overcome this expense? How do other optimization techniques (indexing, for example) help?

Personal experiences are welcome! If you’re going to post links to resources, please avoid Wikipedia. I know where to find that already.

In relation to this, I’m wondering about the denormalized approaches used by cloud service databases like BigTable and SimpleDB. See this question.

7 Answers
7

Leave a Comment