Design, implementation and performance study of reliable transactions in X.500 directory service
Replication of Directory information improves system performance and availability. This is provided in 1993 Standard through a shadowing mechanism. However, the standard specifies only weak consistency requirement. This is not satisfactory as some applications may require strong consistency with atomic (all-or-none) updates. This article describes the effort to incorporate the transaction function into the Directory in order to support the strong consistency requirement. An object-objected approach is used to design and implement the system. Appropriate object models for the DUA and the DSA are developed to include the transaction capability. The atomic update is ensured by the transaction manager, which controls and coordinates the distributed transaction and the CCR ASE, which tracks and transfers the atomic transaction messages on single transaction branch. This is assisted by a resource manager consisting of a local database with appropriate APIs and the underlying database manager which, ensures the ACID properties of the atomic updates. Performance evaluation of the system implemented indicates a transaction overhead of 31% for commit case and 14% for rollback case. The bottleneck areas include the local database access, the network processing overhead and the size of replicas. The overheads can be reduced by employing advanced hardware and software. Thus, the usefulness of transaction capability outweighs the overhead consideration. (C) 1999 Elsevier Science B.V. All rights reserved.
x.500 directory replication transaction processing directory shadowing