چكيده به لاتين
Abstract:
Database is one of the most important application programs. In multi-layer architecture of most great software projects, the database layer is the bottle-neck of the system and the main factor in performance reduction. Also, in the past few years, using the virtualized technologies has been raised incredibly due to numerous benefits they bring about. Using virtualization mostly results in performance reduction of application programs. Therefore using databases in virtualized environments is a big challenge.
In this thesis, database is considered as an application program in both native and virtualized environments. Databases, from the relational aspect, are divided in two categories: SQL and NoSQL. Also, based on the location in which they store the information, databases are categorized as in-disk databases and in-memory databases. All of the databases used in this work, are SQL databases. Besides, the Xen hypervisor is used for the virtualized environment. This hypervisor has extensively gained attention in IT and computer science researches, due to being open-source.
In this research, for evaluating the performance of SQL databases, in-disk and in-memory SQL databases have been compared to each other in virtualized and native environments. Experiments show that the performance of in-disk SQL databases in native environments is better than their performance in virtualized environments. On the other hand, in-memory SQL databases would not face much performance reduction. Finally the factors which could affect the performance of in-memory SQL databases are investigated.
Keywords: Virtualization, Performance Evaluation, Profiling, Database, Hypervisor, Xen