Client/Server vs. File-Served Databases - Firebird

File-sharing systems are another example of client/server systems. File servers and filesystem servers serve client requests for access to files and filesystems, sometimes in very sophisticated ways. NFS and the Windows Named Pipes and NetBEUI services are examples. The file server gives clients access to files that the client machine can read into its own memory and write to, as though it were performing I/O on its own local storage system.

A desktop-based data management system, lacking its own internal provisions to manage I/O requests from a network, is itself a client of the file server. When it receives I/O requests from its own clients, it depends on operating system controls to provide the central locking and queuing system necessary to manage conflicting requests.

These file-served DBMSs are not client/server database systems. Both the client and the DBMS software are clients to a file-sharing server. Although the flow of input and, often, output are to some extent managed by the DBMS program, physical data integrity is under the control of the filesystem services.

In a client/server database relationship, clients —even if located on the same machine as the server—never get closer to the physical data than sending messages to the server about what they want to do. The server processes the messages and executes the requests using its own code and, in advanced systems like Firebird, its own disk management and accounting system. The server program performs all of the physical changes to metadata and data storage structures within a physical on-disk structure that is independent of the host’s filesystem-level I/O layer and inaccessible to it.


All rights reserved © 2018 Wisdom IT Services India Pvt. Ltd DMCA.com Protection Status

Firebird Topics