Search In this Thesis
   Search In this Thesis  
العنوان
NoSQL database optimization /
المؤلف
El-Attally, Ayman El-Sayed Lotfy Hassan.
هيئة الاعداد
باحث / أيمن السيد لطفى حسن العطالى
مشرف / أحمد ابراهيم صالح
مشرف / هيثم عبدالمنعم الغريب
مناقش / مفرح محمد سالم
الموضوع
Database management. Big data. NoSQL.
تاريخ النشر
2015.
عدد الصفحات
131 p. :
اللغة
الإنجليزية
الدرجة
ماجستير
التخصص
هندسة النظم والتحكم
تاريخ الإجازة
01/01/2015
مكان الإجازة
جامعة المنصورة - كلية الهندسة - Computers and Systems Engineering Department
الفهرس
Only 14 pages are availabe for public view

from 129

from 129

Abstract

The main objective of this work is to keep the strengths of RDBMSs as consistency and ACID properties and at the same time providing the benefits that inspired the NoSQL movement. To achieve this a middle layer was built to be used between the user application and the NoSQL DB. This middle layer which we call it Consistency Middle Layer (CML) will add the consistency and ACID properties to the NoSQL DB. CML implements a new four phases commit protocol that guarantees the use of the most recent data. It also employees the pessimistic and optimistic locking techniques to forbid transactions from dealing with data while it is in use by another transaction. Moreover, CML keeps data updates in many locations to avoid the loss of data and disappointment. CML is required especially in distributed database applications that are based on NoSQL environment. This is because allowing conflicting transactions to continue not only wastes constrained computing power and decrease bandwidth but also exacerbates conflicts. This solution will help in increasing both of the system scalability and throughput. CML is composed of one or more identical Transaction Manager Component (TMC). TMC is composed of three functional layer which are scalability layer, transaction layer and data management layer. The scalability layer is responsible for providing scalability and make a load balance between TMCs in the CML. The transaction layer is responsible for executing transactions and manages the waiting transactions. The data management layer is responsible for migrating data between different TMCs and between the CML and the underlying NoSQL DB. TMC keeps tracking of all running transactions and interacts with other TMCs to manage the execution of concurrent transactions. Experimental results have shown that the throughput of the system improves by increasing the number of TMC in scenarios the amount of write to read in a transaction increases. Also, the data is consistent with executing many transactions related to each other’s through updating the same data. On the other hand, scalability and availability of the system are not affected while ensuring strict consistency.