Oracle,SQL Server,Microsoft Access,MySQL,DB2或PostgreSQL?当今市场上有很多数据库产品,为您的组织的基础架构选择一个令人生畏的项目。
定义您的要求
数据库管理系统(或DBMS)可以分为两类:桌面数据库和服务器数据库。
桌面数据库针对单用户应用程序,并驻留在标准的个人计算机上(因此桌面)。
服务器数据库包含了确保数据的可靠性和一致性的机制,并适合多用户应用程序。这些数据库旨在在高性能服务器上运行,并带有相应更高的价格标签。
在提交数据库解决方案之前,需要进行仔细的需求分析。需求分析过程将针对您的组织,但至少应回答以下问题:
- 谁将使用数据库,他们将执行什么任务?
- 数据将多久修改一次?谁将进行这些修改?
- 谁将为数据库提供支持?
- 有什么硬件可用?购买其他硬件有预算吗?
- 谁将负责维护数据?
- 会通过互联网提供数据访问吗?如果是这样,应该支持哪个级别的访问?
收集到这些问题的答案后,您将准备开始评估特定数据库管理系统的过程。您可能会发现,必须使用复杂的多用户服务器平台(例如SQL Server或Oracle)来支持您的复杂要求。另一方面,诸如Microsoft Access之类的桌面数据库可能同样能够满足您的需求(并且在您的皮夹上更容易学习,并且更柔和。)
桌面数据库
桌面数据库为许多不太复杂的数据存储和操纵要求提供了便宜,简单的解决方案。他们赢得了自己的名字,因为它们旨在在“台式机”(或个人)计算机上运行。您可能已经熟悉了其中一些产品 - Microsoft Access,Filemaker和OpenOffice/Libre Office Base(Free)是主要参与者。让我们研究使用桌面数据库获得的一些好处:
- 桌面数据库便宜。大多数桌面解决方案的价格均约为100美元(相比之下,其基于服务器的表亲为数千美元)。如果您拥有Microsoft Office的副本,则可能已经是Microsoft Access的许可所有者。
- 桌面数据库对用户友好。使用这些系统时,不需要对SQL有透彻的理解(尽管许多人确实为您提供了SQL,而在那里为您提供了SQL)。桌面DBMS通常提供易于播放的图形用户界面。
- 桌面数据库提供Web解决方案。许多现代台式机数据库都提供Web功能,使您能够静态或动态地在Web上发布数据。
服务器数据库
服务器数据库, 如Microsoft SQL Server,Oracle,开源PostgreSQL和IBM DB2,为组织提供了有效管理大量数据的能力,以使许多用户能够同时访问和更新数据。如果您能够处理高价标签,则基于服务器的数据库可以为您提供全面的数据管理解决方案。
通过使用基于服务器的系统获得的好处是多种多样的。让我们看一下获得的一些更突出的收益:
- 灵活性。基于服务器的数据库几乎可以处理您可以提出的任何数据管理问题。开发人员喜欢这些系统,因为他们具有适合程序员的应用程序程序器界面(或API),可快速开发面向数据库的自定义应用程序。Oracle平台甚至适用于多个操作系统,当与Microsoft Folks配对时,为Linux Junkies提供了一个水平的竞争环境。
- 强大的性能。基于服务器的数据库与您想要的功能一样强大。主要参与者可以有效地使用您可以为他们构建的任何合理的硬件平台。现代数据库可以管理多个高速处理器,群集服务器,高带宽连接和容忍故障的存储技术。
- 可伸缩性。此属性与上一个属性并驾齐驱。如果您愿意提供必要的硬件资源,服务器数据库可以优雅地处理大量的用户和/或数据。
NOSQL数据库替代方案
随着组织对操纵大量复杂数据的需求日益增长(其中一些没有传统的结构),“ NOSQL”数据库变得更加普遍。NOSQL数据库不是在传统关系数据库的通用列/行设计上构造的,而是使用更灵活的数据模型。该模型取决于数据库:一些通过键/值对,图形或宽列组织数据。
如果您的组织需要处理大量数据,请考虑这种类型的数据库,该数据库通常比某些RDBMS更容易配置,并且更可扩展。顶级竞争者包括Mongodb,Cassandra,Couchdb和Redis。