|
|
|
SSC Rookie
      
Group: General Forum Members
Last Login: Wednesday, March 17, 2010 2:18 PM
Points: 36,
Visits: 504
|
|
Recently I was talking to an Oracle DBA and I was telling him about some of the architecture features of SQL Server when he put up some interesting points where Oracle is much better organised than SQL.Here are couple of points which might give you something to ponder at:
1.In Oracle its a fairly straightforward and regular task to do page-level restores,wheras in SQL such page-level restores are done only when the page is corrupt and its not a straightforward affair.MS needs to have this facility enhanced and better documented so that it can also be done easily for tasks like eg: restoring a table which spans 3-4 pages(besides have the filegroup backup features).
2.In oracle,one installs the Oracle server and binaries only once.Any further instances on this box can be configured directly from the installed binaries by way of the concept of shared objects.So having 4 different instances for same box dosent consume as much space as 4 SQL instances would consume and dosent require so much of time and effort SQL DBAs need to go through to get this done 4 times.I think MS needs to make some improvements in this regard in its future versions.
Plz provide yr thoughts and opinions. Thank you.
|
|
|
|
|
SSC-Enthusiastic
      
Group: General Forum Members
Last Login: 2 days ago @ 2:53 PM
Points: 168,
Visits: 513
|
|
As far as your number 2. observation, if Oracle is capable of having multiple instances that are different versions then they may not be able to share anything in the way of installed binaries.
It is certainly possible to have several Windows services installed using the exact same executable path. However, if you ever wanted to update one of them you would have to stop all services that are executing from that binary file then restart them. Same thing for any DLLs. .Net Assemblies don't have that issue because they are so flexible with regard to version control.
There is an awful lot of configuring (registry, AD, various folders & files) that happens to make SQL Server run as it does in a client server environment and so tightly integrated into the operating system. This is mostly probably beyond the scope of a simple script and thus, the separate installation requirement.
|
|
|
|
|
SSC Rookie
      
Group: General Forum Members
Last Login: Wednesday, March 17, 2010 2:18 PM
Points: 36,
Visits: 504
|
|
| I agree with you.The entire SQL Server design is very OS-specific and this seems to have been more intentional and motivated by business purposes rather than optimization.
|
|
|
|
|
SSCertifiable
       
Group: General Forum Members
Last Login: Yesterday @ 7:09 PM
Points: 6,189,
Visits: 8,924
|
|
Ankur Bajaj (9/24/2009) I agree with you.The entire SQL Server design is very OS-specific and this seems to have been more intentional and motivated by business purposes rather than optimization.
I am not sure how you get to this conclusion at all. The fact that it is so closely integrated is in order to give it abilitites other applications don't get (like - memory management, resource management, tracking of many things such as those metrics in perfmon).
The very large majority of those registry settings, etc... are managed in the installation process for you, so you're not spending days hacking the registry. Now - you CAN spend days tweaking things to get everything "just right" for your environment, but that's true on BOTH platforms, so I'm not sure how either one is a clear winner in this case.
It's also a stretch to say that because one DB platform decided to go in one direction, and another went in a different direction, that one or the other is wrong/flawed, with no justification why one branch is better than the other.
---------------------------------------------------------------------------------- Your lack of planning does not constitute an emergency on my part...unless you're my manager...or a director and above...or a really loud-spoken end-user..All right - what was my emergency again?
|
|
|
|
|
SSC Rookie
      
Group: General Forum Members
Last Login: Wednesday, March 17, 2010 2:18 PM
Points: 36,
Visits: 504
|
|
I agree that its not right to say that Oracle is better than SQL.
However what I was trying to say is that SQL architecture is so interpolated with the Windows architecture that if there needs to be an architectual/design change in SQL Server then the underlying OS architecture also has to change.Simple example is that before Windows Server 2003 was introduced,SQL Servers running on 2000 were restricted in their use of AWE.I am sure you would know of many such limitations of SQL wrt Windows 2003 vs 2000.
What would you prefer to design today..a software which can run only on one OS or one which can run on various different OS like Linux,Unix,Windows which is the case with Oracle. If having the facility to install Oracle server on windows OS does not limit its utility or performance then what is the reason Microsoft does not allow(or have the capability for) SQL Server to be installed on non-Windows OS other than business reasons?
|
|
|
|
|
SSCommitted
      
