A Study on Real-Time Database Technology and Its Applications
Total Page:16
File Type:pdf, Size:1020Kb
Eastern Illinois University The Keep Masters Theses Student Theses & Publications Summer 2020 A Study on Real-Time Database Technology and Its Applications Geethmi Nimantha Dissanayake Eastern Illinois University Follow this and additional works at: https://thekeep.eiu.edu/theses Part of the Databases and Information Systems Commons, and the Data Science Commons Recommended Citation Dissanayake, Geethmi Nimantha, "A Study on Real-Time Database Technology and Its Applications" (2020). Masters Theses. 4822. https://thekeep.eiu.edu/theses/4822 This Dissertation/Thesis is brought to you for free and open access by the Student Theses & Publications at The Keep. It has been accepted for inclusion in Masters Theses by an authorized administrator of The Keep. For more information, please contact [email protected]. A STUDY ON REAL-TIME DATABASE TECHNOLOGY AND ITS APPLICATIONS A Study on Real-Time Database Technology and Its Applications Geethmi Nimantha Dissanayake Eastern Illinois University Dr. Peter Ping Liu Dr. Jerry Cloward Dr. Wutthigrai Boonsuk A STUDY ON REAL-TIME DATABASE TECHNOLOGY AND ITS APPLICATIONS Table of Contents 1.Introduction..............................................................................................................................6 1.1 Purpose .........................................................................................................................7 1.2 Statement of Problem ....................................................................................................8 1.3 Limitation .....................................................................................................................9 1.4 Delimitation ..................................................................................................................9 2. Literature Review .................................................................................................................. 11 2.1 Evolution of real-time databases.................................................................................. 11 2.2 Early misconceptions about real-time databases .......................................................... 12 2.3 Types of Storage Models in Real-time Databases ........................................................ 13 2.4 Performance Evaluation of Real-Time Databases ........................................................ 18 2.5 Trending Usage and Popularity of Real-time databases ............................................... 21 2.6 Ridesharing concept .................................................................................................... 25 3. Research Methodology .......................................................................................................... 30 3.1 System Setup .............................................................................................................. 30 3.2 Design of the Study ..................................................................................................... 30 3.2.1 Feature comparison .............................................................................................. 31 3.2.2 Case Study ........................................................................................................... 33 3.2.3 Ride share application .......................................................................................... 33 4. Feature Comparison .............................................................................................................. 35 A STUDY ON REAL-TIME DATABASE TECHNOLOGY AND ITS APPLICATIONS 4.1 Google Firebase : A key-value based store .................................................................. 35 4.2 MongoDB : A document-based store........................................................................... 37 4.3 Cassandra: A column-based store ................................................................................ 39 4.4 Orient DB : A graph based store .................................................................................. 41 5. Case Study ............................................................................................................................ 42 6. Results and Discussion .......................................................................................................... 50 7. Conclusion ............................................................................................................................ 60 8. Future Work .......................................................................................................................... 61 References ................................................................................................................................ 63 A STUDY ON REAL-TIME DATABASE TECHNOLOGY AND ITS APPLICATIONS Table of figures Figure 1. Illustration of a key-value model ................................................................................ 14 Figure 2. Illustration of a document based database model ........................................................ 15 Figure 3. Illustration of a document (column-based?) database model ...................................... 17 Figure 4. Illustration of a graph database model ........................................................................ 18 Figure 5.Proposed database comparison framework (Kumar, Srividya, & Mohanavalli 2017) ... 20 Figure 6. Most important metrics tracked for database performance (2019) ............................... 21 Figure 7. Most popular databases (2019) ................................................................................... 22 Figure 8. Database engines ranking (2019) ................................................................................ 23 Figure 9. SQL & NoSQL Multiple Database Combinations (2019) ........................................... 24 Figure 10. Most popular multiple database type combinations (2019) ........................................ 25 Figure 11: Ridesharing patterns (Furuhata, et al.,2013) .............................................................. 27 Figure 12: Ride hailing popularity (Iqbal, 2020) ........................................................................ 28 Figure 13. Uber’s hypergrowth (Brickell, 2019) ........................................................................ 29 Figure 14: Key-value structure .................................................................................................. 35 Figure 15: Key-value example ................................................................................................... 35 Figure 16: Document based store .............................................................................................. 37 Figure 17: MongoDB example .................................................................................................. 38 Figure 18: Column based model ................................................................................................ 39 Figure 19:Cassandra example .................................................................................................... 40 Figure 20: Ridesharing .............................................................................................................. 42 Figure 21: Rideshare flow ......................................................................................................... 43 Figure 22: ER model for the ridesharing platform...................................................................... 44 A STUDY ON REAL-TIME DATABASE TECHNOLOGY AND ITS APPLICATIONS Figure 23: Class diagram for the Ride share application ............................................................ 46 A STUDY ON REAL-TIME DATABASE TECHNOLOGY AND ITS APPLICATIONS 1.Introduction The advancement of popular technological appliances such as mobile phones and GPS trackers have increased the demand for real-time applications. These applications usually require up-to-the-second information by the users as well as the large volume of data to be processed along the speed of the actual application. These computing systems must react within precise time constraints while responding to the events in the operating environment (Buttazzo, 1997). The databases for these applications are expected to facilitate instant and massive data storage, instant access and delivery. Cloud computing is a powerful technology to perform massive-scale and complex computing. It can be a part of the solutions where a massive amount of data and instant access are required such as in mobile computing applications. It eliminates the need to maintain expensive computing hardware, dedicated space, and software. Massive growth in the scale of data or big data generated through cloud computing has been observed (Hashem, et al., 2015). Big data technology and the real-time databases were introduced as a solution in the emergence of larger and complex data sets, to offer better solutions and features to handle massive data sets with higher performance. Oracle defines big data as data that contains greater variety arriving in increasing volumes and with ever-higher velocity (Oracle Corp.). It helps organizations to integrate, manage and analyze data originated from various sources. Use of big data technology can be highly beneficial for a business, because of its ability to analyze the behaviors inside an organization, its actors and use those analyses to make important predictions. The traditional relational database model was no longer capable of fulfilling all above