Oracle Community Network
I'd like to know why most Banks or Financial companies prefer Oracle than other RDBMS for their core systems (the absolutely minimum features that a Bank must support). I found a few answers that didn't satisfy me. For example: Oracle has more features. But features for what? Can't you implement that in application level if you were not using Oracle?
Could someone please describe a bit more technical but still on high-level overview of what the bank needs and how Oracle would solve it and the others can't or don't have the features yet?
Minor question: would you use ORM if you have to develop a banking solution?
I came from the web-app (web 2.0) crowd who normally hear news about MySQL, PostgreSQL or even key-value/column-oriented storage solution. I have almost zero knowledge on how Banks or Financial companies operates from technical perspective.
Oracle has a reputation for better reliability and security. Historically, it has outperformed and out-scaled any other SQL engine. This is changing, but the perception is still there. In many markets, Oracle is still perceived as the gold standard. Financial services seems to be one of them.
Corporate Culture... History... Bias...
AND Oracle is a very good DB, but so are plenty of others these days.
However, if the financial institution has been around forever, and they've used Oracle forever (since it WAS once in a class of its own), there's an investment there.
Also, since Oracle once dominated this market, people with experience in these industries are already more likely to be familiar with it and comfortable with it, so when building a new system it's a "comfortable" choice.
ORACLE has a very high performance when it comes to speed. Also the capacity in some fields and has more functionality on its procedures PL/SQL. The mysql/sql server also has stored procedures but the difference is ORACLE has more functions and executes faster compared to others. It can operate more higher buffering multiple transactions on its procedures and queries. Aside from that its almost the same with the other SQL's
Oracle is also used by for instance salesforce and amazon (http://highscalability.com/amazon-architecture) and flight reservation (http://www.dbms2.com/2010/04/21/ita-software-needlebase-google/). And Oracle can run on multiple operating systems so you are less locked than MS SQL.
A feature like flashback (http://www.oracle.com/technology/deploy/availability/htdocs/Flashba...) is very hard to implement in the client. Hash joins, analytical queries and materialized views are not stuff the client can do if you don't want to retrieve all the data from the database because that takes too much time. I've understood that mysql can't do a hash join. Oracle can also automatically parrallelize long running queries.
There is also support for changing the database schema without going offline.
Oracle has also features for encryption and data security (even on row level).
I don't think that financial companies are going to use non-acid nosql systems. Maybe for logging but not for the "important" stuff. Maybe some use Berkeley DB because Berkeley DB has transactions.
Any corporate entity has more measures in paperwork, (From 1Tc to R2D2) to fill out, and get approved when changing working solutions than buying a house.
So if the environment you are talking about was using Ms Access, you would find it hard to convince them to change.