Everyone who needs Oracle deserves Oracle.
I built up a single OpenLDAP box, just using the standard mdb backend and a ton of RAM. Easily crushed the load test. Sadly could't be implemented for political reasons.
Screw Oracle, especially if you care about performance.
The only scalable LDAP server is the one from Sun Microsystem (openDS). It was killed when Oracle acquired Sun because they already had identity products. Then the sun guys quit to continue the products line under their own company, ForgeRock. https://forgerock.org/opendj/
I've done load testing and this ldap is taking millions of accounts, no problem.
The best products are rarely free once you get out of the average web dev context. Funny thing, this one is both paid and open source.
I'm sorry but there isn't a commercial product that can compete with OpenLDAP and there may never be because it is just that good if you know how to use it. (yes, the learning curve is high, that is the only criticism I really have of OpenLDAP).
The open-source edition is only a facade with highly stripped features.
If you want any decent replication, HA, performances or bugfix. You have to pay for their OpenLDAP gold edition, which last I checked was $100k for a site license.
If you don't pay Symas money then no, you won't get support, or bugfixes developed for you.
However I doubt there is a large performance difference, it's already very efficient so it would be in the single percentage points.
As for replication you can do almost anything with the open-source version by combining syncrepl/delta-syncrepl into the topology you want, hell you can do N-way multi-master if you wanted.
I'm not sure what you have against using open-source OpenLDAP, maybe you should try it first?
Technically it works... sometimes. Custom shims have a tendency to lead to complications because the API isn't very well-exposed or documented... it was another acquisition product.
Infrastructurally it's an unmitigated garbage fire. Oracle seems to think, e.g., your organization is too stupid (which is true, since you're an Oracle client) to know how to connect to AD from a nix machine or Java application, so the hardware footprint is huge.
It's questionable biz-wise for two reasons. First, because it's sold as a "complete", off-the-shelf solution when in reality it's probably about a dozen analysts working on it full-time for months just to get its biz logic set up, and then a handful for maintenance. Second, because OIM aims to be a institution-wide, one-stop-shop product (which it is* good at), but institutions that acquire it are so large that they're bereft with inter-department politics and policies that make using it firm-wide difficult.
As a matter of fact, I did so multiple times in order to provide simple JSON APIs which consume data from massively huge enterprise software and expose them to nice shiny web apps. Can't name any more details though, but it works - at least if you use PHP, but I believe there's also an Oracle DB driver for nodejs, and most certainly for Java/JDBC.
Lots of Fortune 500 do it, even to their mainframe backends.
So it doesn't matter how "good" the DB is. If the App & presentation layers are so bad, that they introduce logical or other anomalies every so often, does it matter if the DB does not produce any error in a billion years?
The Porsche analogy is cute. But if the business case could be solved by 10 scooters, isn't it be better & cheaper? When your "Porsche" is down, all customers are affected. With 5 scooters down, only 50% can be (if you design it that way).
In many of these so called "enterprise" applications, what they _needed_ was 10-20 scooters, but they bought 2-3 Porsches. And it's usually because "no one gets fired for buying IBM". In many internal apps, companies literally are putting Wordpress like shitty CRUD CMS on Oracle because of this mentality.
Could you put into words a little bit more of what the Oracle DB does that Maria/MySQL/Postgres could not?
So far the features that oracle had that people have mentioned:
- An amazing query optimizer
- Replication (enabling High Availability) features available 15 years ago
- Oracle was the only database able to take multi GB or TB of data in a single table/DB. (Old MySQL/Postgre had various limitations like X GB per table for a long time, they still do).
If you worked in the DB in the 200X years, Oracle was the standard and for good reasons. MySQL/Postgre were considered like toys, for good reasons.
I understand what you're saying to mean simply replication, NOT a proper distributed database system allowing/facilitating writes using what we now know to be state-of-the-art theorems/methods. To rephrase, I assume you mean oracle dbs let people write to one database, and send updates to some mirrors somewhere else.
Just google it for yourself. This is a forum, not every post needs to be a peer-reviewed scientific paper. If you don't believe the OP then go ahead, but getting him/her to jump through hoops to try to prove a point is dumb.
However, as the creator of [citation needed], I'd just like to say: if you want to say something in a forum, and it seems wrong, then I for one welcome data that backs up the assertion. Why should we take any one on face value?
You're absolutely right in that the OP has no obligation to 'jump through hoops' to prove their point (and again they are free to not reply), but people on HN generally don't make claims without at least some citation/proof, and that's why (to me, and I'm sure others) HN is valuable. Everyone has opinions. The expectation on HN is usually of reasoned discourse, and fact-driven analysis (where applicable)... While this is a minor inconvenience for posters/community members, it does a whole lot to solidify HN as a worthwhile place for people who care about that kind of thing to hang out.
I'd highly doubt that there's something one can do with Oracle that couldn't be done with a FOSS database - although it's certainly true that it requires more servers but servers are a commodity these days anyway.
What's going to keep Oracle in the market is the amount of enterprise software that has been written without database abstraction and would require complete rewrites to support anything else than Oracle as its engine.
The only exception to that I know of is SAP which supports MySQL backends, but then again SAP is only used by companies big enough to just mindlessly shell out big bucks for Oracle too if that's what they already use.
Look, free databases are great, they just can't compete for real serious use. Not WordPress. More like NYSE.
Random case in point NASA is using pgsql for handling data streams from several of their probes, is that not real serious use ?
If you're willing to throw mapreduce at everything as a solution, you won't need Oracle nor will you know how to take advantage.
Yes. It costs money. Why? Because it does so many things that nothing else comes close to. Its query optimizer is insane. MySQL is a toy and PostgreSQL, while admirable, remains in a lower class.
I say this as a supporter and contributor to open source databases. Like the open source cars of tomorrow; you can't compare them to the pedigree of a Porsche.
I was always a Sybase and DB/2 guy myself, but Oracle could do things. Things Sybase couldn't be tuned for. You don't put Wordpress on Oracle. You do crazy insane shit on it that will break MySQL.