六个免费数据库与商业级质量的功能

免费和开源的数据库有多有效?为了找到答案,我们回顾了6::Microsoft SQL Server Express, PostgreSQL, Oracle的MySQL, MariaDB, Apache Derby和Firebird SQL。

免费或开源数据库运行着数以亿计的公开和私有数据应用程序但这项技术的效果如何?这些产品的对比情况如何?为了找到答案,我们回顾了六种流行的免费或开源数据库产品:微软SQL.服务器Express, PostgreSQL, Oracle的MySQL, MariaDB, Apache Derby和Firebird SQL。

当我们的审查挑选候选人我们选择功能全面的关系数据库管理系统(RDBMS)产品的功能,如过程,函数,触发器和游标。虽然我们并没有特意进行科学的基准测试,我们测试了大表。对于测试数据,我们从包含我们的Web服务器的一个一百万加记录中使用截断的日志文件。同样的测试数据在所有六个产品中使用。我们进行了标准测试,如批量插入/通过select,UPDATE和DELETE语句的进口和进行数据处理任务。

观看这些产品的幻灯片版本。

对于我们的测试环境,我们使用64位Dell机架服务器运行视窗Server 2008 R2。需要注意的是,除了MS SQL Server Express,我们测试的所有数据库产品都是跨平台的。

紧随其后的是Microsoft SQL Server Express和Oracle的MySQL。从GUI的角度来看,SQL Server提供了最好的工具和升级到商业版本的能力,如果您需要额外的特性和功能,可能会吸引许多数据库管理员。迁移的争论也适用于MySQL,因为Oracle现在提供了多种MySQL的商业版本。排在榜首的MySQL有几个原因;其一是缺乏任何有用的本地管理工具。其次,尽管Oracle一直向开发人员保证它将持续支持MySQL的核心社区版本,但Oracle已经开始为其商业版本保留某些特性。

这给我们带来我们的首选,MariaDB的,通过基本上开发的MySQL之前,它被Sun收购,那么甲骨文相同的原始团队开发的开源产品。MariaDB的可以到处去逛逛MySQL能去,而甲骨文增加了新的封闭源代码的功能到MySQL,MariaDB的随之增加了一些相同的特征作为开源。还有的性能问题,并在我们的测试中,我们发现MariaDB的比所有其他人更好地履行只是一个档次。

我们的记分卡是PostgreSQL、Firebird和Apache Derby。以下是个人评论。

开源网络结果

微软的SQL Server Express 2012

SQL Server Express是微软旗舰数据库SQL Server的免费版本。针对较小规模和嵌入式应用程序,Microsoft SQL Server Express是一个功能丰富的产品,它提供了许多商业版本的核心功能,但在可伸缩性方面有一些限制。

具体来说,这些限制包括cpu(一个插槽最多有4个内核)、内存(使用1GB,服务器可以安装更多)和数据库大小(10GB)。在我们测试的六个产品中,这是唯一一个有任何有意义限制的产品,尽管对于许多小型到中型的组织来说,这应该不是一个问题。

对于SQL Server Express的安装程序会显示在那里你可以阅读发行说明安装中心,运行工具,例如配置检查,以确保您的服务器已安装的先决条件,并通过运行升级向导或执行安装的实际服务器全新安装。

在本文中,我们选择了后者。SQL Server的安装是出了名的耗时,SQL Server Express也不例外。在安装过程中有几个选择,例如安全模型的使用(我们选择了混合SQL和Windows模式)。

SQL Server Management Studio是一个全面的管理界面,它为管理员和程序员提供了管理服务器和数据库以及开发数据库商业智能(BI)所需的工具。对于开发人员来说,它还可以与其他工具集成,如Visual Studio和SQL Server Developer Studio。

插入多万条记录只花了一分钟,进行比较,插在SQL Server的标准版相同的数据花了大约45秒。检索第100,000条记录了使用SQL Server Express 10秒钟,三秒钟内标准版本。然而,当我们用较小的数据集时,我们发现Express版本进行几乎与标准版。例如,更新单个记录为使用我们的百万行的测试表比较了标准的第二再与快递只有分数。

安全特性包括基本审计和控制对数据和对象访问的用户定义角色。对SQL Server Express的支持可以通过微软开发人员网络和各种在线支持论坛和博客获得。

虽然SQL Server Express可能没有它的商业兄弟姐妹的所有特性——比如高可用性和集群,但它是一个成熟和可靠的数据库服务器,可以交付和执行大量数据库应用程序。对于那些喜欢用GUI来管理数据库的管理员来说,他们很难找到一个比微软提供的更好的管理界面;我们发现唯一接近的是来自PostgreSQL的pgAdmin。

MariaDB

MariaDB本质上是MySQL的二进制drop替代品,由与MySQL相同的开发人员Michael Widenius创建。MySQL的未来有些不确定,现在它归Oracle所有,有一大群社区开发人员希望维护一个包含所有功能的开源版本。MariaDB每个月都会与MySQL代码库进行合并,以确保Oracle发布的所有特性和bug修复都被添加到MariaDB的最新版本中,反之亦然。MariaDB是在GNU公共许可证下发布的,我们在Windows Server 2008 R2上安装了5.5版本。

我们使用HeidiSQL 7.0前端客户端连接MariaDB。这为您提供了一个用户界面,您可以从中执行各种任务,例如创建新的数据库、表和视图,以及以几种格式导入/导出数据。在设置了测试数据库和表之后,我们使用低优先级设置从CSV文件中加载了100多行,数据在不到一分钟的时间内就插入了。当使用select语句时,MariaDB在不到两秒的时间内返回了前100,000行。正如预期的那样,当处理较小的数据子集时,我们发现性能在可接受的范围内。我们能够在不到一秒的时间内删除和更新单行上的语句。