Group: General Forum Members
Last Login: Yesterday @ 6:12 PM
Points: 1,586,
Visits: 4,456
|
|
Ankur Bajaj (9/24/2009) ... If having the facility to install Oracle server on windows OS does not limit its utility or performance then what is the reason Microsoft does not allow(or have the capability for) SQL Server to be installed on non-Windows OS other than business reasons?
Everything is a business reason for both Oracle and Microsoft.
One explanation might be that SQL Server can be half the price of Oracle because it doesn't have to support many different OS platforms.
You could ask why Microsoft includes Analysis Services with SQL Server, and OLAP is an expensive extra product from Oracle.
Each product has its strengths and weaknesses.
|
|
|
|
|
SSCrazy Eights
        
Group: General Forum Members
Last Login: 2 days ago @ 2:45 PM
Points: 8,681,
Visits: 4,953
|
|
Insofar as multiple instances running on the same binaries, I have to ask "why bother?"
The only reason I can think of to have multiple instances of SQL Server on the same instance of Windows would be security (or other) isolation. The moment you make them use the same binaries, you reduce that isolation.
Considering how rarely I've had to do page level restores (never in nearly 9 years as a DBA), I can't say that's a high priority to me. Maybe others have had more experience with needing that.
- GSquared
"Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon
|
|
|
|
|
SSCertifiable
       
Group: General Forum Members
Last Login: Yesterday @ 7:09 PM
Points: 6,189,
Visits: 8,924
|
|
Michael Valentine Jones (9/24/2009)
Ankur Bajaj (9/24/2009) ... If having the facility to install Oracle server on windows OS does not limit its utility or performance then what is the reason Microsoft does not allow(or have the capability for) SQL Server to be installed on non-Windows OS other than business reasons? Everything is a business reason for both Oracle and Microsoft. One explanation might be that SQL Server can be half the price of Oracle because it doesn't have to support many different OS platforms.
Agreed. I also can't help but think that the "focus" this creates on the dev team allows them to focus on wringing every bit of capability out of the server OS it happens to run on. Portability is cute and all, but it almost invariably comes at great cost to performance, something that should not be acceptable in your Enterprise server apps.
Try using 100% portable SQL code, and you will see what I mean.
---------------------------------------------------------------------------------- Your lack of planning does not constitute an emergency on my part...unless you're my manager...or a director and above...or a really loud-spoken end-user..All right - what was my emergency again?
|
|
|
|
|
Valued Member
      
Group: General Forum Members
Last Login: Thursday, March 18, 2010 2:16 PM
Points: 63,
Visits: 287
|
|
| Suggest you talk to the Oracle DBA & get some real stuff that Oracle does & SQL doesn't. Both of the things you mentioned hardly matter.
|
|
|
|
|
Forum Newbie
      
Group: General Forum Members
Last Login: Friday, November 13, 2009 5:43 AM
Points: 3,
Visits: 174
|
|
Oracle has sequences and SQL has identity columns - I curse the person who designed identity columns.
Oracle does not let reads block writes or writes block reads. This is, without a doubt, the biggest difference between the two DBMS.
I administer both, slightly preferring Oracle although it is harder work.
Oracle does use one set of binaries for every instance of the same version. This is useful but not really a reason to buy one or the other. You can install various oracle version on one machine and have instances pointing at one or the other. It's more logical but again who cares.
My favorite oracle features is the analytic SQL statements like lead and lag. i think that SQL server has something a bit similar but less sophisticated. These functions allow you to look at other rows in the resulyt set so that you can determine things like time between two timestamped rows.
Platforms is an obvious difference. Because SQL Server only runs on Windows it could be said that it's not a DBMS just DBMS functionality for windows. It's a slightly pedantic view but valid in some ways.
I may think of some more differences overnight
|
|
|
|