6 ms·
Is support the only reason people choose Oracle databases over something free like MySQL or Postgres?
by brad0 10y ago
Is support the only reason people choose Oracle databases over something free like MySQL or Postgres?
- rosser 10y agoThe thing you need to understand about Oracle is that it's never — well, never in my experience, and I've worked as a DBA (mostly postgres, but I have had my hands on some Oracle) for a decade now — chosen by the technologists. It's chosen by management. Usually non-technical management. Often dangerously so. But Oracle support basically doesn't answer the phone unless you're regularly cutting them six-figure checks, so you kinda need that level of management to be making the decision whether or not to use the platform.
- raverbashing 10y agoEngineers need to learn how to stand their ground
- threeseed 10y agoThat's cute. And it might even work in a startup. But likely not. But in the enterprise world nobody really cares what engineers think. You have Enterprise Architects, Technical Architects, Solution Architects etc. who get paid exorbitant amounts of money, are political animals and can masterfully straddle the line between business and technology. Most of them are ex-engineers so they aren't entirely useless and since they have their own language they will make you look stupid. Can't articulate the transition from a tactical to strategic solution and explain what business capabilities it aligns to ? Well good luck getting that past the central Enterprise Architects who will need to sign off on your choice before it heads to Procurement/Legal. Architects along with IT managers and CIOs are the people whom the famous Oracle Sales machine targets with golf games, overseas trips and fancy dinners. It's never engineers. I spent a few years at Oracle. They are a multi billion dollar company for a reason.
- raverbashing 10y agoYes, those issues are important, and I was aware of them For a start, that's why I don't work (at least directly) for the enterprise world. But I've seen companies adopt open source solutions and modernize. I've also seen companies use those "legacy" technologies. They're the ones that usually go bankrupt, unless technology is a minor part of their business. And yes, as much as "corporate architecture" is 90% BS and politics, if you can at least explain why solution A is better than solution B in a way it's understood, then you did your part. And the question remains, who will pick up the phone when an open source DB fails to perform as it should. Does Red Hat provide support in that area?
- threeseed 10y agoSupport is the biggest issue with open source. It's why companies like RedHat, DataStax, Hortonworks, Databricks, MongoDB have all done so well. They basically took over their open source projects and provided official vendor support in the Oracle "style". They all offer certifications, training and conferences around the world for you to spend company money on.
- bb101 10y agoI can confirm this. Oracle goes out of their way to make senior and upper-mid management feel like rockstars. All expenses paid meetings in attractive overseas destinations, start to finish hand holding on multi-million dollar engagements, regular contact and personal attention. Management swoon and sign the cheques. And why wouldn't they? After all, it's only the company's money, not theirs personally.
- raverbashing 10y agoIt will be fun if Oracle is investigated relating this practices
- Helmet 10y agoWhy? This is basically how the business world operates. There is nothing wrong with a private business wining and dining a potential client to swoon and sell them something.
- NeutronBoy 10y agoIn an Enterprise, you almost never buy 'a database'. There's a solution/application that you buy, that will have a supported DB backed (usually Oracle or MSSQL). That solution is mostly picked on business capabilities and functionality. The technical component is only one aspect of the requirements, which cover business capabilities/features, technical fit within existing environment, data migration/compatibility, vendor support, vendor credentials, the amount of training required, the amount of business change needed, etc. These projects often cost $10m+, once you factor in the technical implementation and integration, business process changes, training for business staff, training for IT staff, transition costs, etc. So if you want to argue that the business should get the solution that fits their requirements the second best, because the 'best' one has an Oracle backend, you had better come up with a shit-hot reason that can't be solved with 'hire a couple of Oracle engineers'.
- arethuza 10y ago"That solution is mostly picked on business capabilities and functionality." Exactly - cost of support/hosting/licensing the relevant database is a factor but, in my experience, it is a pretty small part of a large ERP or CRM implementation.
- technion 10y agoLet me read you a specification I got for a project a while back: Build and implement an Intranet system based on Oracle That was the start, and finish of the spec we got. Question about what sort of information the intranet stores? Here's your answer: As long as it uses Oracle Standing your ground where Oracle is involved usually just means quitting. Not every engineer has that luxury.
- PhantomGremlin 10y agoIf that were the extent of the "specification" I got, and I couldn't get any additional information, then ... Yes, I'd quit. Period. End of discussion. I couldn't work at a company that operated that way.
- rwallace 10y agoWell yes, engineers do need to learn how to stand their ground - over things like pay and working conditions. But no amount of standing your ground will let you overrule the CTO on a corporate strategic decision, no matter how mistaken. As the saying goes, "God grant me the serenity to accept the things I cannot change, courage to change the things I can, and wisdom to know the difference."
- hasch 10y agoI bet you can get plenty of support for MySQL or Postgres
- threeseed 10y agoMySQL support you can get from Oracle. PostgreSQL support is very limited. There is no vendor so you're relying on third parties many of whom are mom and pop shops. And if you're a global, multi-national well good luck finding someone who you can cut a deal with for global support. Not to mention that the support is hardly likely to be top tier.
- rosser 10y agoYou say this garbage every time this comes up. "Mom and pop shops". Yes, those exist, but they're the minority. You're generally either dealing with EnterpriseDB, or you're dealing with a company that is run by people who are significant contributors to the project — literally, on the core committee — or have people who have created meaningful parts of the PostgreSQL ecosystem. You need to drop this FUD. I will never again use or support an Oracle product after they literally, specifically cost a former employer $.75mm, on Cyber Monday by giving us factually false information.
- mjw1007 10y agoIn discussions like this, I often hear people say companies choose Oracle because they'd have "someone to sue" if things go wrong. Did your employer attempt to recover the money from Oracle? If not, did they even consider doing so?
- justinjlynn 10y agoIf they actually did consider it, legal would probably make them unconsider it. That is, after laughing in such a way as to give the C*O the impression someone has just walked on their grave.
- threeseed 10y ago
- codingbeer 10y agoVendor locked. Many companies have huge applications bound tightly to the Oracle database. Often the business logic is just stored procedures. That makes it incredibly difficult to migrate and developers will have a hard time convincing management that the cost of migration would be worth it.
- pallopiipaeri 10y agoMySQL and Postgres have multi-master replication. They do NOT have distributed transactions (with the distributed locking system etc). For some customers it is important. Others have delusions that they need it. Oracle has other products as well. I am generally aware of couple used widely. Their ESB is one of the heavy players, and some sausage stands always need the most advanced ones. The funny thing is that with Oracle's ESB you end up developing the missing glue features using Java, and the ESB product's framework. The environment is extremely non-productive. Oracle's JavaEE application server is kind of nice, if you wanted WebSphere with training wheels. While feature wise it does have similar set, the maintainability and management features are just plain inferior, and most options are bolted down, and not available unless you go to lower levels... Oh, they offer ERP suite(s) as well. Those are for people that are prone to joining religious cults. They are not technology, and software products really. They are something sold to general and logistic managers with a story that you can actually force your company to use their "best practices" sets for everything, and abandon all software architecture in favor of warm and nice spaghetti. :)
- rosser 10y agoPostgres has two-phase commit, which can be used at the application level to implement distributed transactions. It does not have multi-master replication natively, though there are companion projects that enable it.
- keypusher 10y agoPG 9.6 brought bidirectional replication in and supported via mainline extension (no patches). http://blog.2ndquadrant.com/bdr-is-coming-to-postgresql-9-6/ http://blog.2ndquadrant.com/bdr-is-coming-to-postgresql-9-6/
- rosser 10y agoOkay, sorry, you're right. In my head "multi-master" is N > 2, for some reason. Probably because of Bucardo. Also, we're only on 9.5, so I haven't gotten to play with BDR yet, though I do have a meeting next week to start talking about how we might use logical decoding.
- toyg 10y agoQualify "people". For many classes of enterprise applications (BI etc), mysql and postgres are not even a choice, it's all about oracle/sql server/db2. Pg and mysql dominate developer-centric operations, but business-first environments are a very different game. There, it's all about long sales cycles and long feature-lists that only big vendors can afford.
- Illniyar 10y agoThe Oracle database is a beast, both in terms of performance, performance tuning and features. It probably out performs MySQL and Postgres in most areas - and if you don't do horizontal scaling, then Oracle is probably your best bet if you want to get the most out of a server. I don't think there are any advantages of going to vertical scaling over horizontal scaling these days.
- Joeri 10y agoRelational databases don't scale horizontally all that far because of the challenges in replicating writes. Either you do delayed replication and have inconsistent slaves, or you do sharding and have a complicated app layer. The trick to scaling a sql db is to either shard it and treat it like nosql with worse tooling, or go vertical as far as you can before you go horizontal. Luckily, there aren't many workloads that require horizontal scaling. Stackoverflow can run on a single beefy db server.
- user5994461 10y agoThey can scale by normalizing and dropping transactions. Then that's really close to a NoSQL db, so might as well use a No SQL db.
- tlogan 10y agoHere are some reasons (things I used in past): - ASM - DataGuard - FlashBack Query - RAC - PL/SQL (the worst language ever but very useful for building packages inside database) - Window Functions - Transparent Data Encryption - online reorg - RMAN and online backup Oracle as a company is terrible. But Oracle RDBMS is a mean machine. Do not underestimate it.
- yxhuvud 10y agoPostgres has at the very least window functions. What do you mean by online reorg? Schema changes in a transaction that doesn't block? Yeah, postgres has that too.
- pjmlp 10y ago> PL/SQL (the worst language ever but very useful for building packages inside database) Actually it is way better than the open source alternatives, but maybe my likeness for Ada makes my opinion biased
- tannhaeuser 10y ago> PL/SQL (the worst language ever but very useful for building packages inside database) I've heard that "in the database" sentence many times but never got it. PL/SQL is just another programming language VM that happens to have SQL types as native types, and syntax for SQL cursors. Other than for triggers and possibly indexed deterministic functions (both of which are inessential/questionable), you don't want your code "in the database" due to it lacking basic capabilities such as unit testing.
- cneumuel 10y agoThere are several unit testing frameworks for PL/SQL. Code in the database encapsulates business logic, it gives you unified access from all clients. It can also be orders of magnitude faster. The presentation linked here https://thehelsinkideclaration.blogspot.co.at/2016/09/noplsql-vs-thickdb-which-one-requires.html https://thehelsinkideclaration.blogspot.co.at/2016/09/noplsq... proves that with flame graphs for a simple workload done from the app server vs. implemented in PL/SQL.
- chx 10y agoIt's not support, it's blame. When the fertilizer hits the circular air moving device someone needs to be the scapegoat. And believe me, the CIO is not going to be the one. There isn't an entity to point to if you run MySQL or PostgreSQL.
- oblio 10y agoBoth MySQL and PostgreSQL have commercial entities backing them. Funnily enough, MySQL's is also Oracle.
- dagw 10y agoOracle is much better at handling huge amounts of data. Oracle also has support for all kinds of really niche features that are really important to some people.
- arethuza 10y agoMain reason that I have seen for Oracle is that businesses buy applications and then install the database they need to run that application. How many ERP/CRM/HR/financials applications are there that compete with Oracle applications that run on MySQL or Postgres?
- jimnotgym 10y agoThis is correct. If a major ERP/CRM player used Postgres it would be different. I guess a lot of that is down to the slow development cycle of those products. It wont be SAP though, they seem to be all about HANNA these days
- adolfojp 10y agoYou don't choose Oracle databases. You choose Oracle products and services that use Oracle databases. If you visit their website and hover over the products and solutions tabs you'll see a ton of boring mission critical applications that most startups will never touch.