Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations John Tel on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Oracle vs. SQL Server, et. al. 1

Status
Not open for further replies.

JediDan

Programmer
May 15, 2002
128
US
A general question:

There's a lot of grumbling in my company lately about Oracle, with a section of people supporting a migration to SQL server. Never having really used SQL server, I'm curious as to people's perceptions of the differences between the two RDBMSs?

Oracle is considerably more expensive than any other RDBMS, but I'm wondering if there are major functional differences than would cause one to choose a particular RDBMS, regardless of price?

All thoughts welcome!
 
JediDan,

I will be writing some FAQ about Oracle vs SQL Server and migration from one to another. Obviously it is not an answer that can be given in a sentence. Both have advantages and disadvantages in certain areas. I am very curious to know what is the main grumbling about Oracle at the moment in your company. There are major approaches from both sides on different things starting from allocation of pages in SQL Server and blocks in Oracle. In a nutshell what are the top three reasons you want to move away from Oracle?
 
I have no say in this matter... but I am curious as to the reasons.

The main issue that comes up with Oracle is the price. Apparently, we pay $40,000/year/CPU... which gets into millions of dollars per year. I understand that SQL server is significantly less expensive, but I wonder if the same features are there?

A few developers have complained that PL/SQL as a language is dated... I use PL/SQL quite extensively, and don't have too many complaints about it. I wonder how well it stacks up against the stored program facilities in SQL server or DB/2, etc.?
 
JediDan,

SQL Server is cheap compared to Oracle no doubt about that. It also has all these GUI stuff that makes a learning curve for a non technical (if you know what I mean) to be a fairly competent in SQL Server admin in a shorter period of time compared to Oracle and Sybase. Windows are becoming more reliable with Data centers etc which was one of the reasons in the old days to avoid anything serious on windows. MSSQL does not have all the functionality that Oracle offers but pound for pound is value for money. Most of Oracle stuff (you know things like clusters and function indexes and reverse indexes are considered esoteric by many (not me) so why need all these complications. I think the motto nowadays is cheap and fit for purpose. Do not forget that Oracle has been around a lot longer than MSSQL and Sybase which started life together (19 years I believe). PL/SQL is built on ADA conventions and it is very good. On the other hand isql and transact SQL are good and easy as well. In these days that companies want to recruit someone who knows from A to Z, the learning curve for MSSQL is far shorter than Oracle. Transact SQL which MSSQL uses is very good and really little different from PL/SQL stuff. Transact SQL also tends to adhere to ANSI more than Oracle. For example in Oracle you have SQL*Plus and PL/SQL and may be others. In MSSQL you only have transact SQL. So the whole perception looks simpler. However, although MSSQL looks simple to many in the business (compared to Oracle and Sybase), it is very complex indeed but hides this complexity from the user.

Hope this helps
 
Hmmm... that's sort of underlines the discussion we're having here. Oracle is generally regarded as better, but not for the money, and no one has a substantial list of features/capabilities that simply aren't available anywhere else.

 
HI,
As usual, it depends on your needs..

If you have many simultaneous users updating,deleting and inserting data, the transaction handling of Oracle is far superior to any other database I have seen or used..
( and that includes Access,SqlServer,Supra and many others no longer in business)
The ablitiy to have a read-consitant view of the data, regardless of what transactions are affecting that table is a very powerful feature - In Oracle, unlike SqlServer,
Readers do not block writers, and writers do not block readers..

The rest of Oracle's feature list ( Rman automatic backups, archive logging, Flashback, undo, built-in Java, etc) are relevant if you need those features.

Do some research ( try the Gartner Group ) and see what fits you needs..

[profile]
 
You may find these articles interesting but beware that they tend to be biased towards the author's inclination(i.e. the authors are Oracle or MSSQL centric themselves). Also note that the availability of 64-bit SQL Server makes this product a bit more serious.

Code:
[URL unfurl="true"]http://searchdatabase.techtarget.com/originalContent/0,289142,sid13_gci824205,00.html[/URL]

[URL unfurl="true"]http://www.newsfactor.com/perl/story/21369.html[/URL] 

[URL unfurl="true"]http://www.microsoft.com/sql/evaluation/compare/pricecomparison.asp[/URL]
Good luck
 
I looked into this a while ago as well.

Some features that I would have significantly missed from Oracle (I run a data warehouse) is Bitmap indexes, true partitioning (huge !!!), function based indexes (SQL Serve has derived fields for this, but requires a table change, and new index to mimick the feature).

Those were my big ones.
 
Thanks all for the responses. This seems to a more of a gray area than I thought it would be.

I guess the price is a big factor (Oracle seems to be about twice the cost of SQL server, based on my own computations).

Thanks again. Further comments welcome, this is an ongoing issue...
 
Again the emphasis in here is fit for purpose. All RDBMS are good. They have learned from each other and they are all competitive. I believe what matters to customers and account managers (as opposed to us the practitioners) is the true cost of ownership (TCO) which includes the unit and licensing fees, maintenance, training and paying the practitioners. The choice is becoming like buying a car. Every car can do 100 miles/hour these days and they are reliable, what matters is the features like air conditioning, sun roof, adjustable mirrors, ABS, cruise control etc that you get as a bundle with the car. The RDBMS is no different for a company. If the TCO for one product is going to be les than the other to justify the change, they will go for it.
Code:
Actually if we use the widely adopted formula for change and look at the cost of change for a Bank to migrate from one RDBMS to another :

C = (ABD) > X

where:

C = change
A = level of dissatisfaction with the status quo
B = clear desired state
D = practical first steps towards the desired state
X = cost of the change

What the formula shows is that, if change is to take place, A, B and D must be present. Moreover, they should together weigh more than the 'cost' of undertaking the change - the time, the learning curve, user testing and so on. 

One thing to be aware is that the majority of these decisions from my experience are made at Board Level including many other factors and the RDBMS functionality does not really come into it at least as an overriding factor.
 
Yes, I agree, the decisions are often made at a level where understanding of the technologies involved is not always required.

In our case, the cost of the transition from Oracle to anything else would be prohibitive so, in all likelihood, it will never happen.

But, like many political discussions, there are people on both sides of the issue that seemed to be stating opinion/ideology rather than facts (including myself, at times). So I was just looking for facts to help even things out.

Thanks again, I appreciate your feedback.
 
Another thing that you should take into account is that SQL-Server is a single platform database. That is, it only runs on Windows. On the other hand Oracle runs on multiple platforms. So with SQL-Server you are stuck to Windows.

You may not think that this is important, but I been running Oracle for a few years. We started on VAX/VMS, moved to UNIX, and now are on Windows and Linux. Because we are using Oracle, we were able to migrate to these different platforms without much pain. And since I can not see into the future, I prefer to use a Database system that would allow me to migrate to other platforms when and if required.

Another place you may find information about differences between SQL-Server and Oracle (with an Oracle vias) is: At this site search for SQLServer.
 
I think multi-platform is a good point, esp. with Linux offering the potential of a very low cost or (gasp!) free platform, plus all the other benefits compared to Windows.

This will be an interesting decision for Microsoft at some point down the road. They're gaining market share with SQL Server, but are they willing to undermine their server OS market by offering a Linux version of SQL?

Thanks for the input, I'll check out asktom.

Dan
 
My view would be that they would eventually go for Linux. What will they probably do is that they buy Sybase (which is now up for grab with good customer base in the Financial sector) and thus make an in-organic growth into Linux.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top