各类数据库对服务器的要求
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
我们先来看一个很有意思的表格,它可以告诉你什么样的应用选择什么类型的数据库软件:
提到ORACLE,不得不详细介绍一下,因为它是目前业内公认最牛X的数据库系统,广泛用于大型商业、高等院校和科学研究领域:
ORACLE 是以高级结构化查询语言(SQL)为基础的大型关系数据库,通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。是目前最流行的客户/服务器(CLNT/SERVER)体系结构的数据库之一。以来引入了共享SQL和多线索服务器体系结构。这减少了ORACLE 的资源占用,并增强了ORACLE的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。ORACLE 数据库提供了基于角色(ROLE)分工的安全保密管理,在功能、完整性检查、安全性、一致性方面都有良好的表现。ORACLE 数据库提供了与第三代高级语言的接口软件PRO*系列,能在C,C++等主语言中嵌入SQL语句及过程化(PL/SQL)语句,对数据库中的数据进行操纵。加上它有许多优秀的前台开发工具如POWER BUILD、SQL*FORMS、VISIA BASIC 等,可以快速开发生成基于客户端PC 平台的应用程序,并具有良好的移植性。另外,ORACLE 数据库提供了新的分布式数据库能力,可通过网络较方便地读写远端数据库里的数据,并有对称复制的技术。
OK,下面分析一下ORACLE 数据库:根据实际使用测试的经验,不少程序员都已经确认ORACLE 数据库在运行时效率是非常高的,大家发现这其实是因为它非常巧妙而合理的使用了系统内存,当然,它同时也是大量的使用了系统内存,至于其目的究竟是为了缓解硬盘缓存压力还是基于其他因素,我们就不深入探讨,我们可以明确的一点就是,ORACLE 数据库要有足够容量的系统内存进行支持才能较好的发挥其性能优势,尤其是那些数据库写入工作(例如UPDA TE、INSERT/ADDNEW等动作)比较频繁的应用,使用大容量内存非常有必要。
因此,如果您是使用ORACLE 数据库,可以在系统内存容量方面进行提升,现在的Nocona、Opteron已经突破传统4GB内存直接寻址的限制了,但的设计对于大容量内存系统的限制还是存在,大家还得注意这个问题;在内存控制方面表现比较出色的是和,这两家公司的内存自主研发技术比较多也比较强大,尤其是,不仅可以有效实现内存的大容量扩展,还能提供多种纠错和备份保护,对于级应用是非常适合的。另外,数据库对内存系统要求高并不是说一味提升内存容量就OK了,整体性能的提高无论任何时候都是真理;对于一些中高端的应用,我们推荐大家使用8路或更8路以上的服务器,特别是的Opteron 8XX系列,性能确实非常强悍,而且其独到的HyperTransport技术可以为多路系统提供足够的总线,加上内存控制器内嵌于核心之上,使得它的前端系统性能要比的MP更为抢眼,如果是系统,还可以使用IBM的Power 5系统,Power 5处理器是IBM自家的RISC(精简指令集)架构处理器,采用双核设计,性能也非常强悍。至于,基本上是取决于使用什么样的控制卡和使用什么RAID工作模式,关于这方面的问题大家可以参看我们的技术文章,相信会找到一个满意的答案,这里就不进行详述了。
MS SQL Server
这是的商业数据库系统,有多个版本,最强大的是Enterprise Edition,需要在Windows 2000 Advanced Server或Windows 2003 Server Enterprise Edition上面才能安装。微软之前的数据库一直被指性能不佳,不登大雅之堂,于是比尔高薪挖来很多牛人开发出这套SQL Server,目前常用的版本还是MS,尽管新版本已经问世。这套数据库系统性能表现也是可圈可点,彻底改变了微软没有高性能大型数据库的局面,由于有自家做后盾,加上Visual Studio开发软件的强力支持,该数据库系统在国内应用也非常普及,各种中小型商业和院校应用都看得到它的身影,大部分以+ASP/.NET模式运行的中等以上规模WEB站点都是使用这套数据库。
MS SQL Server对服务器设备的要求并不像ORACLE那么高,但是根据大多数程序员使用的感受,要提高MS SQL Server的性能在处理器和磁盘系统上做文章效果比较明显。鉴于MS SQL Server的主流应用环境一般都是双路XEON(这东西还不能移植到Unix系统,而且性能不如ORACLE,因此一般不用于高端领域),因此我们针对这类数据库提出的建议是:使用高频的Xeon处理器,建议使用双路,另外,Opteron表现确实非常优秀,也可以适当考虑;磁盘系统采用RAID 0或者RAID 1用户可以自己决定,如果有配阵列卡,组个RAID 5也可以;特别说明一下,Windows 2003 Server Enterprise Edition执行效率确实比Windows 2000 Advanced Server高,对于使用MS SQL Server的用户来说可以考虑使用2003作为。My SQL
这是一个开放而且免费的数据库。虽然功能不是非常强大,性能也只能算是一般,但在各种中小型应用中还是非常普及的,毕竟它比起针对小型办公应用而设计的ACCESS来说还是非常有优势的--不仅免费,而且性能、安全性比ACCESS好很多。My SQL可以在Windows环境下使用,不过其最经典的组合是+Apache+PHP/JSP+MySQL。现在以这种组合出现的小型网站非常多,这类网站对要求非常低,当然,由于数据库本身的限制,MySQL 也不大适合大访问量的商业应用。
在我们的测试中经常使用MYSQL作为数据库平台,一般是使用一个拥有5万注册用户的论坛数据库作为测试对象,测试结果也显示出一个问题,性能对MYSQL数据库查询的效率影响特别明显,要远远高出CPU、内存等配件的影响,一台配置一般的服务器只要拥有高性能的磁盘系统,一样可以获得很好的成绩;当然,如果在数据库查询中包含很多复杂的查询比较条件,那么CPU主频的作用也是非常明显的。这里,我们推荐这类数据库的用户使用高性价比的阵列,用主板自带的软RAID就行,性能同样可以令人满意,而且成本非常低,当然,适当提升CPU的主频也是有价值的。
Access