I'm testing different locking schemes for a big table, more than 4 million rows and expected to grow up to 10 million.
My experience with SyBase:
ALLPAGES, extremely slow BCP (in) and update with a field that belongs to the Primary Key.
DATAROWS, fast BCP, fast update for fields in the PK, fastest select.
DATAPAGES, fastest BCP and update, and faster select than ALLPAGES but not as fast as DATAROWS.
I'm not an expert, but it seems to me that DATAROWS blocks more than DATAPAGES, and I haven't seen any downside with DATAPAGES.
The only point in favor for DATAROWS that I could find was a bit faster performance in selects that use primary key, but DATAPAGES is considerably faster at updates.
Any experiences in practice?
How does this locking schemes compare?
Pros/Cons of each one?
I tried to read about the theory behind it, but it's not very clear to me.