A HIGH-THROUGHPUT ALGORITHM FOR MULTIVERSION CONCURRENCY CONTROL WITH GLOBALLY SYNCHRONIZED TIME
Throughput is preserved in a distributed system while maintaining concurrency by pushing a commit wait period to client commit paths and to future readers. As opposed to servers performing commit waits, the servers assign timestamps, which are used to ensure that causality is preserved. When a serve...
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Patent |
Sprache: | eng ; fre |
Schlagworte: | |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Throughput is preserved in a distributed system while maintaining concurrency by pushing a commit wait period to client commit paths and to future readers. As opposed to servers performing commit waits, the servers assign timestamps, which are used to ensure that causality is preserved. When a server executes a transaction that writes data to a distributed database, the server acquires a user-level lock, and assigns the transaction a timestamp equal to a current time plus an interval corresponding to bounds of uncertainty of clocks in the distributed system. After assigning the timestamp, the server releases the user-level lock. Any client devices, before performing a read of the written data, must wait until the assigned timestamp is in the past.
Le débit est préservé dans un système distribué tout en maintenant la simultanéité en poussant une période d'attente de validation vers des chemins de validation de client et vers de futurs lecteurs. Par opposition aux serveurs effectuant des attentes de validation, les serveurs attribuent des estampilles temporelles, qui sont utilisées pour garantir que la causalité soit préservée. Lorsqu'un serveur exécute une transaction qui écrit des données dans une base de données distribuée, le serveur acquiert un verrou de niveau d'utilisateur, et attribue à la transaction une estampille temporelle égale à un temps courant plus un intervalle correspondant à des limites d'incertitude d'horloges dans le système distribué. Après l'attribution de l'estampille temporelle, le serveur libère le verrou de niveau utilisateur. Tout dispositif client, avant d'effectuer une lecture des données écrites, doit attendre jusqu'à ce que l'estampille temporelle attribuée soit dans le passé. |
---|