`
阿尔萨斯
  • 浏览: 4398452 次
社区版块
存档分类
最新评论

Oracle与SQLServer选型时不得不说的三个小差异

 
阅读更多



甲骨文与微软两大数据库产品,是数据库发展史上的两座大山。这让我们在数据库选型的时候,基本上没有多大的选择余地,不是微软就是甲骨文。但是,从他们两者来说,还是有比较大的差异。今天笔者就谈谈在数据库选型的时候,不得不关注的他们之间的三个小差异。了解这些区别,能够给我们数据库选型带来很大的指导作用。



一、所支持平台的差异。



甲骨文的数据库系统,是在JAVA平台上开发起来的,所以,保持着众多JAVA程序的特性。如有很多功能都需要利用命令来完成;如一些辅助工具也都是类似DOS窗口的命令行形式的窗口,等等。而基于JAVA平台开发的数据库版本,也继承了JAVA的一个很重要的性能,就是跨平台性能。甲骨文的Oracle数据库可以在现有的大部分操作系统上顺利运行,如无论是开源的Linux系统还是微软的服务器系统,又或是苹果操作系统等等,都可以跑 Oracle数据库系统。



而微软的SQLServer数据库系统,其只能够在微软的操作系统上运行,这除了技术上的因素之外,可能也是微软捆绑销售以及垄断的商业策略的体现吧。



但是,从各个方面考虑,数据库能够支持多个平台的特性,已经越来越重要。



一是从服务器稳定的角度考虑。到现在为止,开源的UNIX还是首选的服务器操作系统。UNIX服务器操作系统的稳定性是有目共睹的;而微软的服务器软件漏洞之多、稳定性之差也是大家感同身受的。相比之下,在一些稳定性要求比较高的应用上来说,大家更加喜欢使用UNIX(或者其分支 LINUX)作为服务器软件。虽然,其在维护成本上可能会高于微软的服务器操作系统。既然在服务器操作系统上有多个平台可以选择,那么无论是企业还是软件公司,在数据库选型上,也必须要考虑这个趋势。若商业软件公司,他们开发的软件只支持微软的数据库,而不支持甲骨文的数据库的话,则他们开发的软件,就只能够在微软的操作系统平台上应用,而不能在如LINUX的平台下应用,这必将失去很大的一部分市场。在这方面,我们公司的CRM软件业务就吃过一次亏。由于我们公司的CRM软件是从其他公司收购过来的,其只支持微软的数据库产品。虽然跟微软的数据库产品捆绑销售,据说企业也从微软那边拿到了不少的返点,但是,也失去了不少的客户。因为现在不少客户在选型的时候,都需要CRM软件能够支持跨平台运行,特别是服务器上,出于稳定性考虑,他们都采用LINUX作为后台服务器的操作系统。但是,我们公司的CRM软件无法适应这个跨平台的需求,所以,被迫放弃了很多项目。现在研发部门正在研究,准备开发出一套能够支持跨平台的CRM软件。而要实现这个目标,首先要考虑的就是数据库要能够支持跨平台。



二是从客户端的部署成本考虑。跨平台也是一个必然的选择。现在微软进一步加强对盗版的打击力度,这虽然可能会增加微软的销售额,但是,也在一定程度上,把微软的用户向Linux等开元操作系统转移。为了适应这个趋势,企业在软件选型的时候,不仅在服务器上有所体现,在客户端上,企业也要求能够支持Linux等开源的操作系统。这个趋势,也给微软当头一棒。虽然说,信息化管理软件的跨平台性能除了跟数据库有关外,还跟信息化管理软件的开发平台相关。但是,从客户端的部署成本来考虑,大部分企业还是会采用免费的开源操作系统,而软件公司为了满足企业的这一需求,也会采用支持跨平台的开发语言; 而他们也就自然而然会支持甲骨文的操作系统。这必将大大的影响微软数据库系统的市场占有率。



所以,笔者认为,不能够支持跨平台运行,这是微软数据库系统跟甲骨文数据库系统在市场竞争中,最大的劣势吧。

二、部署成本上的区别。



在数据库部署成本上,两者的差异可以用一句话概述,就是甲骨文的数据库性能比微软的数据库性能要高几十倍,但是,部署价格的话,甲骨文系统也比微软的数据库系统高贵好几倍。当然,这是一个比较笼统的说法,在实际数据库选型中,还需要实际情况实际分析。



1、Oracle数据库也有一些免费的版本。为了吸引更多的客户,甲骨文数据库系统也推出了一些针对中小型企业的免费数据库系统,如XE 等等。这些免费的数据库虽然比收费的数据库系统在某些方面受到了一些限制,如支持CPU以及数据库容量上有一定的限制,但是,对于小型企业的应用来说,没有多大的影响。而微软的数据库系统无论是大型应用还是小型应用,都是需要收费的。虽然,根据笔者的了解,不少中小型企业,在数据库选型的时候,选择了相对复杂的Oracle数据库系统,而放弃了收费高昂的微软的数据库系统。从这方面考虑,甲骨文的数据库实施成本反而比微软的数据库要小的多。



2、Oracle数据库部署成本高的原因,是他们还提供了很多收费的维护工具。其实,甲骨文的数据库系统,不仅仅是一个数据库软件,还有很多维护工具,而这些维护工具是跟数据库本身分开卖的。若就一个数据库系统,则对于大部分数据库管理员来说,是管理不好甲骨文的数据库系统的;如不少的甲骨文数据库管理员,失去了SQL*plus工具,就手足无策了。巧妇难为无米之炊,没有这些辅助工具,甲骨文的数据库管理员就好像魔术师失去了道具,无所适从。真是因为这些原因,甲骨文的数据库部署与维护成本,比微软的数据库系统要高的多。微软基本上没有什么收费的数据库系统官方工具,就是一个数据库系统,在里面也自带了企业管理器。利用这个企业管理器环境,基本上可以完成微软数据库系统的维护工作。正是因为如此,微软的数据库系统的部署与维护成本,要比甲骨文的低许多。当然,这是微软数据库系统以牺牲数据库的性能为代价的。毋庸置疑,真是因为这些丰富的甲骨文数据库辅助工具,才能够保障甲骨文数据库的高性能。



3、从数据库管理员的价值来说,两者之间也有比价到的差异。若把数据库管理员当作一个商品的话,则甲骨文的数据库管理员与微软的数据库管理员,同一个档次的,则前者比后者要贵许多。虽然都是数据库管理员,但是,就好像一个是本地组装的,一个是原装进口的,两者在价格上有很大的差异。不是笔者自夸,在同一个水平下,聘请一个甲骨文的数据库管理员,就可以凭请两到三个微软数据库管理员了,甚至更多。光从数据库维护人员的支出考虑,数据库维护成本,甲骨文的操作系统就要比微软的数据库操作系统贵两倍到三倍。这也正是甲骨文数据库维护成本比较高的另一个重要原因。不过,对于刚入门的数据库管理员来说,两者没有很大的区别;级别越高,两者的“价格”,差异就越大。

三、社区氛围的差异。



社区氛围上的差异,这不仅是微软与甲骨文数据库系统上的差异,也是这两家公司经营文化上的差异。



微软非常注重整个产品的社区氛围。如笔者在数据库这个行业也已经有很长的经验了,笔者曾多次受到微软公司的邀请,听他们的新产品发布会、研讨会之类的;而且,在网上,还有专门的免费教育。在GOOGLE上,输入微软数据库教学,可以查询到很多官方的培训视频。但是,甲骨文公司在这点上,明显不如微软。笔者使用了这么多年的Oracle数据库,从最初的9开始,到现在的这个最新的版本,这么多的版本变更,笔者从来没有听说过,甲骨文公司什么时候在全国各地开过产品发布说明会了,更没有用户研讨会了。而且,在网站上查找一下,也很难查到官方的培训光盘。所以说,微软是比较重视他们的用户群体的。



这一点不光是反映在他们的数据库产品上,在他们的CRM软件业是如此。正是这一点,让微软抓住了很多用户的心,这对于他们开拓市场,具有很好的辅助作用。



微软积极营造的这种社区氛围,对于用户了解微软的数据库产品,学习他们的数据库产品技术,是非常有帮助的。而由于甲骨文缺少这种氛围,所以,基本上只有通过培训才能够进入甲骨文的数据库管理员这个团队,入门比较困难。

分享到:
评论

相关推荐

    Oracle与SQLServer的SQL语法差异

    Oracle与SQLServer的SQL语法差异,用简单易懂的语言和实例对Oracle和Sql Server语法之间的差异进行了对比分析,更加适用于入门的人

    oracle与SQL server的语法差异总结

    Oracle 和 SQL Server 是两种广泛应用的关系型数据库管理系统,它们在语法和功能上存在一定的差异。以下是对两者主要区别的一些详细说明: 1. **伪列 ROWNUM**: 在Oracle中,ROWNUM是一个伪列,用于获取结果集中...

    ORACLE与SQLSERVER语法差异分析

    在数据库管理领域,ORACLE和SQL SERVER是两个广泛使用的数据库管理系统,它们在语法上有许多相似之处,但也存在一些显著的差异。以下是对标题和描述中所述知识点的详细说明: 1. **递归查询**: - 在SQL SERVER中...

    Oracle和SqlServer语法区别

    Oracle和SqlServer语法区别 Oracle和SqlServer是两种流行的关系型数据库管理系统,它们之间存在着一些语法区别。了解这些区别对于开发者来说非常重要,因为它可以帮助他们更好地迁移到新的数据库管理系统。下面将...

    ORACLE和SQL Server的语法区别

    本文主要介绍Oracle与SQL Server在SQL语言层面的异同之处,重点在于Transact-SQL(T-SQL)与PL/SQL之间的区别,并提供了一些迁移策略。对于希望将现有的Oracle数据库系统迁移至SQL Server平台的用户来说,这些知识尤...

    实现 Oracle 连接 SQL Server

    ### 实现 Oracle 连接 SQL Server 的方法与步骤 在 IT 领域,数据库间的交互对于实现数据共享和业务协同至关重要。Oracle 和 SQL Server 分别作为市场上两款主流的数据库管理系统,它们之间的连接需求十分常见。...

    实现ORACLE与SQLSERVER数据库间的数据抽取与转换工具

    总结来说,实现“Oracle与SQLServer数据库间的数据抽取与转换工具”涉及的主要知识点包括:数据库连接、SQL查询、数据转换规则、多数据库系统间的语法差异理解和编程实现。这个工具的源代码压缩包"复件 zExtractor...

    深度对比 Oracle与SQL Server

    ### 深度对比 Oracle与 SQL Server #### 操作系统的支持 在操作系统的支持方面,Microsoft SQL Server 和 Oracle 显示出了显著的区别。SQL Server 作为 Microsoft 的产品,一直以来都主要支持 Windows 平台,包括 ...

    sqlserver自动生成sql语句工具sqlserver转oracle

    市场上存在许多这样的工具,如SSMA(SQL Server Migration Assistant) for Oracle,这是一个官方提供的迁移工具,能自动分析SQL Server的架构,并生成适合Oracle的DDL(Data Definition Language)和DML(Data ...

    oracle到sqlserver 跨库查询

    .oracle 到 SQL Server 跨库查询 Oracle 到 SQL Server 跨库查询是指通过网关工具将数据从 SQL Server 数据库中抽取到 Oracle 数据库中。这个过程需要安装和配置网关软件,并进行相应的设置和配置。 一、网关软件...

    ORACLE与SQLSERVER中的语法区别

    ORACLE 与 SQL SERVER 中的语法区别 在数据库管理系统中,ORACLE 和 SQL Server 是两个常用的关系数据库管理系统。虽然它们都使用 SQL 语言,但是它们之间存在一些语法上的区别。这篇文章将详细介绍 ORACLE 和 SQL ...

    oracle,sql server驱动包

    综上所述,这些驱动包是Java开发者在与Oracle和SQL Server数据库交互时必不可少的工具。通过它们,我们可以编写出跨平台的Java应用程序,实现对数据库的连接、查询、更新、删除等操作,同时,servlet-api.jar确保了...

    oracle数据库导入到SQL server.docx

    "Oracle数据库迁移到SQL Server" 本文将详细讲解如何使用Microsoft SQL Server Migration Assistant for Oracle.exe(微软数据库迁移工具)将Oracle数据库迁移到SQL Server。该工具可以帮助用户快速、安全地将...

    SQLServer2008R2与Oracle11gR2互连

    ### SQLServer2008R2与Oracle11gR2互连 #### 1. 简介 SQLServer2008 R2与Oracle11g R2分别是Microsoft和Oracle公司推出的重量级数据库系统,在不同的应用场景下各自拥有优势。在实际的企业环境中,往往需要在两种...

    oracle,sqlserver及mysql对比

    Oracle、SQL Server 及 MySQL 是目前最流行的三大关系数据库管理系统,各有其优缺点。本文将从表空间、查询语句、事务、分区表和分区索引、优缺点等方面对三者进行比较。 表空间 MySQL 的表空间有共享表空间和独占...

    oracle与SQL server的主要区别

    oracle与SQL server数据库的主要区别分析

    SqlServer表结构转oracle表结构

    总的来说,SQL Server到Oracle的表结构转换涉及了数据库设计、编程和数据库管理等多个方面。C#作为通用的编程语言,提供了丰富的库和工具来处理这类任务。通过深入理解数据库结构和数据类型,结合编程技术,我们可以...

    SQLServer与Oracle语法差异汇总.docx

    而SQL Server的函数不支持输出参数,也不能执行数据修改操作,也不支持动态SQL。 游标的处理方式上,Oracle允许声明游标并使用`FOR`循环,数据库会自动管理游标的打开、提取和关闭。SQL Server则需要显式地声明、...

    SqlServer与Oracle差异

    【SqlServer与Oracle差异】 在数据库领域,SqlServer和Oracle都是广泛使用的数据库管理系统,它们各自拥有独特的特性和优势。本文将从概念、数据类型、语法等方面对比两者的差异。 1. **概念上的区别** - Oracle...

    oracle到sqlserver存储过程语法转换

    ### Oracle到SQL Server存储过程...在进行数据库迁移时,开发者需要仔细分析现有的Oracle存储过程,然后根据SQL Server的语法特点进行相应的转换。此外,还应考虑到性能优化等问题,确保迁移后的应用程序能够高效运行。

Global site tag (gtag.js) - Google Analytics