虽然我们的测试是不科学的,我们没有使用相同的测试数据对所有数据库服务器和整体,我们发现MariaDB的性能,各行(选择,删除和更新)工作时是一个档次快于MySQL的。

和MySQL一样,在MariaDB的安全性是通过访问控制列表访问所有对象和操作管理。此外,它包括可用于数据存储和检索,与SSL客户端和服务器之间的加密通信沿着几个加密功能。

至于支持,我们发现MariaDB的网站响应大多数问题。也有专门为MariaDB的商业支持和蒙蒂计划提供咨询沿着几个网上论坛。

有很多与MariaDB的喜欢;特别是,我们认识到,该公司包括其开源版本很多MySQL的商业版的封闭源代码的功能。这些特性之一是子查询,这并没有本质上的MySQL中很好地工作,和MariaDB的最终解决了这个而回。此外,当一个严重的安全漏洞在MySQL / MariaDB的今年早些时候发现,在MariaDB的社区找到了解决办法,并通知社区这个漏洞。

MySQL

MySQL是最流行的开源数据库之一。它是LAMP (Linux., Apache, MySQL, PHP)堆栈,以及大型组织,如维基百科,推特而Facebook则使用MySQL。MySQL最初是90年代中期在瑞典开发的,2008年卖给Sun, 2010年收购Sun后一直归Oracle所有。

MySQL漏洞允许攻击者绕过密码验证

关于Oracle对MySQL的意图有很多猜测。根据Oracle的最新消息,在可预见的未来,它将致力于支持和更新MySQL社区版的核心功能。考虑到Oracle目前庞大的安装基础,这显然是有意义的,因为这给了该公司一个独特的位置,以追加销售其一些商业产品,如Oracle Linux, Oracle VM,当然,它的商业版本的Oracle MySQL。然而,核心开源版本会包含多少新特性,又有多少保留给商业版本仍然是一个问题。

话虽这么说,自从收购Sun,Oracle在Windows上的MySQL方式运行的若干改进,它现在是一个真正的跨平台的数据库。我们安装的社区版,版本5.5.8,在Windows Server 2008 R2中的WAMP安装的一部分。我们决定同时使用phpMyAdmin的和HeidiSQL来管理我们的MySQL安装。也有可用的商业管理工具,如MySQL企业版。

在导入我们的测试数据之后,我们运行了基本测试,发现大多数测试的性能与MariaDB非常相似,正如预期的那样。在处理单个行时,我们发现MySQL比MariaDB稍微慢一些,即使表、数据、索引和硬件是相同的。Oracle刚刚发布了5.6版本的候选版本,这应该有一个改进的优化器和其他更新,将提高性能。值得注意的是,差异仅为百分之一秒。

MySQL的安全性是通过访问控制列表来管理的,用于访问所有对象和操作。它还支持在客户机和服务器之间进行加密通信的SSL,以及用于存储和检索加密数据的数据加密功能。MySQL的支持和文档可以从Oracle(免费的和付费的)和各种Web上的第三方来源获得,质量从粗略到优秀不等。

这是很难不喜欢的MySQL基于其易用性,性能和纯粹的普及。据甲骨文,九段在世界排名前10的网站的(我们假设根据流量)使用某种形式的MySQL数据库。许多提供LAMP和WAMP栈的商业托管服务已经建立了优秀的Web前端到MySQL,使其易于管理的网络解决方案的一部分。

PostgreSQL

PostgreSQL起源于20世纪80年代加州大学伯克利分校的Ingres项目,第一个版本于1995年发布。它是开源的,在PostgreSQL许可下发布。PostgreSQL本质上是一个RDBMS,但是它有一个面向对象的数据库模型(ORDBMS)。

我们在Windows Server 2008 R2上安装了PostgreSQL 9.2版本。安装非常简单,只有几个选项可用,如超级用户密码、侦听端口和本地化。一旦核心安装完成,你可以选择启动Stack Builder,它允许你下载和安装额外的应用程序、工具和驱动程序。

PostgreSQL包含一个名为pgAdmin的管理接口。与MS SQL Server Management Studio不同,pgAdmin具有一组健壮的特性,易于直观地导航。带有约束的数据库和测试表很容易创建。我们使用CSV导入功能在不到30秒的时间内导入了超过百万行的测试数据。检索100,000行只花了不到半秒的时间,处理单个行产生了良好的结果;选择、更新和删除表中的任意一行大约需要半秒钟。不如MariaDB和MySQL快,但肯定比我们观察到的SQL Server Express好。一个小麻烦是,如果字段名包含大写字符,则需要将其放在引号中。

PostgreSQL通过各种方式处理身份验证,从信任身份验证、Kerberos到LDAP。客户端和服务器之间的通信可以通过SSL加密,数据库本身也可以使用pgCrypto扩展进行加密。

除了大量的文档和FAQ,PostgreSQL有一个活跃的社区,可向用户提供支持。商业支持和主机是通过PostgreSQL的网站上列出的公司的一个长长的清单在全球上市。

在PostgreSQL的特性中,我们发现pgAdmin管理界面是最大的优点之一。PostgreSQL是一个功能丰富的数据库服务器,它作为一个可用的软件包包含在大多数主要的Linux发行版中。我们还发现PostgreSQL的性能几乎与MariaDB和MySQL相当。

Apache Derby

Apache Derby是来自Apache项目的一个开放源代码关系数据库。Apache Derby是用Java编写的,可以在任何Java虚拟机中运行,并且占用空间非常小(小于3MB),包括一个嵌入式JDBC驱动程序。它是在Apache许可版本2.0下发布的。

相关:
12 第1页
第1页共2页
工资调查:结果在