Titel
Toekennen van isolatie levels aan database transacties (Onderzoek)
Abstract
Een transactie is een groep van operaties die op een databank worden uitgevoerd. De uitvoering van transacties wordt meestal geassocieerd met ACID eigenschappen, die garanderen dat ze atomair en in volledige afzondering van elkaar worden uitgevoerd. In de praktijk worden transacties gelijktijdig uitgevoerd maar met serialiseerbaarheid, dus op een manier dat het gecombineerd effect equivalent is met een sequentiële uitvoering van transacties in perfecte isolatie van elkaar. Voor programmeurs is deze volledige isolatie een gegeerde eigenschap omdat men dan enkel moet redeneren over de correctheid van individuele transacties. Het garanderen van serialiseerbaarheid komt met een hoge kost die meestal ongewenst is. Databanksystemen voorzien daarom in de mogelijkheid om isolatie garanties in te wisselen voor een verbeterde performantie via een variëteit aan zwakkere isolatie levels. Deze laten toe de doelbewuste keuze te maken om transactie doorstroom te verbeteren ten koste van een verhoogd risico op anomalieën. In dit project gaan we voor een radicaal nieuwe benadering waarin we niet langer de gebruiker belasten met de keuze van een geschikt isolatie level, maar een methodologie ontwikkelen die automatisch het meest geschikte isolatie level bepaalt voor een gegeven groep van transacties zonder risico op anomalieën. Onze benadering heeft het potentieel om de manier waarop concurrency control in databanksystem wordt geïmplementeerd fundamenteel te veranderen.
Periode
01 januari 2021 - 31 december 2024