Re: Informix vs. Sybase vs. Oracle vs. (gasp) MS SQL Server
Posted in 1997
Pablo Sanchez (pablo@sgi.com) wrote: : >>>>> "Paul" == Paul Brown <pbrown@triplerock.Berkeley.EDU> writes: : Paul> : Paul> To quote from Jim Gray, (_Transaction_Processing_:_Concepts_and_ : Paul> Techniques_ pp. 420-21); : Paul> : : Unless something has changed, aren't you still an Informix : employee (or employed in some fashion by them)? If so, then : of course you're going to post supporting literature... Yes. I am an Informix Employee. You're the keeper of the Sybase FAQ. Religon counts for something. When I'm speaking on behalf of Informix, I'll post from an Informix account. When I'm simply trying to contribute to a technical debate, and don't want my affiliations to obscure my contributions, I post from UCB. I said *nothing* positive or negative about anyone. If you like, I can post references to the IBM research (some of which is also attributed to Jim Gray) which argues for your case. The irony here is that I actually agree with you! A well designed schema should require only page granularity. (Another important topic unbroached in this thread concerns lock escallation strategies.) But the practical reality is that people don't always do 'the right thing'. This is the 'hard lesson' Gray refers to. We all start out convinced, for the best technical reasons, that page locking is all you need. Then you go to your first customer who has a god-awful schema, a profound unwillingness to change anything, and the demand that you get their hunk-o-junk to work. (Paging SAP. Please pick up the white courtesy phone . . ) : Anyway, I think the answer lies with the TPC-C. I think : that they prove that row-level vs page-level locking is not : an issue. The -C's are a finely tuned OLTP application. TPC-C proves it isn't a technical problem. And it isn't. It's purely an economic one. Note: I do think that the case may change for extensible DBMSs. Consider what goes on when you're doing query that includes an expensive function (it may take a minute to complete). The case for row level locking (even value level locking) becomes more impressive.