Comparison between file systems and databases this article compares common file systems and database technologies from the perspective of Single-host systems. There should be many omissions. Commonalities: both system software and underlying software are used to store and access data. Both have a long history of research and development, and have mature standards or specifications. This is beneficial
Comparison between file systems and databases this article compares common file systems and database technologies from the perspective of Single-host systems. There should be many omissions. Commonalities: both system software and underlying software are used to store and access data. Both have a long history of research and development, and have mature standards or specifications. This is beneficial
Comparison between file systems and databases this article compares common file systems and database technologies from the perspective of Single-host systems. There should be many omissions.
Commonalities:
The same system software or underlying software is used to store and access data. Both have a long history of research and development, and have mature standards or specifications. This is conducive to the development of portable programs, but also to the development of innovative systems, especially distributed systems. There are also many commonalities in implementation technology.
Most languages that use C/C ++ must ensure data consistency, for different levels of support transactions, concepts such as Block, Page, Allocation unit, and Extent are used. Concepts and algorithms such as Buffer cache, LRU, and Group commit must be IO optimized for various loads.
Differences:
The database has much stronger support for transactions. The file system can only ensure the consistency of metadata. The database can have different levels of consistency, and the database can have REDO and UNDO logs in the form of isolation levels, generally, a file system only uses the REDO database for a long time. The transaction of the file system is very short. The transaction of the database cannot be determined in advance. The transaction of the file system can be determined in advance, A database of a specific type is implemented in the user mode, and a file system is generally implemented in the kernel mode. Therefore, the former is easier to achieve cross-OS platform database access interface is usually not procedural S [this article from the Internet (http://www.68idc.cn)] QL language, the file system is the API. The mainstream standards for the two are SQL and POSIX databases that can detect deadlocks, while the file system needs to avoid deadlocks.
Contact points:
Database systems often rely on file systems as their underlying storage, some file system functions may also be implemented. file systems can optimize file systems for special applications such as databases and can be used as simple databases (such as VSAM ), the database can also expose NFS (such as Oracle) file systems and may use some simple database functions (such as using symbolic links as KV to implement simple DB functions, or directly use a small DBMS)