PERFORMANCE MEASUREMENT OF DATA STORAGE ON ANDROID PLATFORM
As the number of smartphones and mobile applications are growing, a new field of computer engineering arose. A lot of people can reach these devices, and the development of the mobile internet increases the expansion of these applications. This has created one of the most dynamically expanding markets, and more and more companies and developers are working on developing these applications. According to Gartner, a market researcher company, the growth of this market might be over 1000 percent between 2010 and 2014. The complexity of the applications is also growing, and they are used in new areas, which bring new challenges to the technologies used in these applications. No matter how different they are, they have a common problem to solve. Every application has to store data.
The need to store data is as old as software technology, and the research of it is one of the oldest fields of computer science. The developments on the data storage field continue to live in the mobile devices. The relational database, the XML, and the binary serialization can also be found in today’s smartphone platforms. However, as new areas of usage emerge, they face new challenges. The weak hardware specifications, the battery life are all problems to be solved. My task is to measure the performance of these data storage solutions, with strong emphasis on user experience, which has become one of the most important metric on the mobile market.
I executed the tests on Android platform. Android is the leading mobile platform, with over 600000 daily activations. The number of users is over 200.000.000 and growing. I examined the three available data storage on this platform, SQLite, XML, and the binary serialization. The aim of the tests is to get experience that can be used in real world solutions, and to investigate the pros and cons of these technologies. I implemented these data storage solutions in a cocktail recipe application. During the development, I had the chance to get the knowledge of what are the advantages and disadvantages of each technology. I also had the opportunity to examine their impact on user experience.