Return to search

The optimization of Database queries by using a dynamic caching policy on the application side of a system

Det är viktigare än någonsin att optimera svarstiden för databasförfrågningardå internettrafiken ökar och storleken på data växer. IT-företag har också blivitmer medvetna om vikten av att snabbt leverera innehåll till slutanvändaren pågrund av hur långsammare svarstider kan påverka kvalitetsuppfattningen påen produkt/ett system. Detta kan i sin tur leda till en negativ påverkan på ettföretags intäkter.I det här arbetet utvecklar och implementerar vi en ny dynamisk cachelösningpå applikationssidan av systemet och testar den mot väletablerade cachestrategier. Vi undersökte kända cache-strategier och relaterad forskning somtar hänsyn till den aktuella databasbelastningen så som historisk frekvens fören specifik databasförfrågan och tillämpade detta i vår algoritm. Vi utveckladefrån detta en dynamisk cachepolicy som använder en logaritmisk beräkningsom involverar den historiska frekvensen tillsammans med endatabasförfrågans svarstid och beräknade en vikt för en viss databasförfrågan.Vikten ger sedan prioritet i förhållande till andra databasförfrågningar som ärcachade. Vi kan här påvisa en prestandahöjning på 11-12% mot LRU, enprestandahöjning på 15% mot FIFO och en väsentlig prestandahöjning mot attanvända databasen direkt med både MySQL-cache aktiverad och inaktiverad. / With IP traffic and data sets continuously growing together with IT companiesbecoming more and more dependent on large data sets, it is more importantthan ever to optimize the load time of queries. IT companies have also becomemore aware of the importance of delivering content quickly to the end userbecause of how slower response times can affect quality perception which inturn can have a negative impact on revenue.In this paper, we develop and implement a new dynamic cache managementsystem with the cache on the application side of the system and test it againstwell-established caching policies. By looking at known caching strategies andresearch that takes the current database load into account with attributes suchas a queries frequency and incorporating this into our algorithm, we developeda dynamic caching policy that utilizes a logarithmic calculation involvinghistorical query frequency together with query response time to calculate aweight for a specific query. The weight gives priority in relation to other queriesresiding within the cache, which shows a performance increase towards existingcaching policies. The results show that we have a 11-12 % performance increasetowards LRU, a 15 % performance increase towards FIFO and a substantialperformance increase towards using the database directly with both MySQLcaching enabled and disabled.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:mau-20296
Date January 2019
CreatorsGranbohm, Martin, Nordin, Marcus
PublisherMalmö universitet, Fakulteten för teknik och samhälle (TS), Malmö universitet, Fakulteten för teknik och samhälle (TS), Malmö universitet/Teknik och samhälle
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageSwedish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.0023 seconds