Return to search

Efficient caching of rich data sets / Effektiv caching av innehållsrik data

The importance of a smooth user experience in applications is increasing. To achieve more performance when interacting with resource intensive data it is important to implement an efficient caching method. The goal of this thesis is to investigate how to implement an efficient cache in an Android application. The use case is to download metadata and images of movies from a WebAPI provided by June AB. In order to investigate which caching method is the most efficient, a pre-study was done on some of the most common caching methods today. Based on the results of the pre-study, two different caching algorithms were tested and evaluated: First-In First-Out (FIFO) and Least Recently Used (LRU). These two algorithms were then implemented in an Android application. The resulting prototype has a responsive user interface capable of caching large amounts of data without noticeable performance loss compared to a non-cached version. The results from the prototype showed that LRU is the better strategy in our use case, however what we discovered was that the buffer size of the cache has the biggest impact on performance, not the cache eviction strategy. / Vikten av en snabb användarupplevelse ökar i nya applikationer. För att få ut mer prestanda när användare interagerar med resurstung data är det viktigt att implementera en effektiv cachingsmetod. Målet med arbetet är att undersöka hur man implementerar en effektiv cache i en Android-applikation. Användarfallet är att ladda ner metadata och bilder på filmer från ett WebAPI som tillhandahölls av June AB. För att undersöka vilken cachingsmetod som är effektivast gjordes en förstudie på några av de mest vanliga cachingsmetoderna idag. Baserat på förstudiens resultat valdes två cachingsalgoritmer för testning och utvärdering: First-In First-Out (FIFO) och Least Recently Used (LRU). Dessa två algoritmer implementerades i en Android-applikation Prototypen som gjordes har ett responsivt användargränsnitt som kan cacha stora mängder data utan märkbar prestandaförlust jämfört med en icke-cachad version. Prototypen visade att LRU är den bättre strategin för vårt användarfall, men upptäckte att bufferstorleken på cachen har den största påverkan av prestandan, inte cachestrategin.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-145765
Date January 2014
CreatorsHo, Henry, Odelberg, Axel
PublisherKTH, Data- och elektroteknik
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageEnglish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess
RelationTRITA-STH ; 2014:30

Page generated in 0.012 seconds