An improved synchronization system and method for copies of data in a computer
system. The computer system comprises a cluster, wherein each computer in the cluster
may store a local copy of a data set along with a validity flag for the local copy.
The computer system further comprises a coupling system which is connected to each
of the computers in the cluster through a coupling system interface program, wherein
the coupling system is configured to coordinate the data sharing and workload of
the cluster. The computer system also comprises an external data storage shared
by the computers in the cluster. One of the computers may read a first copy of
the data set from a primary data set on the external data storage. The computer
may then store the first copy locally and set a first validity flag to indicate
that the first copy is valid. Another computer, server, or application program
may make a second copy of the primary data set and set a second validity flag to
valid. If the first copy is modified, then the second validity flag is set to invalid.
The second copy may then be replaced with the modified copy, and the second validity
flag may be set to valid again. A coupling system interface program may comprise
an application programming interface for data synchronization, wherein the application
programming interface is accessible by a plurality of application programs.