File server architecture for an open distributed document system
In this paper we will investigate design and implementation strategies for a file server in an open distributed document system. The aim of the open distributed document system is to provide and environment where a group of geographically distributed users can collaborate to develop documents efficiently and be assured that their integrity requirements will be enforced. We view the integrity policy as part of social contract between users. The services provided by a file server can be divided into two categories according to whether a service is globally or locally trusted. In this paper we call the entity that provides the globally trusted services 'visibility server', the remaining services are provided by 'validation servers'. The functions of the visibility server will be kept to a minimum, and can be running in an off-line manner. The responsibility of each validation server is to check whether the document integrity will still be maintained if an update transaction is committed. The validation servers are independent of each other and "stateless", i.e. each server can always reboot itself before it validates a transaction. An optimistic transaction con-currency control approach is employed for document processing, so that the open distributed document system can achieve very high document availability.