In the thread "Document or Data" it was discussed
wether to perform document validation on the client side or on the server
side.
Here's my personal opinion.

I'm coming from the RDBMS world.
For historic reasons, we've been performing validation 
on the client side for years (decades, actually), because it seemed easier.

But with growing application complexity,
we soon found out that it is much better to perform validation
on the server side, because otherwise you definitely end up
with multiple versions of the same code or (worse)
with inconsistent or incorrect data in the database.
Once incorrect data is in the database, it is very hard to
find out which data exactly is incorrect and how to correct it.

So we found out that -in the real world- it is better to perform
validation on the server side, just like the theory tells us.

   If you want to call XIndice a "database", then maintaining
   integrity and consistency should be No.1 on the ToDo list.

Others might say that performance is more important,
but my personal opinion is that hardware gets cheaper
and more powerful all the time, 
but your data is the treasure you must keep.

    At any time, you can buy a new CPU, more RAM and so on
    for a few dollars, but once your database is corrupt you are doomed.

No.2 on the ToDo list should be the ability to run the
database in a way that computing power can be shared 
between a handful computers.
Then some processes could do validation
while others could do storage (input/output).
With such a scalable design you can get
better performance by just buying new computers.

Henning

Reply via email to