什么是文件系统?
文件管理系统是一个 DBMS,允许一次访问单个文件或表。在文件系统中,数据直接存储在文件集中。它包含与其他文件无关的平面文件(当只有一个表存储在单个文件中时,该文件称为平面文件)。
什么是数据库管理系统?
数据库管理系统 (DBMS) 是一种应用软件,它允许用户有效地定义、创建、维护和共享数据库。定义数据库涉及指定要存储在数据库中的数据的数据类型、结构和约束。创建数据库涉及将数据存储在由 DBMS 控制的某些存储介质上。维护数据库涉及在需要时更新数据库以发展和反映迷你世界中的变化,并为每个变化生成报告。共享数据库涉及允许多个用户访问数据库。 DBMS 还充当数据库和最终用户或应用程序之间的接口。它提供对数据的控制访问,并通过对数据定义规则来确保数据的一致性和正确性。
应用程序通过向 DBMS 发送查询或数据请求来访问数据库。查询会导致从数据库中检索一些数据。
DBMS 相对于文件系统的优势:
- 数据冗余和不一致——
冗余是数据重复的概念,即每个数据可能有多个副本。文件系统无法控制数据冗余,因为每个用户都定义和维护运行特定应用程序所需的文件。可能存在两个用户为不同应用程序维护相同文件数据的可能性。因此,一个用户所做的更改不会反映在第二个用户使用的文件中,从而导致数据不一致。而 DBMS 通过维护一个定义一次并被许多用户访问的数据存储库来控制冗余。由于没有冗余或冗余较少,数据保持一致。 - 数据共享——
文件系统不允许共享数据或共享过于复杂。而在 DBMS 中,由于集中式系统,可以轻松共享数据。 - 数据并发——
并发访问数据意味着多个用户同时访问相同的数据。当一位用户所做的更改由于其他用户所做的更改而丢失时,就会发生异常。文件系统不提供任何程序来阻止异常。而 DBMS 提供了一个锁定系统来阻止异常的发生。 - 数据搜索——
对于在文件系统上执行的每个搜索操作,必须编写不同的应用程序。而 DBMS 提供了内置的搜索操作。用户只需编写一个小查询即可从数据库中检索数据。 - 数据的完整性 –
在将数据插入数据库之前,可能存在需要对数据应用一些约束的情况。文件系统不提供任何程序来自动检查这些约束。而 DBMS 通过自行对数据实施用户定义的约束来维护数据完整性。 - 系统崩溃——
在某些情况下,系统可能会因各种原因而崩溃。这是文件系统的祸根,因为一旦系统崩溃,丢失的数据将无法恢复。 DBMS 将具有检索数据的恢复管理器,使其成为优于文件系统的另一个优势。 - 数据安全 –
文件系统提供了一种密码机制来保护数据库,但是密码可以保护多久呢?没有人能保证。这不会发生在 DBMS 的情况下。 DBMS 具有有助于为其数据提供屏蔽的专门功能。
DBMS 不时地不断发展。它是数据存储和保护的强大工具。在未来几年,我们将见证基于人工智能的 DBMS 来检索古代数据库。