Twenty years ago most of the databases we've come to trust were still quirky and strange (Postgres before SQL) or toy-like in capability (MySQL on MyISAM). A lot has changed since then.
Competitors like DB2 and Sybase seem to have utterly faded away, so it's surpising that Oracle's still a factor at all.
Is there anything that Oracle still does that nobody else can match?
Well, it's undeniable that as an OLTP RDBMS, Oracle is very good, at least if you ignore the complexities of managing it. Almost nobody can beat it on features.
For example, consider partitioning. Oracle has had seamless predicate-based table partitioning for about 20 years now. Postgres is getting there, but is still lagging behind. With Oracle you just tell it to partition by some expression(s) and off you go.
Then there are things like multi-master replication, bitmap indexing and other nice features. Oracle is also extremely fast. The underlying table storage is very pragmatic, with a hybrid MVCC system that has both an undo and a redo log. Tables are written in-place, and transaction contention is handled by linked lists of records to the undo log, so getting an older copy of a row is still almost as cheap as Postgres.
Of course, it's beaten in some areas. It's not great a full text search, I believe. Compared to Oracle, Postgres' transactional DDL is positively magical. With Oracle and nearly every other database out there, things like "drop table" can't run inside a transaction.
I would never want to work with Oracle, but I can't deny that it's got some great features.
Sales. What I hear from friends in big co's is that the decision to use Oracle is made on the golf course and not in engineering. Engineering is actively moving to the other technologies, and eventually the companies will stop paying for Oracle because it is no longer in use.
Thanks for pointing me to "Postgres before SQL" - the history page at postgresql.org has links to the initial documents - QUEL is like a hint of an alternative universe. I think it is time to pick up a book by Michael Stonebraker.
If you are doing financial services like insurance or banking, you might be stuck on Oracle because you need active active worldwide database replication and none of the 1st-gen NoSQLs offer global ACID transactions. As someone who's been working in databases for over a decade I've seen customers develop database evaluation strategies, but still be unable to migrate away from Oracle. That is changing with the distributed ACID transactions offered by databases like my employer FaunaDB.
which is so odd to me, I use DB2, in that our AIX/Oracle teams have many people working as "DBA" but on our DB2 iSeries there are two of us and our data sets are as large. The difference is there are so many things that the iSeries does automatically that it makes being a DBA a breeze.
I really need to get an understanding of the issues the Orcale team faces one day but they tend to look down on us and the pc groups
When oracle corrupts data, you have to google magic incantations and type them in console. I did that many times. But what I never understood is why do I have to do so in the first place, why Oracle does not self-heal itself.
Competitors like DB2 and Sybase seem to have utterly faded away, so it's surpising that Oracle's still a factor at all.
Is there anything that Oracle still does that nobody else can match?