Data partitioning? Sorry, I disagree that partitioning a table into more
and more servers is the way to scale properly. Perhaps putting
databases' tables onto different servers with different hardware
designed to meat different usage patterns is a good idea, but data
partitioning was a very short lived idea in the world of databases and
I'm glad that as an idea it is dying in practice.
Evaldas Imbrasas wrote:
> Since the question was about *really* big websites, the answer is both
> yes and no.
> Yes, they do turn off RI on the database side, simply because it's not
> possible to enforce RI on a database system where data is partitioned
> across server farms (or shards) both vertically and horizontally. And
> really big websites can't survive without the data partioning.
> No, they don't usually turn off RI just to improve performance,
> because the gains would be minimal, and for big websites, scalability
> is a much bigger issue that performance (although sometimes one
> depends on the other), and data partitioning is the way to go to solve
> the scalability problem.
> On 5/24/07, Naz Gassiep <naz@stripped> wrote:
>> I'm working in a project at the moment that is using MySQL, and
>> people keep making assertions like this one:
>> "*Really* big sites don't ever have referential integrity. Or if the
>> few spots they do (like with financial transactions) it's implemented
>> on the application level (via, say, optimistic locking), never the
>> database level."
>> A large DB working with no RI would give me nightmares. Is it really
>> true that large sites turn RI off to improve performance? Am I just
>> being naive in thinking that everyone runs their DBs with RI in