Oracle,SQL Server,Microsoft Access,MySQL,DB2或PostgreSQL?目前市场上有各种各样的数据库产品,为您组织的基础架构选择一个平台是一个艰巨的项目。
定义您的要求
数据库管理系统(或DBMS)可以分为两类:桌面数据库和服务器数据库。一般而言,桌面数据库面向单用户应用程序并驻留在标准个人计算机上(因此称为术语 桌面 ).
服务器数据库包含确保数据可靠性和一致性的机制,并且面向多用户应用程序。这些数据库旨在在高性能服务器上运行,并带有相应更高的价格标签。
在深入研究并提交数据库解决方案之前,进行仔细的需求分析非常重要。当您最初计划购买昂贵的基于服务器的解决方案时,您经常会发现桌面数据库适合您的业务需求。您还可以发现需要部署可扩展的基于服务器的数据库的隐藏需求。
需求分析过程将特定于您的组织,但至少应回答以下问题:
- 谁将使用数据库以及他们将执行哪些任务?
- 数据修改的频率是多少?谁将进行这些修改?
- 谁将为数据库提供IT支持?
- 有哪些硬件?是否有购买额外硬件的预算?
- 谁将负责维护数据?
- 是否可以通过互联网提供数据访问?如果是这样,应该支持什么级别的访问?
一旦收集了这些问题的答案,您就可以开始评估特定数据库管理系统的过程。您可能会发现需要复杂的多用户服务器平台(如SQL Server或Oracle)来支持您的复杂需求。另一方面,像Microsoft Access这样的桌面数据库可能同样能够满足您的需求(并且更容易学习,以及在您的钱包上更温和。)
桌面数据库
桌面数据库为许多不太复杂的数据存储和操作要求提供了廉价,简单的解决方案。他们的名字来自于它们被设计为在“桌面”(或个人)计算机上运行的事实。您可能已经熟悉其中的一些产品 - Microsoft Access,FileMaker和OpenOffice / Libre Office Base(免费)是主要参与者。让我们来看看使用桌面数据库带来的一些好处:
- 桌面数据库很便宜。 您会发现大多数桌面解决方案的售价约为100美元(相比之下,基于服务器的同类产品的售价为数千美元)。实际上,如果您拥有Microsoft Office的副本,则您已经是Microsoft Access的许可所有者。
- 桌面数据库是用户友好的。 使用这些系统时不需要彻底了解SQL(尽管许多人确实支持SQL,因此你很聪明)。桌面DBMS通常提供易于导航的图形用户界面。
- 桌面数据库提供Web解决方案 许多现代桌面数据库都提供Web功能,使您能够以静态或动态方式在Web上发布数据。
服务器数据库
服务器数据库(如Microsoft SQL Server,Oracle,开源PostgreSQL和IBM DB2)使组织能够以一种允许许多用户同时访问和更新数据的方式有效地管理大量数据。如果您能够处理高昂的价格标签,基于服务器的数据库可以为您提供全面的数据管理解决方案。
通过使用基于服务器的系统实现的好处是多种多样的。让我们来看看取得的一些更显着的成果:
- 灵活性。 基于服务器的数据库可以处理您可以抛出的任何数据管理问题。开发人员喜欢这些系统,因为他们拥有程序员友好的应用程序编程接口(或API),可以快速开发面向数据库的自定义应用程序。 Oracle平台甚至可用于多个操作系统,为Linux爱好者提供与Microsoft人员配对时的公平竞争环境。
- 强大的性能。 基于服务器的数据库与您希望的一样强大。主要参与者能够有效地使用您能够为他们构建的任何合理的硬件平台。现代数据库可以管理多个高速处理器,集群服务器,高带宽连接和容错存储技术。
- 可扩展性。 该属性与前一个属性密切相关。如果您愿意提供必要的硬件资源,服务器数据库可以优雅地处理快速增长的用户和/或数据量。
NoSQL数据库替代品
随着组织越来越需要操纵大量复杂数据 - 其中一些没有传统结构 - “NoSQL”数据库变得越来越普遍。 NoSQL数据库不是在传统关系数据库的公共列/行设计上构建的,而是使用更灵活的数据模型。模型因数据库而异:有些按键/值对,图形或宽列组织数据。
如果您的组织需要处理大量数据,请考虑这种类型的数据库,这种数据库通常比某些RDBM更易于配置且更具可扩展性。顶级竞争者包括MongoDB,Cassandra,CouchDB和Redis。