我不是计算机科学或软件工程背景,但最近开始自学Python的Flask web开发。我现在正在学习“数据库”主题,并在互联网上进一步研究这个主题时,遇到了几个术语:数据库(database)、数据库管理系统(DBMS)、数据库引擎(database engine)和存储引擎(storage engine)。不同的互联网来源似乎对上述内容给出了不同的定义。
从互联网和Miguel Grinberg的Web开发书中,以下是我困惑的一些要点:
1. 在Miguel Grinberg的书中,作者似乎暗示数据库引擎= DBMS = MySQL、SQLite、Postgres等软件应用程序。 来源:Miguel Grinberg的书第53页,数据库章节
2. 在维基百科中,提到数据库引擎(或存储引擎,维基百科中提到的)是像InnoDB、MyISAM、Aria等软件应用程序。 链接:https://en.wikipedia.org/wiki/Database_engine 3. 在Quora上,一个评论者(Stephen Kinght)说DBMS和数据库引擎是两个不同的实体,其中数据库引擎仅是DBMS组件的一部分,负责管理数据库。 链接:https://www.quora.com/What-are-some-database-storage-engines 所以,基于以上三点,我心中的问题如下:
1. DBMS = 数据库引擎/存储引擎 = MySQL、SQLite、Postgres等软件应用程序吗?
或者
2. DBMS != 数据库引擎/存储引擎?(其中DBMS = MySQL、SQLite、Postgres,数据库引擎/存储引擎分别为InnoDB、Aria、MyISAM等)
我真的很感激如果有人能帮助澄清我的这些术语疑惑。我已经尝试在互联网上做了一些研究,并阅读了Stack Overflow上的帖子,但仍然无法真正理解这个概念。
谢谢!
从互联网和Miguel Grinberg的Web开发书中,以下是我困惑的一些要点:
1. 在Miguel Grinberg的书中,作者似乎暗示数据库引擎= DBMS = MySQL、SQLite、Postgres等软件应用程序。 来源:Miguel Grinberg的书第53页,数据库章节
2. 在维基百科中,提到数据库引擎(或存储引擎,维基百科中提到的)是像InnoDB、MyISAM、Aria等软件应用程序。 链接:https://en.wikipedia.org/wiki/Database_engine 3. 在Quora上,一个评论者(Stephen Kinght)说DBMS和数据库引擎是两个不同的实体,其中数据库引擎仅是DBMS组件的一部分,负责管理数据库。 链接:https://www.quora.com/What-are-some-database-storage-engines 所以,基于以上三点,我心中的问题如下:
1. DBMS = 数据库引擎/存储引擎 = MySQL、SQLite、Postgres等软件应用程序吗?
或者
2. DBMS != 数据库引擎/存储引擎?(其中DBMS = MySQL、SQLite、Postgres,数据库引擎/存储引擎分别为InnoDB、Aria、MyISAM等)
我真的很感激如果有人能帮助澄清我的这些术语疑惑。我已经尝试在互联网上做了一些研究,并阅读了Stack Overflow上的帖子,但仍然无法真正理解这个概念。
谢谢!