Three-Way Merging Algorithm for Structured Data
The general problem of multi-node systems is data synchronization, where the most used method uses synchronous data updating. All changes made by the user are immediately reflected in the data shared with other users. This also means that the user must be constantly connected using a computer network to the data source. As a result, each user always has instant access to up-to-date data. However, the trend in computer systems nowadays is more and more focused on mobility. For this reason, some systems are designed in such a way that it is not necessary or desirable for them to require constant network connectivity. In such systems with asynchronous data updating, it is significantly more complicated to keep the data up to date. The user has all the necessary data available locally on their computer and synchronizes it with the global state of the information system on demand. In this paper, we describe a novel algorithm that can merge data during asynchronous updates. The design of our algorithm gets inspiration from the diff3 algorithm. Since the diff3 algorithm is designed only for merging text files, we had to change it to enable data merging at the level of programming structures. The proposed algorithm has been verified and implemented in the IS ZONA information system developed by our department.
Authors
- Marek Tavač (ORCID: https://orcid.org/0000-0001-8636-3651)
- Matej Meško
- Patrik Hrkút (ORCID: https://orcid.org/0000-0002-8747-9194)
- Ján Janech (ORCID: https://orcid.org/0000-0001-9311-8638)
Institutions
- Illumina (United States) (US)
Publication Details
- Journal
- IEEE Access
- Published
- 2025-01-01
- DOI
- https://doi.org/10.1109/access.2025.3581684
- Primary Topic
- Data Management and Algorithms
- Type
- article
- Field-Weighted Citation Impact
- 0.00