Coda (file system)

Coda is a distributed file system on a network of stationary and mobile computers. Several computers can work with the file system, the contents are usually distributed on multiple servers in order to increase the availability of the system. The server automatically the same content from one another.

Each client has on its local disk cache with frequently used files. At a connection interrupt it uses the data from its cache. Once again used to establish a connection to a server, the data is automatically synchronized. Must be manually engaged only in conflicts.

Because of resource constraints of mobile systems only a small part of the entire file system can optionally be stored in the cache.

Coda is created in a 1987 started at Carnegie Mellon University in Pittsburgh, USA research project. Coda is still described by the developers as experimental and not recommended for a production environment with many inexperienced users. Compared to the Andrew File System, which is used by large organizations, but it is much easier to install because the components for encryption and authentication are available fully in the installation packages and are largely configured automatically. This makes it for example interesting for use with mobile devices such as laptops.

Data consistency

When multiple clients access the same resources can lead to inconsistencies. Therefore, the access is to download only to a client in other systems often. Due to the mobility of the participants but it can lead to deadlocks, ie, locks on a resource by a subscriber are not canceled because the link goes down.

Coda therefore foregoes process of elimination, and allow all clients access. When you change a log (replay log) on the amendment is written. Then it is up to the users themselves to resolve occurring conflicts.

Terms

Confines

Coda is an ideal file system in which the currently required files are available everywhere and at the same time protected from loss and synchronized with each other, still far away ( even if it is compared with other file systems, which probably comes closest ). Reasons for this include:

  • Write speed: The write speed on Coda file systems is much slower than on local file systems only. ( By a factor of 60 slower when deleting, by a factor of 20 slower to generate - file. ) (More here)
  • Lack of support for very large files, Take a Coda client to a file, then it has to be fully determined. For large files (such as DVD images ), this means that, for example, be the local cache of the client must be at least 5 GB.
  • Lack of support for permanent open files: Files that are "persistent " if they were closed again, not before, for example, using the flush command. This means that changes to a database or log file entries are not preserved, the Coda client should not even be shut down properly (eg power failure or dead battery ). This contradicts the usual UNIX-like semantics that data written to reach sooner or later without further action by the application to persistent storage ( the disk).
195837
de