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.
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.
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?
They all offer certifications, training and conferences around the world for you to spend company money on.
Yes it's called 'kickbacks' and it can be illegal or considered corruption.
If you were a CEO would you want your team buying a product because they were given $5000 tickets to the superbowl?
As an example, I can't stop the CIO and board at my company from talking about the cloud because of all the consultants and sales guys talking to the C suite. You want to see something really oversold right now look no further than the cloud.
Of course they do on some level.
But it's a fine line.
It's crazy how many CEO's will let purchasing decision makers be taken on these things and junkets, I would just not allow it.
But also don't doubt the ability of people to just drink koolaid. There are tons of non-thinkers out there who just 'buy' the story presented to them.
Also - I don't think 'the cloud' is oversold. It's definitely the future, and it's going to be the 'new normal' and it's here to stay.
The notion that anyone would 'host their own' stuff just doesn't make sense anymore - unless there are specific reasons for it. 'The cloud' is now the 'default choice' for most things, unless you have a need not to use it.
In the case of the cloud, I agree that there's a future for it. But I think in the future people are going to look around and notice that it cost a lot of money to run everything in the cloud and on-premise is going to start looking good again.
Well, that is rather the point of buying a large complex business application - it has to align with business processes!!
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'.
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.
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.
Yes, I'd quit. Period. End of discussion. I couldn't work at a company that operated that way.
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. :)
It does not have multi-master replication natively, though there are companion projects that enable it.
http://blog.2ndquadrant.com/bdr-is-coming-to-postgresql-9-6/
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.
The other thing is that "PG 9.6 brought ..." might suggest this is built into PostgreSQL 9.6. That's not quite the case - we're working on moving it into core, but that takes time. For now it's an extension (plug-in). PG 10 will however include pglogical, which is another step in that direction.
Adding extra implementation to application, to do the database's work against the usual division of labor, no thanks. And bringing some shady 3rd party support package on top of the database is a second really big no.
For businesses only what you get out of the box counts. Otherwise you can always state that "the platform has C++ compiler, stfu and code". That doesn't really work. The companies are into buying complete products for a reason: they don't want to implement unnecessarily things they really should just get out of the box.
TBH I love postgres, but before they offer proper multi-master transactions out of the box most companies just still go for Oracle. That's similar as to why people buy Photoshop. GIMP fell some 10 years after in usability and features when they did not prioritize implementing the dynamic layer effect system. Instead of that they chose to masturbate with GEGL or something like that for 10 years, without providing the actual end user requested features. The situation still stands there, before they implement what Photoshop 4 or so did they got no chance of being valid alternative...
Postgres is my preference over MySQL/MariaDB, but I wouldn't have pushed for it back when I worked in traditional corporate IT: Stability, and having a third-party to blame, really wins there!
You mean Weblogic, right? Because OAS has been dead for a while now. Afaik, Weblogic and Websphere are practically the same, hard to say one is "just plain inferior" to the other.
- 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.
Actually it is way better than the open source alternatives, but maybe my likeness for Ada makes my opinion biased
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.
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.
To encapsulate business logic using PL/SQL, however, is crazy IMHO. Rather than coding your business logic in a mainstream language (with incomparably better staffing and tooling), you now have it in a proprietary niche language with awkward or even non-existent debugging.
Also, the relational model is (or should be) the unified access at this level IMHO, rather than some ad-hoc data access layer.
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.
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.
It wont be SAP though, they seem to be all about HANNA these days
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.
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.
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.
Did your employer attempt to recover the money from Oracle? If not, did they even consider doing so?
EnterpriseDB has according to LinkedIn between 200-500 people mostly located in AMR and EMEA based on experience with their APAC division. They simply are NOT a top tier support company on par with Oracle, Teradata, SAP etc. I am based in APAC and so my opinion is going to be far different than other parts of the globe.
And the difference with DataStax, MongoDB etc is that those companies are basically the open source projects. They control the steering committees, copyrights, branding etc. And so there there's a lot more confidence in being able to reach someone who actually wrote that part of the code. PostgreSQL has always been far more decentralised.
AWS.
While multi-master replication is still not there (it's still just a synchronous standby and read slaves) all of the heavy lifting is done for you.