I don't, and many times we don't have the luxury of having such
examples or data. I'm in a different kind of real-world situation: I'm
setting up a database server on a 4-core machine that is going to
carry a heavy load -- it's performance will be critical to the success
of the project -- and I need to choose the OS that gives me the best
chance of meeting my performance and stability requirements. Since the
database will be large, I'd really like to get this right the first
time and don't have the time to do experiments/benchmarking to guide
me. That's why I'm asking questions, hopefully to improve the
probability of getting this right.
Hi,
I am not sure what database you will use, either ProgreSQL or MySQL. or
something different.
You do not specify if your database applications will do heavy updates,
or heavy read, two different approaches to the problem and can be solved
differently as well. You do not say either what you defined as heavy either.
I have been using database on OpenBSD for 11 years now and yes I do
heavy access as well as updates on it without issue. You can even find
trace of this in archives for years back and many suggestions to improve
the setup witch is overlook most of the time by to many. Both database
operations are different, one can benefit from threads more, the other
operate better without. Not really a multiple cores issues here.
And yes heavy load in my book is not define only as a small 100K query
per hours either, nor one million would be consider to heavy either.
So, what's heavy for you may be just simple routine for others and no, I
do not miss the fine lock either yet anyway. Would be nice, but really,
I haven't run into it's need for me anyway yet.
Now if you have to do this project and want it right and aid you don't
have the time to do it right, or experiment to make it right, I would
really questions your reason here. Do you expect others to do the work
for you? No offense intended, but if you want it right, wouldn't you
think at a minimum you need to take the time to make it right and test
it. If this is how you do things really, as a side note, I sure wouldn't
want you to work for me for sure. How could I trust you to do it right
if you don't even want to test it and spec what you need to start with?
Again, I don't mean to offend you, so if that does it, I am sorry for
that, but I put it for your thoughts process and suggest to do your
homework, not be a manager type form the start and try to find someone
else to blame before you get started on your project in case it goes
wrong and then jump to take all the credit if it does right oppose to
give it to the one that would tell you all how to do it.
Make sense no?
Any just to make sure you understand it. You come and asked this, then
justify it by saying its heavy and need fine lock, but still you do not
put forward anything for anyone to tell you if yes or no it make sense
for the load you expect, or that database of choice you want to use, but
just to try to push your point forward and see if anyone would bite and
do the work for you.
There is a lots of heavy users of database on this list and none
complains not having fine lock. In some extreme cases, yes it may be
helpful, but again replications for example for pretty darn heavy query
is very simple to do and I can tell you that you would be hard press to
run out of capacity.
All depend on what you define as heavy and what you do.
Hope this provide you some food for thoughts.
Best,
Daniel