DBMS与RDBMS有何不同?

时间:2014-06-13 13:35:06

标签: rdbms database

这是他们的不同之处,这就是我所理解的。

DBMS

将数据存储在文件中,计算机hard disk是DBMS,因为它将数据存储在磁盘中。并且没有表格和表之间的关系没有主键,没有外键。

用于simple small个应用程序。 Security并不关心。

RDBMS 

在表格之间的tableshas relationships中存储数据,可以normalization。 RDBMS是一个DBMS。 MS AccessSQL serverMYSQL是RDBMS。而RDBMS用于庞大的数据库。支持客户端服务器架构。

现在我需要澄清一下,

  1. DBMS示例是硬盘数据存储。 RDBMS是否适用于软件应用程序数据存储?

  2. 它说DBMS用于小型数据存储,RDBMS用于大数据存储。如果1.为真,则doesn't硬盘包含大量数据?

  3. 安全问题如何发布?为什么DBMS没有安全性以及RDBMS如何具有安全性?

  4. 因此我们可以使用MySQL,SQL Server等创建RDBMS。我们如何创建DBMS?

  5. 最后还有什么不同之处呢?

4 个答案:

答案 0 :(得分:5)

首先让我们在两个缩写中定义两个字母 DB 的含义:

数据库代表数据库 Wikipedia 的定义如下:

  

数据库是有组织的数据集合。数据通常是   组织以支持的方式模拟现实的相关方面   需要此信息的流程。例如,建模   以支持寻找酒店的方式提供酒店客房   空缺。

粗略地说,存储在计算机设备上的任何类型的数据都是数据库的一个组成部分。 数据库数据本身。它不会自行包含如何组织,检索,删除,操作等数据的信息,它只是存在于硬盘上。

这项工作由管理系统完成,实际上两个字母 MS 的含义是什么。该系统负责或对数据进行各种操作。再次维基百科说:

  

数据库管理系统(DBMS)是专门设计的软件   与用户,其他应用程序和应用程序交互的应用程序   数据库本身捕获和分析数据。通用DBMS是   一个软件系统,旨在允许定义,创建,   查询,更新和管理数据库。众所周知的DBMS   包括MySQL,MariaDB,PostgreSQL,SQLite,Microsoft SQL Server,   Microsoft Access,Oracle,SAP HANA,dBASE,FoxPro,IBM DB2,   LibreOffice Base,FileMaker Pro和InterSystemsCaché。

让我们来看看你提到的观点。

  1. 我假设您在数据库中引用数据的组织方式。 DBMS 是一个通用术语,这意味着该术语本身不包含有关如何准确存储数据的信息。可能的选项是使用关系表(表,包含属性并且彼此之间有大致相互关系),文件,图形,键值对等。 RDBMS DBMS 使用关系表来存储数据。非关系 DBMS 的示例是文件系统或 NoSQL

  2. 在这种情况下取​​决于,这个结论通常是错误的。由 DBMS 的具体实现决定了它如何与数据一起运行。一般来说,这取决于用例。

  3. 再次非常具体的主题。具有内部组织的 DBMS 会将文件保留在内存中,这意味着可以轻松检索其内容, RDBMS 将始终需要具体的系统知识才能提取内容。这并不意味着,每个 DBMS (不使用关系表作为数据存储)将没有结构的内部组织,因此没有0级安全性。每个特定的 DBMS 都有自己的方法来克服可能存在的安全问题。

  4. MySQL SQL Server RDBMS 因此 DBMS 本身。他们组织数据的方式是使用关系模型。还有其他机会,例如 NoSQL ,以不同的方式存储数据。

  5. 您几乎涵盖了所有基本要点。 绩效衡量也可以包括在内,但它又是主观主题。还有一些其他方面,特别是 DBMS ,如并发管理复杂性等。

答案 1 :(得分:2)

希望以下答案可能有所帮助。

  1. 对于DBMS,您可以说它是硬盘数据存储。数据存储在平面文件中。表之间没有关系。关系以编程方式维护,但不是由数据库本身维护。
  2. 不,DBMS和RDBMS都用于存储小数据或大数据。例如,大型机具有非关系数据(大量数据),并且仍在用作遗留系统。
  3. DBMS(基本上是非关系数据)只是存储在平面文件中。如果您有权访问文件系统,很容易掌握它们并传输它们。 RDBMS,即使有些人使用文件,从文件中读取数据也有点微不足道。并且需要对系统有绝对的知识来转换数据,你应该再次访问DBMS和RDBMS处于同一高级别的文件系统。
  4. DBMS目前作为遗留系统使用。 COBOL也许可以创建DBMS。
  5. 你基本上涵盖了一切。 :d

答案 2 :(得分:0)

1.DBMS应用程序将数据存储为文件。在DBMS中,数据通常以分层形式或导航形式存储。 DBMS旨在用于小型组织和处理小数据。它支持单个用户。 示例:-file systems,xml等。

2.RDBMS应用程序以表格形式存储数据。在RDBMS中,表具有称为主键的标识符,数据值以表的形式存储。 RDBMS旨在处理大量数据。它支持多个用户。 示例:-mysql,postgre,sql server,oracle,Mango DB等。

3.每个RDBMS都是一个DBMS,但事实恰恰相反:RDBMS是一个基于关系模型的DBMS,但不是每个DBMS都必须是关系型的。

4.但是,由于RDBMS最常见,有时术语DBMS用于表示不是关系的DBMS。这取决于具体情况。

答案 3 :(得分:0)

关于RDBMS的3个最重要的概念是:

  • 语义学
  • 逻辑
  • 交易

语义:表示数据不是通过“硬件”方法(例如“某些字节等于其他字节”)来检索,而是通过“信息等于信息”这一事实来进行编码,无论编码是什么< / p>

逻辑:RDBMS功能基于称为“关系代数”的理论数学方法,该理论由Franck Edgar Cood在1970年发表的名为“大型数据的关系模型”的论文中建立。共享数据库”,并且自1970年以来始终致力于这一概念(50年!!!)

交易:数据集操作曾经是原子的,这意味着一个操作可以处理非常大量的数据,并且最终必须执行符合数据库内部规则的所有转换,或回到起点。

某些DBMS假装是关系型的……。 MySQL和PostgreSQL就是这种情况!

1985年,科德(Codd)看到许多产品都是假冒产品,但它们与关系概念无关。因此,他在《计算机科学》杂志上发表了两篇论文,名为: -您的DBMS是否真的与人有关? -您的DBMS是否按规则运行? 在第二篇论文中,阐述了12条codd规则,以了解产品之间的关系。

其中一个规则是第7条规则,它谈论基于集合的操作。 为了说明此规则,我在工科学校的课程中给出了以下示例:

CREATE TABLE T (C INT UNIQUE);
INSERT INTO T VALUES (1), (2), (3);
UPDATE T SET C = C + 1;

最后一个查询绝不能失败,因为所有值(1、2、3)都会同时更新,因此与UNIQUE约束没有冲突。

PostgreSQL和MySQL(以及其他一些)在执行最后一个查询时失败,因为它们在迭代过程中运行,而这并不是操作数据集的私密方式……

此查询已在Oracle,SQL Server,DB2或Sybase等主要RDBMS上正确执行。