Re: Is Interbase still thriving?



Eric Grange wrote:
MS-SQL borrows the lock/transaction manager from Sybase. I can assure you it does not impact performance on large system.


Well, I can assure you that 2 users were enough to result into performance
issues, short of reengineering the whole SQL and database structure around
MSSQL shortcomings or, yuck!, using dirty reads.
If your developers had only Oracle experience, I am sure it is to be expected. I saw it myself too often to forget.
But, considering, as I said, that DB2, Sybase ASE and MS SQL shares this approach to transaction consistency, do you really think it could be limited in scalability? What about those major financial companies running on Sybase (e.g. Nasdaq)? Maybe they run their systems with only one user? <g>



> I manage today servers using Sybase with aproximately 1500 concurrent users,
> with good performance and very few deadlocks.


If you have write-only and read-only tables yes, with maybe some regular process
to transfer data from one table to another.... which is what I call prehistoric.
Standard OLTP and DSS, sometimes mixed. Of course all the model was pretty normalized, nothing diferent from what you would expect in an Oracle DB.

In Oracle and Interbase (and PostgreSQL AFAIK), you can read at any time from
a table that is being written to, with no "dirty reads", and no lock ups,
meaning you can layout your database structure according to the data constraints
and data model, rather than according to the DB engine's limitations.
With those RDBMS, the problem isn´t in your Model, is with your transactions. It´s very important that you design your transactions to be small, short-lived. Do this and you won´t have contention problems.
But in most of the real-world, is pretty rare when you HAVE TO do a very long transaction, except on batch jobs (when you don´t have big concurrency problems). Most (probably 85%) of the contentions issues I saw on my systems were due to inefficiently written querys.
Also, long-running transactions can impact Oracle too, google for "Snapshot too old" and you will see what I mean.


The bad side of Oracle lock management is that it is heavier so, given a app tuned for it, against another app tuned for Sybase (for example), I could bet that the Sybase app would perform better, because the overhead is lighter.
In practice this hasn't been my observation,
Probably I miswrote that, because it would be a very rare situation, when you have 2 systems that does the same thing implemented (and specifically tuned) around 2 diferent databases. It was more like a theoretical scenario to me.

the extent to which you can tweak
indexing, transaction control and database validation means the opposit as soon
as you're not just adding trivial and unrelated datarecords to a table.
Of course, I never said it was. And all of the RDBMS discussed here have a pretty big set of tweaks available to them. Probably Oracle has even more that those.
I never argued that Oracle is better or worse than those RDBMS (it´s a question of personal preference). My point is against arguing that MS-SQL, Sybase and DB2 are bound to have bad performance or many deadlocks on typical applications.


In a more real world examples, there are integrity and relational constraints
by the dozens, with the DB having to keep indexes updated at all time,
an efficient transaction mechanism helps a lot.
I expect that Sybase and MS-SQL performs better here. Cache and locking comes to play here more than transactions. And the Oracle model is more complex than the model implemented from those vendors.

[...] but you sure can have pretty big apps running in MS-SQL Server as well.


Well, you can have pretty big apps using just about anything, even COBOL ^_^
Doesn't mean using COBOL is a good idea ;)
Maybe, talk to the Mainframe guys, they can show you a couple of reasons to do it <g>
As I said previously, Oracle is extremely powerfull for developers. But it isn´t the cure for all diseases. It have many problems (e.g. requires MUCH more HW than other options, requires more administrations to keep it running). But MS-SQL isn´t crap. It is a VERY good RDBMS with plenty of capacity for concurrent OLTP and/or DSS. Just don´t use it as if you were developing against an Oracle DB. I am sure the contrary is also true.


Leonardo Pasta

.



Relevant Pages

  • Re: serializable isolation level behavior question
    ... Should Oracle generate a error? ... Is the OP actually in a transaction? ... Is a serializable transaction protected against truncate? ... Oracle claims that "The SERIALIAZABLE setting specifies serializable ...
    (comp.databases.oracle.server)
  • Re: Oracle transactions and DDL statements.
    ... We've run into yet another problem regarding Oracle (10g -but I doubt ... real showstopper as we use Oracle in a distributed transaction and this ... Ingres and Teradata database system (and possible others I don't know - ... commits no-matter-what after a DDL statement. ...
    (comp.databases.oracle.misc)
  • Re: serializable isolation level behavior question
    ... Daniel A. Morgan ... to Oracle for them to harden their transaction-safety in this regard. ... The innocent ongoing serializable transaction should not be allowed ...
    (comp.databases.oracle.server)
  • Re: Why didnt SUN aquire AMD?
    ... > steps should Sun have taken to win your business with ASE? ... > licensing would have gotten some attention by folks who read Oracle ... Would they have sold more kit if they offered cheaper Sybase ... advantage to ASE sold/bundled by Sun? ...
    (comp.unix.solaris)
  • Re: Problem with .NET Provider for Oracle : ORA-01453
    ... Are the versions of Oracle equivalent in your dev environment and the ... the queue) before running SET TRANSACTION to ensure that SET TRANSACTION is ... > 1) I make some select, insert and updates in a database with oracle user ...
    (microsoft.public.dotnet.framework.adonet)