migration sql to oracle

Upload: philip-anderson

Post on 31-May-2018

234 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/14/2019 Migration SQL to Oracle

    1/22

    Advantages and Disadvantages:Migrating Microsoft SQL to Oracle

    Author: Philip Anderson

    Completed: December 2007

    Summary: This paper compares SQL Server 2005 and Oracle from the viewpoint of

    migration. What are the advantages of migrating? What are the disadvantages?

    One disadvantage that one faces in any migration of systems is always initial cost (and

    perhaps greater long-term cost). The initial cost of migrating is high. When

    moving/switching from a system that currently works, and is paid for, to a foreign

    system, there is no escaping the initial costs. There are some automatic costs that

    should be addressed when considering any new system.

    Cost in resources (time and energy) used to make it happen physically as well

    as the cost of planning.

    Tip:An IT department should be able to perform an analysis of the required timeand resources, as well as a plan that is based on the scope of the specific

    database being migrated (in regards to proper setup and tuning of the new

    system, and plans for that new systems hardware).

    Cost in money for hardware, software, and licensing. This varies radically from

    vendor to vendor.

    Tip:Know the differences in vendors. Microsoft gives the customer a complete

    package with one purchase; Oracle sells by the piece. When it comes to planning

    an Oracle system, it is crucial to know exactly what must be purchased.

    Cost for training and classes: DBAs, System Administrators, as well as developers

    will all need training in order to learn and integrate the new system. Oracle

    involves a steeper learning curve for everyone involved.

    Cost of the slow period (the initial learning curve with the new system, even

    after the new system is established).

    Tip:To make your investment pay off, you will need to make money with the

    savings over keeping the old system. Alternatively, the payoff could come in the

    form of features and capabilities that make jobs easier.

    Cost (potential) in maintaining the system. (In general, Oracle has a higher

    maintenance cost than SQL.)

    What are the payoffs that will give migration a favorable advantage to help overcome

    the initial disadvantage? As previously discussed, there are many disadvantages to

    making a change; if there are, in fact, advantages that outweigh these disadvantages,

    we need to find them. (Tip: A worst-case scenario involving migration should be formed,

    and taken into account.)

    Which is better? Sadly, benchmarks of large OLTP databases are not easy to come by,

    and systems can have differences that make them hard to compare side by side. It may

    be better to note that both Oracle RAC and SQL Server 2005 database systems are

    successfully used worldwide in the most extreme processing environments with multi-

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 1 -

  • 8/14/2019 Migration SQL to Oracle

    2/22

    terabyte VLDBs. Both systems have the ability to serve as a functional reliable database

    to suit our needs.

    This paper focuses on advantages and disadvantages from the perspective of a decision-

    maker, along with the reasoning that needs to be taken into account for the particular

    situation.

    Answering the questions, which platform will be best? and should we migrate?hopefully become somewhat easier with the information provided.

    The information contained in this document was gathered from many sources on the

    world wide web (studies, articles, reports, blogs, etc.). A great deal of articles and

    studies are, of course, one sided (slanted from one vendors perspective). Many claims

    have been checked out for accuracy, and in many cases these claims have been found to

    be untrue. This is due to:

    a) Older information which was written before changes in current systems, and

    which includes attitudes from prior dates. Both companies (MS and Oracle) are

    doing more to compete with one another directly, and for now, the clients are thewinners.

    b) Authors were not well informed of the other sides capabilities.

    c) Misleading sales language under the guise of a technical article.

    The marketing myths that have been used as the core evaluation base in many

    comparison papers and articles are, in many cases, misleading at best.

    Furthermore, the original design of this document was divided into two sections:

    advantages and disadvantages. This simpler document structure has changed because

    situations vary, and facts must be classified as an advantage or disadvantage based

    on the information. The information in this document is presented as clearly and simply

    as possible. Depending on the planned usage of the system, the reader should havesufficient data to assist in making any decision involving migration.

    When looking to purchase a VLDB (Very Large Database), the important aspects that

    any decision-maker will find themselves interested in are availability, performance,

    reliability, scalability, security, and ease of use in terms of development. This also applies

    to the VLDBMS (Very Large Database Management System).

    Note: The migration process is an automatic and significant disadvantage because of

    the time and resources involved; it costs in all areas. By comparing the two systems, we

    can start to get an indication of whether the costly disadvantage of the migration

    process is ever going to pay off in the short or long run in terms of advantages found in

    the new system.

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 2 -

  • 8/14/2019 Migration SQL to Oracle

    3/22

    Contents

    Database Ability: ............................................................................................... 5

    Oracle ........................................................................................................ 6

    SQL .......................................................................................................... 6

    Conclusion: Database Ability .............................................................................6

    Claims and Comparisons ................................................................................... 6

    Taking a look at Oracles claims for accuracy................................................... 6

    Oracles RAC (Real Application Clusters) System .............................................. 6

    Oracles claims vs. SQL Server 2005 .............................................................. 7

    Availability - Oracle RAC ............................................................................... 7

    Availability - SQL Server 2005 ...................................................................... 7

    Reliability - Oracle RAC ................................................................................. 8

    Reliability - SQL Server 2005 ....................................................................... 8

    Conclusion: Availability/Reliability .....................................................................8

    Manageability .................................................................................................... 9

    Managability - Oracle RAC ............................................................................ 9

    The Oracle RAC is very difficult/complex to get managed.................................. 9

    RAC will require application and schema design changes. ................................ 9

    RAC requires special storage solutions........................................................... 9

    Patching RAC is difficult................................................................................ 9

    Tuning RAC is complex................................................................................. 9

    Managability - SQL Server 2005 .................................................................. 10

    Conclusion: Managability ................................................................................ 10

    Scalability and Performance ............................................................................ 10

    Scalability - Oracle RAC .............................................................................. 10

    Scalability - SQL Server 2005 ...................................................................... 11

    Conclusion: Scalability ...................................................................................11

    Development Comparison: Oracle vs Current System ........ 11

    Integration with Visual Studio and the Microsoft .NET Platform ........................ 11

    Visual Studio and .NET CLR Integration ............................................................ 12

    SQL vs Oracle - ODBC Driver DLL Path ......................................................... 12

    MSDN blogs, selvar, November 2007 ............................................................ 12

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 3 -

  • 8/14/2019 Migration SQL to Oracle

    4/22

    Visual Studio Integration ................................................................................ 12

    Supported Database Object Types ................................................................... 13

    Debugging Stored Procedures ..................................................................... 13

    Integration of BI components ...................................................................... 13

    Conclusion: Development, Integration with Visual Studio ................................ 14

    SOA-Based Application Development .............................................................. 14

    Comparison of XML Support ............................................................................ 14

    Native XML Type and XQuery ...................................................................... 14

    Indexing SQL ............................................................................................ 14

    Indexing Oracle ......................................................................................... 14

    XML Schema Collections and Schema Evolution in SQL ................................... 14

    Oracle does not have a comparable feature .................................................. 15

    Conclusion: Development Feature Summary ................................................. 15

    Security Comparison ....................................................................................... 17

    Interpretation of results - some Q and A ........................................................... 18

    Do Oracles results look so bad because it runs on multiple platforms? ............. 18

    Do the SQL Server 2005 results have no flaws because no one is looking at it? . 18

    Do you have any predictions on the Oracle January 2007 Critical Patch Update? 18

    Do these results contain unfixed flaws? ........................................................ 19

    Why have there been so little bugs found in SQL Server since 2002? ................ 19

    Does Oracle have an equivalent of SDL? ....................................................... 19

    More on Security ...................................................................................... 19

    Conclusion: Security ...................................................................................... 19

    Cost Comparison ............................................................................................. 19

    Cost - SQL Solution .................................................................................... 19

    Cost - Oracle Solution ................................................................................ 19

    Conclusion: Cost ........................................................................................... 20

    Conclusion Overall: ......................................................................................... 20

    About the Author ....................................................................................... 21

    Footnotes ..................................................................................................... 22

    Other Sources of Information .......................................................................... 22

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 4 -

  • 8/14/2019 Migration SQL to Oracle

    5/22

    Database Ability:

    Instead of getting into too many details here, we are going to take a look at real world

    application. Can SQL do everything we need? Can Oracle do everything we need? The

    answer to both of these questions is Yes. Here are some real world databases from asurvey of the worlds largest and most heavily used databases. Both systems have

    excellent real world capabilities.

    Winter TopTen Award Winners, Winter Corperation, September 2005

    Winter TopTen Award Winners, Winter Corporation, September 2005

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 5 -

  • 8/14/2019 Migration SQL to Oracle

    6/22

    Oracle

    Three of the five largest OLTP systems in the world run Oracle.1

    SQL

    On the windows platform, SQL is the system of choice.2

    SQL was the fastest growing vendor of 2006.2

    Conclusion: Database Ability

    Both systems are currently used in high capacities that the SOLE platform will not see

    for more than a systems lifecycle, or even its current technological lifecycle.

    Consequently, it is a safe bet that either system, if used, will be more than able to

    handle our needs. Will migration from SQL to Oracle be better when weighing the

    advantages and disadvantages? Lets break it down.

    Claims and Comparisons

    Taking a look at Oracles claims for accuracy.

    Oracle makes lots of claims that can easily lead one to believe that they are superior to

    Microsofts VLDB system. A lot of users are very divided in devotion to one system or the

    other. It is important here, though, to look at some of the claims made by Oracle or by

    people who are very pro-Oracle.

    When examining the pro-Oracle arguments, we see many vague claims made in

    comparison with SQL. The arguments say things such as more mature programming,

    you cannot really compare the two systems; it is like comparing a Honda Accord to a

    BMW, if you go big, you should always go with Oracle; if you are small, SQL is maybe

    your choice for economic reasons. These are just a few examples, but this gives you an

    idea of what we are drilling through in order to find out what exactly is true. But insteadof vague statements, what about Oracles more specific claims? And if Oracles claims

    are true, what forms the basis for these statements? This is the main type of information

    that I found when research for this paper began. Upon finding this initial information, I

    tested it against the available facts; the results are below.

    If most of this information is, in fact, true, then by all means, it looks like Oracle is the

    better system for most VLDBs. Lets take a look.

    Oracles RAC (Real Application Clusters) System

    Oracles RAC is presented by Oracles marketing materials as a single solution which

    addresses all your needs, outperforming SQL in areas of availability, cost, performance,

    scalability, security, etc. Oracle claims that RAC running on a cluster provides the highestperformance levels of any competitor.

    1. Availability Claim if a node in the cluster fails, Oracle RAC continues running on

    remaining nodes. Applications (users) on the failed node are moved to remaining

    nodes in approximately 20 seconds. 3

    2. Scalability Claim if more processing power becomes a need, you can add a node

    to the server cluster without having to modify the application or the database in any

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 6 -

  • 8/14/2019 Migration SQL to Oracle

    7/22

    way. The load then becomes automatically balanced across all server nodes.3 (A 10g

    R2 RAC supports up to 100 nodes in one cluster.) [I want to see that server room!]

    3. Cost Savings Claim RAC reduces hardware cost by running applications just as

    efficiently on clusters of small, low-cost systems as it does on more expensive SMP

    systems.3 (A 16-node cluster of 4 CPUs each costs significantly less than an

    equivalent 64-CPU SMP box.)

    Oracles claims vs. SQL Server 2005

    This comparison often involves much heated technical debate. This paper will deliver the

    unbiased facts without becoming overly detailed, or delving into matters that are not of

    primary importance and scope.

    Some (much) of the sales jargon available seems to stray from our main criteria.

    Decision makers must avoid being swayed by misleading statements/tactics and keep a

    healthy, informed, and balanced perspective.

    Availability - Oracle RAC

    RAC does offer a good solution for server failovers. The fact that you can implement RACon low-cost servers offers some savings for the hardware budget. However, this does not

    mean that the RAC clustering solution is a cost-saving solution.

    System Description: An Oracle system has nodes (clusters) which are interconnected to

    one another, and those nodes are all connected to the network. On the other end, the

    nodes are all connected to a shared storage area where each node has equal access to

    all tables in the database. The RAC automatically distributes the load across the cluster.

    This is a basic description of how Oracles RAC system works.

    Availability - SQL Server 2005

    Mirroring is a new technology for SQL Server 2005, increasing database availability.

    Mirroring ships log records from the primary server to a standby server, and ensures

    that the standby server is a mirror image of the primary database. If the primary server

    goes down for any reason, failover to the standby server happens quickly. The failover

    time, from the server going down to the standby server coming up and taking over,

    depends on a number of factors. Microsoft claims a failover in duration of 3.5 seconds,

    but 10 seconds is more realistic.

    Comparing SQL Server 2005s 10-second failover with Oracles 20-second failover is

    important. An extra 10 seconds of waiting for a high-availability system may not be

    acceptable to many users of this system. (Fear the angry user!) Secondly, SQL Servers

    mirroring does not require proprietary hardware and is easy to set up and manage.3

    Mirroring employs what is called client redirect. In case of failover, this feature

    transparently transfers users to the standby database. There is a witness server that

    connects to the principal and the standby server (independently of one another) and

    uses the MDAC (Microsoft Data Access Component) to be aware of the mirrored servers.

    To put it simply, the witness server sends traffic to the principal server if it is available,

    and if the principal server is not available, it switches the traffic to the standby server.

    It must be mentioned here that you do not need to have a license for your failover

    server; it can use SQL Server Express, which is FREE software. Microsofts licensing

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 7 -

  • 8/14/2019 Migration SQL to Oracle

    8/22

    model does not charge for any standby server. The standby server does not require an

    extra license from Microsoft.3

    Very robust applications can be built with SQL Server. Indeed, there is evidence of this

    in the real world: NASDAQ (99.97% available, 2 million transactions a day), Barnes and

    Noble (99.98% available, 5.6 million visitors a month), Quote.com (99.99% available,

    8.6 million page views a day), and more. By the way, 99.99% available is equivalent toless than 10 minutes per month of downtime. Is that enough availability for you?4

    Oracle makes the claim that one of the most important selling feature that buyers should

    be interested in is that Oracle supports clustering of servers while SQL Server does not.

    This is not true! Clustering in Windows is supported by using Windows clustering

    service. SQL Server does not need to have an extra layer for clustering because it is

    integrated within the vendors operating system; they work together to achieve

    clustering without overwhelming an operating system with extra layers.3

    Reliability - Oracle RAC

    RAC by itself offers absolutely no protection against disasters or storage failures because

    it is based on shared data architecture. The storage area is a single point of failure. Ifthat storage area goes down, say goodbye to the cluster! As a solution to this problem,

    Oracle offers DataGuard. This entails having one or more duplicate (mirrored?)

    databases called standby database(s) that also use log shipping (similar to SQLs

    server mirroring) from the primary server. When brought up to the reliability level of

    SQL out of the box, the total cost of the Oracle system that pledged to save you money

    takes a major turn upward. Aside from the cost aspects of implementing this for the

    moment, lets take a look at an Oracle system with DataGuard.

    The DataGuard solution, stacked on top of the RAC clustering, which is installed on top

    of the Oracle 10g DBMS, begins to complicate the management as well as the

    administration of this system. It is not a secret that when it comes to integration, Oracle

    products can leave competent DBAs and Systems Administrators pulling their hair out.

    Additionally, SQLs support and Oracles support vary widely in cost.3

    Reliability - SQL Server 2005

    Mirroring architecture does not use the shared storage model. There is no single point of

    failure as there is on Oracles RAC solution (without DataGuard protection).

    It might also be interesting to compare uptime and reliability statistics from HSCs SQL

    servers versus downtowns Oracle servers, if that information is obtainable.

    Conclusion: Availability/Reliability

    Both systems deliver highly available solutions, but SQL Server can match the high

    availability capabilities of Oracle 10g RAC at a substantially lower cost.

    Oracles out of the box RAC solution is a less reliable solution than SQLs out of the

    box solution. If you choose to purchase and add DataGuard and add the required

    additional machine(s) to your system, then SQL Server 2005 and Oracle RAC both

    deliver highly reliable solutions. Also note that Oracles DataGuard availability is based

    on a difficult-to-manage system structure (more on this later).

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 8 -

  • 8/14/2019 Migration SQL to Oracle

    9/22

    Manageability

    Managability - Oracle RAC

    The Oracle RAC is very difficult/complex to get managed.

    RAC is an extremely complex piece of technology. Unless its complexity is reduced by anorder of magnitude, RAC falls short of its promise as a viable technology for the vast

    majority of database applications. Probably the single biggest reason to avoid RAC might

    be its complexity.5 The complexity associated with RAC is documented succinctly in the

    Real-World Challenges for Oracle RAC Implementation paper, found at the URL located

    in the following footnote.6

    RAC will require application and schema design changes.

    Many experiences show that applications and associated database schemas have to be

    specifically designed (or modified) in order to get them to work on RAC. The nature and

    extent of the changes depends upon several things, including the size of the clusters,

    the nature of the application (OLTP or DW), the speed of the cluster inter-connect, andtransaction volumes. In many cases, data must be partitioned, especially tables that are

    highly active.3 (These experiences go against Oracles claims.)

    RAC requires special storage solutions.

    RAC either works directly on a raw device (not the file systems that usually ship with

    operating systems) or requires a clustered file system (OCFS Oracle Cluster File System

    OCFS or ASM Oracle Automatic Storage Manager.) RAW storage devices are inherently

    complex to deal with, so Oracle recommends OCFS or ASM, with more emphasis on ASM

    as of late. ASM has an interesting list of capabilities, but it is also complex to administer,

    and on its own requires significant DBA time and skills to manage. Furthermore, ASM is

    a proprietary file system (even when Oracle claimed to be multi-platform).

    Sadly, most of the backup/restore, diagnostics, monitoring and performance tuning that

    are currently being used will not work with ASM.3

    Patching RAC is difficult.

    RAC patches come in two types: those that are applied one node at a time, and those

    that need to be applied to the entire cluster at one time. In the latter case, the entire

    system needs to be shut down in order to perform the patch. The majority of Oracles

    patches are in the latter category. Therefore, Oracle recommends a very complicated

    technique called Rolling Upgrades. This involves two standby RAC clusters which are

    connected to Oracles DataGuard.3

    Tuning RAC is complex.

    Many parts of RACs setup make it difficult to debug and tune. In addition to all the

    things a DBA needs to know in order to tune an Oracle database, with RAC, a DBA has

    the added pleasure of taking numerous other considerations into account, including

    interconnect traffic, inter-connect latency, pinging of data blocks between nodes, disk

    I/O for each node, table hotspots, and more. A partial list of some workarounds that

    Oracle has suggested to get around RACs performance issues are as follows:

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 9 -

  • 8/14/2019 Migration SQL to Oracle

    10/22

    Assign transactions with similar data access characteristics to specific nodes, by

    partitioning users and applications.

    Create data objects with parameters that enable more efficient access when

    globally shared.

    Avoid sequences as hotspots by creating node-specific staggered sequence

    ranges.

    Reduce the number of rows-per-block in order to reduce page contention.

    Use as few indexes as possible to reduce intra-node pinging of index blocks.

    Pre-allocate space by turning on dynamic space management.

    Use reverse-key indexes to reduce index-page hotspots.

    Design indexes such that the clustering factor is as close to the number of blocks

    as possible.

    One can see how perplexing this can get. It is also intriguing to note that some of thesesuggestions are contradictory.7

    Managability - SQL Server 2005

    In comparison, SQL management is simple. It uses a friendly GUI, and comparatively

    few parameters need to be changed in order for the system to work well. The

    management Studio delivers an integrated management environment for all SQL Server

    products. Troubleshooting, tuning, managing, security analysis and diagnostics are all

    easier and are done with integrated tools that come with the system.

    Conclusion: ManagabilitySQL Server is, without a doubt, more manageable than Oracle Enterprise Solutions.

    Scalability and Performance

    Scalability - Oracle RAC

    With its structure, Oracle would appear to have the advantage in performance. One of

    the largest RAC systems (64-CPU) is run by Amazon. Oracle claims to support 100 CPUs,

    but there are no systems this large, nor benchmarks to be found. Oracles solution

    scales out rather than up, and they sell this as low cost, depending on low cost

    commodity servers. They claim that this is more cost effective for the consumer over

    other vendors systems.

    Scalability - SQL Server 2005

    SQL 2005 has proven that it can scaled to 64 CPUs on a single SMP server. It must also

    be said that SQL does have a better performance/price ratio at some benchmarks than

    Oracles 10g RAC for 64 CPUs. SQL Server 2005 can outperform Oracles 10g RAC and is

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 10 -

  • 8/14/2019 Migration SQL to Oracle

    11/22

    more cost effective. The largest OLTP databases in production today run on SMP servers,

    not clusters.

    SQL Server 2005 offers a choice of scale out technologies, where Oracle is pushing

    RAC as a single solution. SQLs scale out choices are comprised of 4 different options;

    each has its own advantages and disadvantages. We will not go into more detail here.

    Conclusion: Scalability

    Oracle is touted as the better system for large databases, but there are many multi-

    terabyte databases managed by SQL Server: Rosetta Genomics (10 TB), Verizon

    Communications (5 TB), Lucent (3 TB, with 33 billion rows!), and many more. It can

    theoretically support exabyte-level databases, using either the scale up or scale out

    methods. Workload benchmarks also show SQL Server can handle all but the most

    extreme throughputs: A single server can support more than 250,000 active users and a

    32-node cluster can process 700,000 transactions per minute.8

    SQL Server is as scalable as Oracle 10g R2. In some cases, SQL outperforms Oracle 10g.

    More importantly, SQL delivers scale up as well as scale out solutions, at less cost

    than Oracle.

    Development Comparison:Oracle vs Current System

    If one considers a shop that is developing applications using Microsoft technologies and

    is moving towards ASP.NET, this comparison is useful in decision-making. Criteria for the

    following section are as follows:

    Integration with Microsoft Visual Studio and the Microsoft .NET platform

    Support for Service Oriented Architecture (SOA)-based application development

    Deployment flexibility

    Integration with Visual Studio and the Microsoft .NET Platform

    Microsoft Visual Studio is the most popular application development tool on the market

    today. Microsoft .NET has emerged as the most popular platform for developing

    applications. As a result, both Oracle and Microsoft have integrated their database

    offerings (Oracle 10g and SQL Server 2005, respectively) with Visual Studio and the

    .NET platform. Integration with Visual Studio and the .NET CLR (Common Language

    Runtime) represents an important advancement in developer productivity for database

    application development. This section compares how well Oracle 10g and SQL Server

    integrate with Visual Studio and the .NET CLR.1

    Visual Studio and .NET CLR Integration

    While both Oracle 10g and SQL Server 2005 have been integrated with Visual Studio and

    the Microsoft .NET platform, SQL Server integration is more comprehensive, more

    seamless, more functional, and better performing.1

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 11 -

  • 8/14/2019 Migration SQL to Oracle

    12/22

    SQL vs Oracle - ODBC Driver DLL Path

    Aside from the rigorous hardware configurations necessary for availability, lets look at

    the data path. Without going into much technical detail, we can view this chart. The data

    path also varies in complexity between the two systems.

    MSDN blogs, selvar, November 2007

    Visual Studio Integration

    Currently, Oracle provides only basic integration with Visual Studio. Oracle provides a

    plug-in to Visual Studio called Oracle Developer Tools for Visual Studio .NET. A search on

    the Oracle site for .NET Developer Tools will reveal various downloads and information

    for developing with Oracle from the .NET platform. Oracle does not offer many important

    features which have a major impact on developer productivity, including:

    Debugging of stored procedures through Visual Studio. Oracle does not permit

    stored procedures implemented in its proprietary language, PL/SQL, to be debugged

    through Visual Studio. Developers will have to use a separate tool such as

    JDeveloper for debugging.

    Visual Studio projects. Oracle has no equivalent to SQL Server Project; this is a

    significant setback to developer productivity.

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 12 -

  • 8/14/2019 Migration SQL to Oracle

    13/22

    Auto-deployment through Visual Studio. After SQL Server database objects have

    been developed in an SQL Server Project, they can be deployed to the SQL Server

    database with a single click. The single-click deployment applies to .NET assemblies

    too. Oracles integration with Visual Studio does not support this capability.11

    SQL Server is completely integrated with Microsoft Visual Studio, while Oracles

    integration is incomplete when mixing the technologies. With SQL Server, a .NETdeveloper does not need any other tool besides Visual Studio for all aspects of

    application development. On the other hand, Oracle will require the use of its JDeveloper

    tool or other third-party tools in addition to Visual Studio, resulting in a suboptimal

    development experience, an increased learning curve, and decreased productivity for the

    developer.11

    Supported Database Object Types

    SQL Server enables programmers to develop stored procedures, triggers, user-defined

    functions, and user-defined aggregates in managed code. It is clear that Oracle plans to

    support stored procedures in managed code, but its support for other database objects

    is not clear.

    Debugging Stored Procedures

    Oracles integration with Visual Studio does not include the ability to debug stored

    procedures through Visual Studio. Developers will have to use a completely different

    tool, such as JDeveloper, to debug PL/SQL stored procedures or resort to cumbersome

    techniques like using trace files. Debugging is a significant component of application

    development; not having an integrated, state-of-the-art debugger is another huge

    drawback for the .NET Framework developer who is working with Oracle.11

    Integration of BI components

    Oracle offers a rich BI platform that includes the following:

    Oracle OLAP option for analysis

    Oracle Data Mining option for data mining

    Oracle Reports for designing and generating reports

    Oracle Warehouse Builder for ETL

    Oracle BI Beans for developing OLAP applications

    In addition to being extra-cost products, these are not integrated with Visual Studio. The

    development framework of choice for developing BI applications is JAVA, not the .NET

    Framework. Also, the tools provided by Oracle for developing and managing the BI

    components such as JDeveloper, Oracle Discoverer, and Oracle Enterprise Manager areHTML-based.11

    Conclusion: Development, Integration with Visual Studio

    Oracle does integrate with Visual Studio .NET, but, the current integration falls short of

    the comprehensive integration that exists between SQL Server 2005 and Visual Studio.

    SQL Server 2005 and Visual Studio could be considered the best combination of a

    database and IDE on the market.11

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 13 -

  • 8/14/2019 Migration SQL to Oracle

    14/22

    SOA-Based Application Development

    Comparison of XML Support

    Both Oracle and SQL Server offer comprehensive support for developing XML-based

    applications.

    Native XML Type and XQuery

    Both Oracle and SQL Server have a native XML type, which means that they actually

    understand that a column contains a XML document. This means that:

    They will validate XML documents against an XML schema before storing it in the

    database.

    They allow stored XML documents to be queried using the industry XQuery query

    language as well as XPATH.

    Indexing SQL

    Indexing is essential for fast execution of queries. SQL Server 2005 supports B*Treeindexes on elements, values, and paths of the XML field. Indexing greatly speeds up

    query execution. SQL Server 2005 also supports other indexes to speed up other types

    of queries to XML data through PATH indexes, PROPERTY indexes, and VALUE indexes.

    Indexing Oracle

    Oracle provides only regular text indexing and functional indexes; that is, no indexing

    specific to XML.11

    XML Schema Collections and Schema Evolution in SQL

    SQL Server supports the ability to store multiple unrelated XML documents in the same

    XML column. This feature is enabled by creating an XML SCHEMA COLLECTION whichconsists of one or more XSD schemas. A SQL Server XML schema collection constrains

    the types of XML documents that can be stored in the XML column. Users can add new

    top-level XML schema components and top-level elements to the existing schema

    namespaces.

    This feature provides a graceful way to migrate XML data. If any of these schemas

    evolve over time and create a new schema namespace, you can add the evolved XML

    schema to the same XML schema collection. Existing XML instances in an XML column

    continue to exist as before, while instances conforming to the new schema namespace

    can be added to the XML column and be indexed.

    Oracle does not have a comparable feature

    Oracle allows only single-rooted XML instances. In Oracle, you can have an umbrella

    schema in which the top-level element type must be modified to accommodate the

    evolved schema. However, if the schema evolves by derivation, then it does not require

    any change. Thus, schema evolution is restricted and non-uniform in Oracle.11

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 14 -

  • 8/14/2019 Migration SQL to Oracle

    15/22

    Conclusion: Development Feature Summary

    I really like Oracle the best for code creation and metadata Also whatever your

    thoughts on Microsoft Sql Server Management Studio, it's so much better than SQL

    developer for Oracle.- Terrence Ryan, A 30 old web developer working for the Wharton School in Philadelphia PA

    Feature SQL Server 2005 Oracle 10g R2

    CLR Integration

    Integration with CLR Yes

    (In-process)

    Yes

    (out-of-process)

    Stored procedures in any .NET

    language

    Yes Yes

    Triggers in any .NET language Yes Not Sure

    User-defined functions Yes Not sure

    .NET objects stored inside thedatabase

    Yes No

    Visual Studio Integration

    Can view database objects

    through Visual Studio

    Yes

    (through Server

    Explorer)

    Yes

    (through Oracle

    Explorer)

    Ability to debug stored

    procedures through Visual

    Studio

    Yes No

    Support for Visual StudioProject Yes No

    Auto-deployment of database

    objects through Visual Studio

    Yes No

    Context-sensitive online help

    for editing stored procedures

    No Yes

    BI technologies integrated

    with Visual Studio

    Yes No

    SOA Application Development

    XML Support

    Native XML type in the

    database

    Yes Yes

    XQuery support Yes Yes

    XML update functions Yes No

    XML indexes for improved Yes No

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 15 -

  • 8/14/2019 Migration SQL to Oracle

    16/22

    Feature SQL Server 2005 Oracle 10g R2

    performance (Text and

    Functional indexes

    only)

    Web ServicesDatabase as a Web service

    producer

    Yes (built-in HTTP

    endpoint requires no

    additional Web

    server)

    Yes (requires

    extra-cost Oracle

    Application

    Server)

    Database as a Web service

    consumer

    Yes (with .NET CLR

    integration)

    Yes (but requires

    extra-cost Oracle

    Application

    Server)

    Integration with Visual Studio Yes No

    Primary programminglanguage

    Any CLR language Java

    Asynchronous Message Queuing

    Product name SQL Server Service

    Broker

    Oracle Advanced

    Queuing

    Guaranteed, exactly once

    delivery

    Yes Yes

    Queues stored in database Yes Yes

    Transactional integration with

    database

    Yes Yes

    Publish-Subscribe

    communication model

    No (point-to-point

    only)

    Yes

    Abstraction level Queues, messages Services, Dialogs,

    Contracts

    Query Notification

    Query Notification through

    ADO.NET

    Yes No

    (Equivalent

    functionality

    requires Oracle

    Web Cache and

    Oracle Java Object

    Cache; these are

    features of the

    Oracle Application

    Server Product)

    Comparing SQL Server 2005 and Oracle 10g, Mitch Ruebush, April 2005

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 16 -

  • 8/14/2019 Migration SQL to Oracle

    17/22

    Security Comparison

    In spite of Oracles many claims of security superiority, most security disadvantages

    seem to lie with Oracle.

    Reviewing the CVE list (which is a national vulnerability database put forth by the DHS),

    there have been zero SQL Server disclosures since September 2004, and that is theonly one in the past 3 years prior to the end of September 2007.3

    Information Security Brief Microsoft SQL Server, Enterprise Strategy Group, November 2006

    It is interesting to note that Oracle leads the pack in vulnerabilities, followed by MySQL,

    with a fairly consistent rate of vulnerabilities disclosed.12

    Note that these numbers were through September and consequently do not reflect most

    of the vulnerabilities from the latest Oracle Critical Patch Update - October 2006

    (http://www.oracle.com/technology/deploy/security/critical-patch-

    updates/cpuoct2006.html), which included 22 database fixes.

    The Enterprise Strategy Group asserted their opinion that "...ESG considers Microsoft to

    be years ahead of Oracle..."12

    David Litchield (of NGSSoftware and www.databasesecurity.com) published a paper that

    compares the vulnerability track record of Microsoft SQL and Oracle databases over the

    past 6 years, as shown in these two charts from the paper:

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 17 -

  • 8/14/2019 Migration SQL to Oracle

    18/22

    Which database is more secure?, David Litchfield, November 2006

    How does Litchfield explain Microsofts ability to reduce the occurence of security

    vulnerabilities? There is no silver bullet, but the explanation lies in an old refrain to

    those following Microsoft security: the Security Development Lifecycle.

    Interpretation of results - some Q and A

    Do Oracles results look so bad because it runs on multiple platforms?

    No pretty much most of the issues are cross-platform. In the Oracle 10g graph, every

    flaw affects every platform.

    Do the SQL Server 2005 results have no flaws because no one is looking at it?

    No I know of a number of good researchers who are looking at it SQL Server code is

    just more secure than Oracle code.

    Do you have any predictions on the Oracle January 2007 Critical Patch Update?

    Maybe NGSSoftware are currently waiting for Oracle to fix 49 security flaws these

    will be fixed sometime in 2007 and 2008.

    Do these results contain unfixed flaws?

    No only those that have been publicly reported and fixed are in the data.

    Why have there been so little bugs found in SQL Server since 2002?

    Three words: Security Development Lifecycle SDL. SDL is far and above the most

    important factor. A key benefit of employing SDL means that knowledge learnt after

    finding and fixing screw ups is not lost; instead it is ploughed back into to the cycle. ThisAdvantages and Disadvantages of Migrating from SQL Server to Oracle - 18 -

  • 8/14/2019 Migration SQL to Oracle

    19/22

    means rather than remaking the same mistakes elsewhere you can guarantee that new

    code, whilst not necessarily completely secure, is at least more secure than the old code.

    Does Oracle have an equivalent of SDL?

    Looking at the results, I dont think so. Oracle keeps making the same basic mistakes,

    and some of their security fixes indicate that they dont understand the problemstheyre trying to fix. See http://seclists.org/bugtraq/2005/Oct/0056.html for more

    information.13

    More on Security

    SQL is certified by the federal government's C2-level security certification -- the highest

    level of security available in the industry. Microsoft uses a combination of role-based

    security for server, database and application profiles; integrated tools for security

    auditing, tracking 18 different security events and additional sub-events; plus support

    for sophisticated file and network encryption, including SSL, Kerberos and delegation.

    An Oracle system with security equal to that which is available out of the box with SQL

    Server will be available only as EXTRA-CHARGE options on Oracle, and now only withEnterprise Edition.13

    Conclusion: Security

    According to all reports, papers, and articles found, SQL Server 2005 is far more secure

    than Oracle 10g. This is verified by multiple sources (above) as well as IT Magazine,

    Computer World, and others who all report that Microsoft, with proper execution, is

    years ahead of Oracle in producing secure, reliable database solutions.14

    Cost Comparison

    Oracle is more expensive (although they claim that the hardware requirements make it

    cost less than SQL).

    Cost - SQL Solution

    SQL Server 2005 Solution: $25,000 ($24,999 Highest SQL Server Price) + High end

    server cost ? = Price of System.*

    *In our situation, SQL costs are nil because the system is already paid for; this is just for comparison purposes.

    If Oracle is purchased, the costs would more than outweigh yet another purchase of an SQL system and more.

    Cost - Oracle Solution

    Oracle Solution: $40,000 (Oracle Price) + $25,000 (RAC Price) + Server Cost. The

    number of servers depends on how many servers you want in a cluster, for DataGuard,

    and for the shared storage. A total Oracle solution on the least expensive commodity

    server (Oracles plan for saving money?) is $78,000 per processor.3

    Conclusion: Cost

    Oracle is more expensive on the cheapesthardware system than the SQL Server solution

    on the most expensive hardware system. Oracles claim of being cheaper does not seem

    to be true.

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 19 -

  • 8/14/2019 Migration SQL to Oracle

    20/22

    Since we are talking about cost, lets look at another one of Oracles claims. Oracle

    claims that they have the biggest market share in the BI industry. This information is not

    entirely accurate. Oracle uses the revenue market share measure, which is misleading

    because the solutions they offer are more expensive. Oracle might get the most money,

    but they also might not be the most widely used system as the claim might lead you to

    believe.

    Another source, the International Data Corporation (IDC), says that Microsoft's SQL

    Server product is slowly catching up to Oracle and IBM in relational database

    management system (RDBMS) market share. For 2005, IDC issued the following

    statistics pertaining to RDBMS market shares:

    Oracle: 44.6 percent

    IBM: 21.4 percent

    Microsoft: 16.8 percent

    Sybase: 3.5 percent

    Teradata: 2.9 percent9

    The larger generalist vendors Microsoft, Oracle, SAP, Business Objects cannot even

    measure their OLAP business themselves, because their OLAP capabilities are often

    delivered as part of larger, bundled products and account for a minority of their

    revenues. For example, Microsoft Analysis Services and the OLAP capabilities of SAP BW

    are not sold separately, but are included as part of product suites.10

    The market share reports can be misleading, since Microsoft offers everything in a

    complete package and Oracle sells by the piece.

    Microsoft SQL Server is still number one. According to the 2007 Database and Data

    Access, Integration and Reporting Study, completed by BZ Research in late June 2007,

    74.7 percent of enterprises are using SQL Server. This is slightly lower than the 76.4

    percent reported in a comparable July 2006 study, but its still significantly higher thanthe other popular databases. BZ Research, like SD Times, is a subsidiary of BZ Media.

    This survey, conducted during the second half of June, was completed by 686 software

    development managers.15

    Conclusion Overall:

    Both systems seem to be capable of doing the job. Questions such as, What do we

    hope to gain by migrating from SQL to Oracle? will hopefully now be easier to answer. It

    is hard to see what the gains are; trends show more people migrating from Oracle to

    SQL for the reasons detailed in this report.

    You are going from SQL to Oracle?? Most people go the other way.

    I dont think I have any info on going from SQL to Oracle.

    Is there a price benefit?- Account Manager, Softmart, Charlotte NC

    Experts point out that migration is a difficult, complicated task. The question should be

    posed, Is the system were using NOT meeting our needs, or, is it (the system) NOT

    working out for other reasons? In other words, is a migration necessary? If, for some

    reason, migration is necessary, some tips to help this go smoother (planning and

    planning) are found above.

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 20 -

  • 8/14/2019 Migration SQL to Oracle

    21/22

    Migrating to a new RDBMS is an extremely difficult and expensive process and

    essentially means that you made the wrong choice! If you have not made the wrong

    choice, it might be best to stick with what you have.16

    Overall, for our needs, SQL seems like the better (and simpler) system. From licensing

    negotiations with the vendor (Oracle = complex licensing negotiations4), all the way to

    training, setup, management and maintenance, migrating to Oracle seems to be adisadvantage. Plus, after migrating, the tight integration and interoperability between

    the database and the development technologies would be lost.

    Migration to Oracle may be overkill. Oracle is expensive, with high end features that few

    businesses need. Additionally, Oracles expensive enterprise system is required in order

    to have reliability that is equal to that of SQL. It is best to be sure that before plunging

    into Oracle. It is very possible to save money and have great performance with SQL.

    Oracle is much more complex than SQL and requires more training and technical

    support, which is also more expensive than SQL training. Microsoft also leans towards

    servers that are more or less self-tuning, and this reduces the human error factor. Plus,

    Microsoft SQL is very intuitive, while Oracle is NOT. Oracle has a steep learning curve

    which is more difficult for DBAs as well as developers. (An organizations skill base needsto be higher to work with Oracle than it does with SQL. 3) There can also be a sufficient

    loss of development time when training comes into the picture, as well as longer

    development time in general because developers will have to contend with different

    systems instead of having everything in one package as they do with SQL Server 2005.

    From most practical viewpoints of the decision-maker, migration from Microsoft SQL

    Server 2005 to Oracles 10g RAC system is not a good idea unless an organizations

    needs cannot be met with SQL.

    About the Author

    Though lacking in experience with Oracle systems, Philip Anderson has several years of

    experience as a skilled webmaster and also has served as a DBA. He has also attended

    formal classes on the usage and administration of SQL Server. At the time of this

    papers composition, no tools (hardware) were at the authors disposal (to enable

    testing and direct interaction and experience with stated claims in various articles). The

    information was filtered through a process of checking out noteworthy claims against

    whatever information could be found through research as to its validity. Most points

    presented are consistent throughout multiple sources.

    Footnotes1

    Spotlight on Oracle, WinterCorp, 2005

    2Spotlight on SQL Server, WinterCorp, 2005

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 21 -

  • 8/14/2019 Migration SQL to Oracle

    22/22

    3SQL Server 2005 vs. Oracle 10g, Ahmed Bahaa, Jan 2007

    4Preparing for a heated race with Oracle, Jeremy Kadlec and Greg Robidoux, Nov 2005

    5Solutions for Highly Scalable Database Applications, performance tuning corporation, May 2006

    6http://www.linxcel.co.uk/whitepapers/Real-

    World%20Challenges%20for%20Oracle%20RAC%20Implementation-Issue%201.pdf7

    Oracle 10g and Real Application Clusters, Mike Ault, 2004

    8Making the case for SQL Server, By Tim Dichiara

    9SQL Server's market share continues to grow, Matt Mondok,Published: May 31, 2006

    10The OLAP Report, Nigel Pendse, April 2007

    11Comparing SQL Server 2005 and Oracle 10g, Mitch Ruebush, April 2005

    12Information Security Brief Microsoft SQL Server, Enterprise Strategy Group, November 2006

    13Which database is more secure?, David Litchfield, November 2006

    14

    SQL Server 2005 - 1 Year And Not Yet Counting, jrjones November 0715SQL Server Still No. 1 in Databases,Alan Zeichick, July 200716The Wrong Choice, Jan Stafford, SearchOpenSource.com, Apr 2003

    Other Sources of InformationMSDN blogs, selvar, November 2007

    Database Architecture: Federated vs. Clustered, Oracle White Paper, Feb

    Oracle pricing won't lure SQL Server users, Robert Westervelt, Feb 2004

    Oracle vs. SQL Server: Face-off, By Robyn Lorusso and Tim DiChiara, Mar 2004

    http://www.oracle.com/database/index.html

    Enterprise Information Management, Robert Dorin, 2005

    searchoracle.techtarget.com

    Flaw hunters pick holes in Oracle patches,Joris Evers,ZDNet News, Oct 2005

    Microsoft's Blue Hat Shows It's Serious About Security, Paul Roberts, October 2005

    Understanding Database Pricing, SQL How to Buy, December 2007

    Security Impact, Eric Ogren, October 2006

    Choosing a Database for High Availability, Michael Otey, Denielle Otey, April 2005

    SQL Server 2005 Enterprise Edition Benchmarks, November 2005, Updated: July 2007

    Transaction Processing Performance Council (www.tpc.org)

    Comparing Enterprise Development Productivity, 3 Leaf, Jan 2005

    Understanding Database Pricing and Liscensing, Darmadi Komo, May 2005, Updated Sept 2007

    Advantages and Disadvantages of Migrating from SQL Server to Oracle - 22 -

    mailto:[email protected]:[email protected]:[email protected]:[email protected]:[email protected]://news.zdnet.com/http://news.zdnet.com/http://www.tpc.org/mailto:[email protected]://news.zdnet.com/http://www.tpc.org/mailto:[email protected]