我应该使用关系数据库还是无sql数据库?

时间:2013-05-01 01:21:39

标签: sql database oracle nosql relational

我正在研究我的学习项目,这是一个工作网站。我是新手,所以不确定我应该使用关系数据库还是非关系数据库。另外我没有使用no-sql数据库的经验,所以我很难做出决定。

我想要的一些功能是:

  • 按位置/邮政编码和技术搜索
  • 按作业名称搜索

目前我没有大数据,但应用程序应该是可扩展的。

2 个答案:

答案 0 :(得分:2)

如果您的应用程序可扩展,那么RDBMS是最佳选择: 下面我将介绍RDBMS的一些优点以及我从http://wiki.answers.com/Q/Advantage_of_RDBMS

中获取的参考资料
  1. 数据结构: 表格格式简单易用,供数据库用户理解和使用。 RDBMS使用自然结构和数据组织提供数据访问。数据库查询可以在任何列中搜索匹配的条目。

  2. 多用户访问: RDBMS允许多个数据库用户同时访问数据库。内置锁定和事务管理功能允许用户在更改数据时访问数据,防止两个用户更新数据之间的冲突,并防止用户访问部分更新的记录。

  3. 权限: RDBMS中的授权和权限控制功能允许数据库管理员限制对授权用户的访问,并根据他们需要执行的数据库任务类型向单个用户授予权限。可以根据远程客户端IP地址结合用户授权定义授权,从而限制对特定外部计算机系统的访问。

  4. 网络访问: RDBMS通过服务器守护程序提供对数据库的访问,服务器守护程序是一种专门的软件程序,用于侦听网络上的请求,并允许数据库客户端连接并使用数据库。用户无需登录物理计算机系统即可使用数据库,为用户提供了便利,并为数据库提供了一层安全保障。网络访问允许开发人员构建桌面工具和Web应用程序以与数据库进行交互。

  5. 速度: 关系数据库模型不是最快的数据结构。 RDBMS的优点,例如简单性,使得较慢的速度成为公平的权衡。内置于RDBMS中的优化以及数据库的设计可提高性能,使RDBMS的执行速度远远超过大多数应用程序和数据集。技术的改进,处理器速度的提高以及内存和存储成本的降低使系统管理员能够构建能够克服任何数据库性能缺陷的极其快速的系统。

  6. 维护: RDBMS具有维护实用程序,可为数据库管理员提供工具,以便轻松维护,测试,修复和备份系​​统中的数据库。许多功能可以使用RDBMS中的内置自动化或操作系统上提供的自动化工具进行自动化。

  7. 语言: RDBMS支持称为“结构化查询语言”(SQL)的通用语言。 SQL语法很简单,语言使用标准的英语语言关键词和短语,使其非常直观且易于学习。许多RDBMS将非SQL,特定于数据库的关键字,函数和功能添加到SQL语言中。

答案 1 :(得分:1)

对于学习项目,毫无疑问,您必须首先使用经典的RDBMS,并学习SQL。