选型:应该使用开源操作系统及数据库吗?

来源:it168 作者:posted
  

    鉴于目前情况,我认为在公司的开发和集成项目中有必要使用或部分使用开源平台,而不需要固定地使用D版Windows+SQLServer,因此花了一天时间写了这份可行性分析,请大家帮忙看看有什么错误或补充的,是否有必要提交给上层。说句过河拆桥的话:痛恨D版,希望国家加大打击力度。

    名词注释:

    OS:

    操作系统(Operating System),目前主流的商业操作系统有Windows系列和Unix系列,Windows系统的客户端版和服务器版价格相差较大,比如客户端Windows Xp只需几百到上千元,但Windows Server 2003/2008则需要几万到几十万元。开源的操作系统有FreeBSD、Linux,虽然免费,但由于易用性、惯性、软件兼容性等问题,目前还无法在桌面上与Windows竟争,应用主要集中在服务器。

    DB:

    数据库系统(Database),常见商业db有MsSQL、Oracle、Sybase、DB2等,但使用代价高昂,大多根据CPU及并发用户数收许可费,少则几万,多则几百万。除此之外则是主流开源数据库系统,如PostgreSQL、MySQL、Firebird等,这些开源db也有很成熟的应用,在某些领域并不输于商业db,开源不等于低端。

 
   背景:

    你的单位是否接过Microsoft、Oracle、Borland公司的版权电话?是否收到过律师函?是否因此而被迫买过某软件?探讨这个问题时,一个绕不开的话题就是版权和许可费。现在知识产权保护越来越严,你现在没有收到律师函不代表明天、明年它不来,是早做准备还是到时再说。

    在软件项目管理中有一个规律是:越早处理花费越小,在软件发布时发现错误,修改错误的花费用是需求分析时的50到100倍,在项目运行两年后被迫迁移os和db所花费用绝对超过项目启动前选择合适os和db和百倍,也许大到购买商业系统花费的数倍,这时就没有迁移的必要了。

    选择开源db和os的必要性

    一.显见的必要性

    数据库是业务系统的核心,负责数据的存贮,在项目规划时除了开发工具、操作系统平台外,最重要的就是数据库的选型,但由于D版问题隐藏了成本,很多集成商或客户都直接选择价格最贵、功能最全的企业版本,而不管项目的实际需求(也许实际业务每天只有10M不到的数据),按真正的成本计算,此db的价格可能会超过百万,远远超过整个集成系统标的的N倍。

    数据库系统一般都按CPU和并发用户数收费,MsSQL价格要比Oracle低些,标准版本比企业版本要便宜一点,DB2和SyBase的价格不太清楚,下面链接是Ms提供的与Oracle10g的价格对比:http://www.microsoft.com/china/sql/prodinfo/compare/oracle/pricecomparison.mspx

    另外有些附加功能是另外收费的,如压缩、加密功能等。除了数据库的价格,如果选用商业服务器操作系统也是很大的开支,下面是Windows Server 2008的报价:

    Windows Server 2008 标准版:999美元(含5个客户端访问许可)

    Windows Server 2008 企业版:3999美元(含25个客户端访问许可)

    Windows Server 2008 数据中心版:2999美元 / CPU

    一般规模公司的服务器可能有5到10台,中等规模的企业服务器在20台以上也很正常。有时为了维护方便,很多单位对每个业务单独安装在物理机器上,自然需要多套os和db,乘上以上的单位价格就知道总共花费了。

    二.预见的必要性

    虽然现在使用D版数据库和操作系统隐藏了真实成本,但环境是不断变化的,随着版权保护的渐行,打击力度加大,不仅会影响新建系统的db/os选型,而对旧系统也有影响,经常会出现先使用再购买的情况。

    旧系统有时会有升级需求,升级OS和DB需要不菲的许可费。

    三.隐见的必要性

    对项目使用开源os和db不论对开发方自身还是客户都是很有必要的,有的客户对此并不明白,认为项目标的中包括OS和DB,实际上却需要自己购买,本着对客户负责和自身发展的观点,使用开源操作系统和数据库系统是很有必要的。

    选择开源db和os的可能性

    一.技术可行性

    操作系统:只是使用的习惯性问题,虽然FreeBSD/Linux推荐命令行方式,但如果不熟悉的话,可以安装X-Window界面降低适应曲线,并且作为服务器OS,安装配置完成后,人工的干预率是比较低的,完全不是问题。

    数据库系统:与商业db相比,同是关系型数据库,理论是一致的,在SQL语句是只有少许差别,技术上没有问题,从以下几点说明:

    1. 主流开源db完全支持所有企业特性,包括事务、热备份、故障点还原、复制、集群等,支持企业级应用。

    2. 支持问题,有不少人认为开源db出问题后没人支持,但我认为这并不是大问题,当然如果你认为你的系统特别关键、特别重要的除外。可以回头想想,这么多年参与大大小小的开发和集成项目加起来可能有十几,使用的数据库集中在Oracle和MsSQL,有时也出现过问题,但基本不请原厂工程师来解决,因为代价实在太高,简单问题自己搞定,搞不定的系统注意勤备份,大不了丢失半天的工作也可以承受。以现在的眼光来看,这些服务器都可改为开源数据库。

    二.市场可行性

    在集成项目中,客户可能并不关心你使用什么db,只要好用即可,但你说要他再出10万元买一套SQL Server时估计马上就火了。根据客户的业务状况推荐相应的OS和DB(开源的或商业的)是一个比较好的选择。

    开源数据库,只要能在技术和安全上给予保证,讲明利害关系,客户应该是接受的。虽然D版数据库也是免费,但毕竟是不合法的,也有悖于道德规范,还有就是存在一个非常巨大的潜在风险,万一某天Microsoft或Oracle追上门来可就惨了,特别是有些规模的企业更是受不了这个,你是把业务系统停掉算了,还是认购认罚,但这时的支出绝对不是小数目。


时间:2009-06-12 11:39 来源:it168 作者:posted 原文链接

好文,顶一下
(5)
100%
文章真差,踩一下
(0)
0%
------分隔线----------------------------


把开源带在你的身边-精美linux小纪念品
无觅相关文章插件,快速提升流量