Multi-Master Database Replication and E-Learning
Total Page:16
File Type:pdf, Size:1020Kb
EXAMENSARBETE I KOMMUNIKATIONSSYSTEM 120 HP, AVANCERAD NIVÅ STOCKHOLM, SVERIGE 2015 Multi-Master Database Replication and e-Learning THEORETICAL AND PRACTICAL EVALUATION MATTIAS HOLMGREN KTH KUNGLIGA TEKNISKA HÖGSKOLAN SKOLAN FÖR INFORMATIONS- OCH KOMMUNIKATIONSTEKNIK Multi-Master Database Replication and e-Learning – Theoretical and Practical Evaluation Mattias Holmgren KTH School of Information and Communication Technology (ICT) Stockholm, Sweden Supervisor: Björn Pehrson Examiner: Markus Hidell Abstract This research has investigated the possibility to combine multi-master database replication technolo- gies together with a LEMP-stack on tiny servers to increase the availability of e-Learning services in remote areas in Tanzania. The aim was to evaluate the combination of Symmetric DS for multi mas- ter database replication and conflict detection and resolution with the e-learning system Moodle. This was done by conducting a literature study of relevant technologies followed by implementation and configuration at the location. The conclusion was that the technologies, software and hardware chosen for the project were configurable in theory but not viable to implement and maintain in prac- tice. Keywords: Database replication, eLearning, Collision detection and resolution, Moodle, Open Uni- versity of Tanzania i Sammanfattning Detta examensarbete har undersökt möjligheterna att kombinera multi-master databasreplikerings- tekniker tillsammans med en LEMP-stack på små servrar för att öka tillgängligheten av e-Learning tjänster i avlägsna områden i Tanzania. Målet var att utvärdera kombinationen av Symmetric DS för databas synkronisering och kollitionsdetektering och resolution med e-Learning systemet Moodle. Detta gjordes genom att en litteraturstudie genomfördes och uppföjdes av implementation och konfiguration på plats i Tanzania. Slutsatsen var att de för projektet utvalda teknologierna, mjukvaran och hårdvaran var konfigurerbar i teorin men ohållbart kostsam att implementera i praktiken. Nyckelord: Databasreplikering, eLearning, Kollisionsdetektering och lösning, Moodle, Open University of Tanzania ii This study has been carried out within the framework of the Minor Field Studies Scholarship Programme, MFS, which is funded by the Swedish Inter- national Development Cooperation Agency, Sida. The MFS Scholarship Programme offers Swedish university students an oppor- tunity to carry out two months’ field work, usually the student’s final degree project, in a country in Africa, Asia or Latin America. The results of the work are presented in an MFS report which is also the student’s Bachelor or Master of Science Thesis. Minor Field Studies are primarily conducted within subject areas of importance from a development perspective and in a country where Swedish international cooperation is ongoing. The main purpose of the MFS Programme is to enhance Swedish university students’ knowledge and understanding of these countries and their problems and opportunities. MFS should provide the student with initial experience of conditions in such a country. The overall goals are to widen the Swedish human resources cadre for engagement in international development cooperation as well as to promote scientific exchange between unversities, research institutes and similar authorities as well as NGOs in developing countries and in Sweden. The International Relations Office at KTH the Royal Institute of Technology, Stockholm, Sweden, administers the MFS Program within engineering and applied natural sciences. Erika Svensson Programme Officer MFS Programme, KTH International Relations Office KTH, SE-100 44 Stockholm. Phone: +46 8 790 6561. Fax: +46 8 790 8192. E-mail: [email protected] www.kth.se/student/utlandsstudier/examensarbete/mfs iii Acknowledgements The conduction of this Master Thesis has been a journey dependent on the effort of many people encountered along the way. It cannot be emphasized enough how grateful I am for the support from every stakeholder involved in this project. Firstly I wish to express my sincere thanks to Björn Pehrson, supervisor of this project, for his guid- ance and valuable insights both regarding ICT and projects in developing countries. Furthermore I would like to thank Jiannan Gou, my predecessor in this project, for knowledge sharing through the handover period as well as valuable support through the project. I would also like to give my thanks to Erika Svensson and SIDA for allowing me the possibility to con- duct this thesis as a Minor Fields Study. Next, my gratitude goes to Open University of Tanzania and Maria Augusti, my supervisor at OUT, for providing me with office space, internet connection and contact information to key people as well as all kind of practical support needed throughout the project. I am also grateful to Joseph Elia Sumbe, network administrator at OUT, for sharing expertise, and guidance and encouragement extended to me. My sincere thanks also go to Matu Rege, it-technician at TTCL in Musoma, for dedicating his time both on and off work hours to help this project. Finally I would like to thank Markus Hidell, examiner of this thesis, for providing feedback on the academic quality of the report. Mattias Holmgren iv Table of Contents Abstract .................................................................................................................................................... i Sammanfattning .......................................................................................................................................ii Acknowledgements ................................................................................................................................. iv List of Abbreviations and Acronyms ........................................................................................................ ix List of Figures ............................................................................................................................................ x List of Tables ............................................................................................................................................ xi 1 Introduction ..................................................................................................................................... 1 1.1 Background .............................................................................................................................. 1 1.2 Problem identification ............................................................................................................. 1 1.3 Goal and purpose .................................................................................................................... 2 1.4 Research question ................................................................................................................... 2 1.5 Methodology ........................................................................................................................... 2 1.6 Expected contribution ............................................................................................................. 2 1.7 Ethics and sustainable development ....................................................................................... 3 1.8 Outline of the thesis ................................................................................................................ 3 2 Background ...................................................................................................................................... 4 2.1 Synchronization technologies ................................................................................................. 4 2.1.1 Content delivery network. ............................................................................................... 4 2.1.2 Web cache proxy ............................................................................................................. 4 2.1.3 Page generation on Edge Server ..................................................................................... 5 2.1.4 Multi-Master database synchronization ......................................................................... 5 2.2 Convergence of replicated data and Concurrency Control ..................................................... 5 2.3 Operational Transformation .................................................................................................... 6 2.4 Combining technologies .......................................................................................................... 7 2.5 Theory behind Operational Transformation ........................................................................... 8 2.5.1 The Model ........................................................................................................................ 8 2.5.2 The Basic Idea .................................................................................................................. 9 2.5.3 Integration algorithms..................................................................................................... 9 2.5.4 The Transformation Matrix ............................................................................................. 9 2.5.5 The Algorithm ................................................................................................................ 11 2.6 LEMP stack ............................................................................................................................. 12 2.7 Open University of Tanzania