|
|
|
|
|
by astrodust
2669 days ago
|
|
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? |
|
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.