The Replication Technology in E-learning Systems

Similar documents
Distributed DBMS. Concepts. Concepts. Distributed DBMS. Concepts. Concepts 9/8/2014

Distributed KIDS Labs 1

Database Management Systems

Distributed Databases

DISTRIBUTED DATABASES CS561-SPRING 2012 WPI, MOHAMED ELTABAKH

Algorithm for Dynamic Partitioning and Reallocation of Fragments in a Distributed Database

Distributed Databases Systems

Distributed Databases

Distributed Databases

Centralized vs. Distributed Databases. Case Study

International Journal of Modern Trends in Engineering and Research e-issn: p-issn:

Physical Storage Media

Chapter 11 - Data Replication Middleware

Database Architectures

Chapter 19: Distributed Databases

Fundamental Research of Distributed Database

Database Administration. Database Administration CSCU9Q5. The Data Dictionary. 31Q5/IT31 Database P&A November 7, Overview:

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Slide 25-1

GUJARAT TECHNOLOGICAL UNIVERSITY

Distributed Database Management System UNIT-2. Concurrency Control. Transaction ACID rules. MCA 325, Distributed DBMS And Object Oriented Databases

Chapter 18: Parallel Databases

A Review on Fragmentation Techniques in Distributed Database

Chapter 3. Database Architecture and the Web

CSE 444: Database Internals. Section 9: 2-Phase Commit and Replication

Database Architectures

Specific Objectives Contents Teaching Hours 4 the basic concepts 1.1 Concepts of Relational Databases

Integrity in Distributed Databases

Teaching Scheme Business Information Technology/Software Engineering Management Advanced Databases

Distributed Databases

Data Modeling and Databases Ch 14: Data Replication. Gustavo Alonso, Ce Zhang Systems Group Department of Computer Science ETH Zürich

CMU SCS CMU SCS Who: What: When: Where: Why: CMU SCS

Chapter 19: Distributed Databases

Three Read Priority Locking for Concurrency Control in Distributed Databases

DISTRIBUTED DATABASES

CS370: System Architecture & Software [Fall 2014] Dept. Of Computer Science, Colorado State University

Chapter 18: Parallel Databases Chapter 19: Distributed Databases ETC.

Mutual consistency, what for? Replication. Data replication, consistency models & protocols. Difficulties. Execution Model.

Introduction to the Course

BD - Databases

Course Content. Parallel & Distributed Databases. Objectives of Lecture 12 Parallel and Distributed Databases

CONCEPTS OF DISTRIBUTED AND PARALLEL DATABASE

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

TIBCO StreamBase 10 Distributed Computing and High Availability. November 2017

CISC 7610 Lecture 5 Distributed multimedia databases. Topics: Scaling up vs out Replication Partitioning CAP Theorem NoSQL NewSQL

B.H.GARDI COLLEGE OF ENGINEERING & TECHNOLOGY (MCA Dept.) Parallel Database Database Management System - 2

Chapter 17: Parallel Databases

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

EBOOK. FROM DISASTER RECOVERY TO ACTIVE-ACTIVE: NuoDB AND MULTI-DATA CENTER DEPLOYMENTS

Database Replication in Tashkent. CSEP 545 Transaction Processing Sameh Elnikety

MaanavaN.Com DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING QUESTION BANK

Storing Data: Disks and Files. Storing and Retrieving Data. Why Not Store Everything in Main Memory? Chapter 7

Angola. Part. 1 Contact information. 1.1 Name

Chapter 3: AIS Enhancements Through Information Technology and Networks

Middle Layer Java Software for the Implementation of a Homogeneous Distributed Database System

Storing and Retrieving Data. Storing Data: Disks and Files. Solution 1: Techniques for making disks faster. Disks. Why Not Store Everything in Tapes?

Rule 14 Use Databases Appropriately

Why is Mariposa Important? Mariposa: A wide-area distributed database. Outline. Motivation: Assumptions. Motivation

Fundamentals of Database Systems (INSY2061)

BRANCH:IT FINAL YEAR SEVENTH SEM SUBJECT: MOBILE COMPUTING UNIT-IV: MOBILE DATA MANAGEMENT

CSE 530A ACID. Washington University Fall 2013

CS Reading Packet: "Transaction management, part 2"

Workloads Programmierung Paralleler und Verteilter Systeme (PPV)

Data Replication Model For Remote Procedure Call Transactions

Solutions for Demanding Business

Datacenter replication solution with quasardb

Massive Scalability With InterSystems IRIS Data Platform

Multi-CPU and distributed systems. Database system architectures. Lecture topics: monolithic systems client server systems parallel database servers

Storing Data: Disks and Files. Storing and Retrieving Data. Why Not Store Everything in Main Memory? Database Management Systems need to:

Chapter 24 NOSQL Databases and Big Data Storage Systems

Distributed Databases. Distributed Database Systems. CISC437/637, Lecture #21 Ben Cartere?e

Introduction To Computers

Storing and Retrieving Data. Storing Data: Disks and Files. Solution 1: Techniques for making disks faster. Disks. Why Not Store Everything in Tapes?

Assignment 5. Georgia Koloniari

Introduction Aggregate data model Distribution Models Consistency Map-Reduce Types of NoSQL Databases

Advances in Data Management - NoSQL, NewSQL and Big Data A.Poulovassilis

Scaling Database Systems. COSC 404 Database System Implementation Scaling Databases Distribution, Parallelism, Virtualization

INTEGRATION OF AD HOC WIRELESS SENSOR NETWORKS IN A VIRTUAL INSTRUMENTATION CONFIGURATION

Distributed Transaction Processing in the Escada Protocol

It also performs many parallelization operations like, data loading and query processing.

High Availability through Warm-Standby Support in Sybase Replication Server A Whitepaper from Sybase, Inc.

Communications and Networking 1

! Design constraints. " Component failures are the norm. " Files are huge by traditional standards. ! POSIX-like

management systems Elena Baralis, Silvia Chiusano Politecnico di Torino Pag. 1 Distributed architectures Distributed Database Management Systems

Physical Database Design

Study (s) Degree Center Acad. Period

Textbook(s) and other required material: Raghu Ramakrishnan & Johannes Gehrke, Database Management Systems, Third edition, McGraw Hill, 2003.

Parallel Algorithm Design. Parallel Algorithm Design p. 1

DISTRIBUTED DATABASE OPTIMIZATIONS WITH NoSQL MEMBERS

SQL, NoSQL, MongoDB. CSE-291 (Cloud Computing) Fall 2016 Gregory Kesden

Kingdom of Saudi Arabia Ministry of Higher Education College of Computer & Information Sciences Majmaah University. Course Profile

Learning outcomes. On successful completion of this unit you will: 1. Understand data models and database technologies.

UVA. Database Systems. Need for information

Distributed Transaction Management. Distributed Database System

Managing Copy Services

Load balancing of autonomous applications and databases in a cluster system

Commit Protocols and their Issues in Distributed Databases

Distributed Data Management

White paper High Availability - Solutions and Implementations

Business Continuity and Disaster Recovery. Ed Crowley Ch 12

Distributed Filesystem

Transcription:

Available online at www.sciencedirect.com Procedia - Social and Behavioral Sciences 28 (2011) 231 235 WCETR 2011 The Replication Technology in E-learning Systems Iacob (Ciobanu) Nicoleta Magdalena a * a Ph.D. student, Faculty of Mathematics - Computer Science /Department of Computer Science, University of Pitesti, Str. Targu din Vale, nr.1, Arges and Postcode 110040, Romania Abstract The distributed systems are attractive for the users with various, interactive activities that require large processing capabilities, resource sharing and high availability. This paper presents the advantages of e-learning education and focus on the importance of data replication in the design of a distributed database system that an e-learning portal uses. In addition, we analyze the available methods and strategies of data replication depending on needs, for improving performance and increasing data availability. The purpose of this paper is to present the advantages of using data replication technology in e-learning systems by universities with geographically distributed locations. 2011 Published by Elsevier Ltd. Open access under CC BY-NC-ND license. Keywords: e-learning; distributed databases; fragmentation; replication; allocation; methods; strategies 1. Introduction The present society is an information society, a various set of software applications being implemented day by day for helping people to make different tasks. Most areas of activities are based on information systems that led to the creation of computer networks for the rapid transmission of information and development of computer applications for the operation of various institutions, many of them distributed geographically. Thus, in many branches of activity (industry, economy, finance and banking, universities, telecommunications) the distributed systems are used. Both in research and in production, distributed technologies are growing fast. Despite the complexity and higher cost (compared with centralized databases), distributed databases are the solution to many of the new technical requirements: fast access, availability and reliability of data, large amounts of data. A distributed database (DDB) is a collection of logically interrelated data which are physically distributed on computers (nodes) over a network. Every computer in the network has the autonomy to process local applications. Also, each computer participates in the execution stage of at least one global application that requires accessing data from multiple computers (Iacob, 2010). * Iacob (Ciobanu) Nicoleta Magdalena. Tel.: +40-757-011-895. E-mail address: nicoleta.iacob_2007@yahoo.com. This work was partially supported by the strategic grant POSDRU/88/1.5/S/52826, Project ID52826 (2009), co-financed by the European Social Fund Investing in People, within the Sectoral Operational Programme Human Resources Development 2007-2013. 1877-0428 2011 Published by Elsevier Ltd. doi:10.1016/j.sbspro.2011.11.045 Open access under CC BY-NC-ND license.

232 Iacob (Ciobanu) Nicoleta Magdalena / Procedia - Social and Behavioral Sciences 28 (2011) 231 235 A distributed database management system (DDBMS) is a set of programs that allows the management of distributed database and makes the distribution transparent to the users. The objective of transparency is to make a distributed system appear similar to a centralized system. This is usually called the fundamental principle of DDBMS. E-learning incorporates traditional or modern learning methods and techniques and use computers to deliver them to the students - multimedia processing and asynchronous or synchronous communication. E-learning courses include both content (information) and instructional methods (techniques) that help people learn the content (Clark & Mayer, 2008). Asynchronous e-learning can be defined as a form of computer based training, in which the teacher (trainer) and the course participants do not use educational resources at the same time, hence the name asynchronous e-learning. Synchronous e-learning can be defined as a form of computer based training, in which teacher (trainer) and the course participants use educational resources at the same time hence the name synchronous e-learning. The students can log into the system and can interact with the teacher and other students that are in the same location or different locations (as far as the teacher allows it) in real time. 2. Distributed database Distributed database design: The methodology used for the logical design of a centralized database applies to the design of the distributed one as well. However, for a distributed database three additional factors have to be considered: data fragmentation, data replication and data allocation. A distributed database system is a database system which is fragmented or replicated on the various configurations of hardware and software, located usually at different geographical sites within an organization (Beynon-Davies, 2004). 2.1. Data fragmentation Before we decide how to distribute the data we must determine the logical units of distribution. The database may be split up into logical units called fragments which will be stored at different sites. The simplest logical units are the tables themselves. Fragmentation aims to improve: - Reliability; - Performance; - Balanced storage capacity and costs; - Communication costs; - Security. The fragmentation is the partitioning of a global relation R in fragments R 1, R 2,..., R n, containing enough information to reconstruct the original relation R. There are some basic rules to be followed in defining the fragments: Completeness. Decomposition of relation R into fragments R 1, R 2 R n is complete if each data item in R can also be found in some R i. Reconstruction. If relation R is decomposed into fragments R 1, R 2 R n, then there should exist some relational operator that reconstructs R from its fragments, i.e., R = R 1... R n. Disjointness. If relation R is decomposed into fragments R 1, R 2 R n and data item d i appears in fragment R j, then d i should not appear in any other fragment R k, k j (exception: primary key attribute for vertical fragmentation). The following information is used to decide fragmentation: - Quantitative information: frequency of queries, site, where query is run, selectivity of the queries, etc; - Qualitative information: types of data access, read/write, etc. There are two types of fragmentation: horizontal fragmentation and vertical fragmentation. Horizontal fragmentation: A horizontal fragment of a table is a subset of rows in it. So horizontal fragmentation divides a table 'horizontally' by selecting the relevant rows and these fragments can be

Iacob (Ciobanu) Nicoleta Magdalena / Procedia - Social and Behavioral Sciences 28 (2011) 231 235 233 assigned to different sides in the distributed system. The relation is split horizontally, i.e., tuples are distributed among fragments. Vertical fragmentation: a vertical fragment of a table keeps only certain attributes of it. It divides a table vertically by columns. It is necessary to include the primary key of the table in each vertical fragment so that the full table can be reconstructed if needed. Mixed fragmentation: is achieved by successively applying the operations for horizontal and vertical fragmentation. In this way, mixed fragments can be obtained by applying horizontal fragmentation to a vertical fragment, respectively by applying a vertical fragment to a horizontal fragment. In practice it is recommended to have at most two levels of fragmentation. 2.2. Data replication A copy of each fragment can be maintained at several sites. Data replication is the design process of deciding which fragments will be replicated. Replication is the operation of storing portions from a database, as copies, on multiple nodes on a network. If a user updates a local copy then DDBMS automatically updates all copies of that data. The fragmentation and the replication can be combined: A relationship can be partitioned into several pieces and can have multiple replicas of each fragment (Silberschatz, Korth & Sudarshan, 2010). The purposes of replication are multiple: System availability. Distributed DBMSs may remove single points of failure by replicating data, so that data items are accessible from multiple sites. Consequently, even when some sites are down, data may be accessible from other sites. Performance. One of the major contributors to response time is the communication overhead. Replication enables us to locate the data closer to their access points, thereby localizing most of the access that contributes to a response time reduction. Scalability. As systems grow geographically and in terms of the number of sites (consequently, in terms of the number of access requests), replication allows for a way to support this growth with acceptable response times. Application requirements. Finally, replication may be dictated by the applications, which may wish to maintain multiple data copies as part of their operational specifications (Ozsu & Valduriez, 2011). Although data replication has clear benefits, it poses the considerable challenge of keeping different copies synchronized. Replication is a process that consists in making and distributing copies of data between different places, at remote or mobile users, by using Internet. In addition, allows changes to be propagated consistently to the relevant copies. Distribution of these replicas must ensure that the data processing is done locally, in order to maximize efficiency and reduce communication costs. In addition, replication provides more reliability, minimizes the chance of total data loss, and greatly improves disaster recovery (Rahimi & Haug, 2010). Epsilon serializability (ESR) allows a query to see inconsistent data while replicas are being updated, but requires that the replicas converge to a one-copy serializable state once the updates are propagated to all of the copies. It bounds the error on the read values by an epsilon () value (hence the name), which is defined in terms of -only transaction (query) T Q, let T U be all the update transactions that are executing concurrently with T Q. If RS (T Q ) WS (T U ) (T Q is reading some copy of some data items while T U is updating (possibly a different) copy of those data items) then there is a readwrite conflict and T Q may be reading inconsistent data. The inconsistency is bounded by the changes performed by T U. Clearly, ESR does not sacrifice database consistency, but only allows read-only transactions (queries) to read inconsistent data. For this reason, it has been claimed that ESR does not weaken database consistency, but 2.2.1. Replication methods The methods that can be used for replication (Table 1) are: not replicated data means that DDBMS allocates space for some data on a single node from a computer network. The characteristics of this method are: minimal redundancy, data access concurrency is maximum, update time is small and retrieval time is great.

234 Iacob (Ciobanu) Nicoleta Magdalena / Procedia - Social and Behavioral Sciences 28 (2011) 231 235 partitioned: each fragment resides at only one site. Rule of thumb: If, then replication is advantageous, otherwise replication may cause problems. partially replicated data means that DDBMS allocates for a part of data a single copy on a computer, and for another part of data multiple copies on multiple computers on the network. The characteristics of this method are: redundancy is increased, concurrency access to data is decreased, update and retrieval time is medium. fully replicated data means that DDBMS allocates for the entire database multiple copies on different computers on the network. The characteristics of this method are: redundancy is high, concurrency access to data is minimal, the time update is great and retrieval time is small. Table 1. Methods of data replication Not replicated Fully replicated Partially replicated Data consistency Large Small Small Storage costs Small Large Medium Reliability and availability Small Large Medium Update speed Medium Small Small Communication costs Large Large Small Redundancy Small Large Medium Concurrency access to data Large Small Medium Update time Small Large Medium Retrieval time Large Small Medium The replication of a fragment R i at j station, formula (1), is justified if the fragment allocation cost is less than the cost of remote accessing the applications k from j station to other copies of the fragment found on other stations j` (j` j): (1) The replication is a solution for a distributed database environment when we need: to copy and distribute the data to one or more places; to distribute the copies of the data on a scheduled basis; when needed, to allow more users to make changes, then send data changes together, and even to resolve potentially conflicts; to build applications with data which can be used in online or offline environments; to build Web applications in which the users can access large volumes of data. 2.2.2. Replication database strategies There are two basic parameters to set in the design process of a replication strategy, "where" and "when" the updates are propagated. So, depending on when parameter, the replication can be: synchronous and asynchronous. 1) In synchronous replication, replicas are kept in sync at all times. Synchronous replication means that an update should be propagated and applied immediately in all replicas, so this way database consistency is assured all the time. In this approach, a transaction may access any copy because the accessed data are the same in all replicas from different locations. Some applications, for example financial or reservation of places, are well served by this technique. This process is usually done using a protocol called "two phase commit" and refers to the transaction that performs the update. 2) Since synchronous replication is often related to distributed databases and involves a very high level of complexity, which often translates into very high costs (both for communication, design and operation), asynchronous replication is used as an alternative, because is more cheaper. In asynchronous replication, unlike synchronous replication, the replicas are not always kept synchronized and this means that synchronization process of databases occurs only periodically. Two or more replicas of the same data can sometimes have different values and in a transaction these different values may be seen. This is Depending on where the updates can take place we have: primary copy (master) and update everywhere (group). 3) With an update everywhere approach, changes can be initiated at any replicas. This means that any of the sites that have a copy of the information can update its value. Each location may make the data

Iacob (Ciobanu) Nicoleta Magdalena / Procedia - Social and Behavioral Sciences 28 (2011) 231 235 235 updates, and changes are replicated to all other nodes. It is obvious that this configuration is the most exposed to integrity loss, due to conflicting updates, also called "conflicts". 4) With a primary copy approach, there is only one copy that can be updated (master copy), all others (secondary copies) being updated in order to reflect changes in the master copy. 2.3. Data allocation Each fragment has to be allocated to one or more sites, where it will be stored. There are three strategies regarding the allocation of data: Centralized: Consists of a single DB and DBMS stored at one site with users distributed across the network Fragmented (or Partitioned): The database is partitioned into disjoint fragments, with each fragment assigned to one site (no replication). This is also called 'non-redundant allocation'. Complete replication: A complete copy of the database is maintained at each site (no fragmentation). Here, storage costs and communication costs for updates are most expensive. To overcome some of these problems, snapshots are sometimes used. A snapshot is a copy of the data at a given time. Copies are updated periodically. Selective replication: A combination of fragmentation and replication. 3. Conclusion Distributed databases have appeared as a necessity, because they improve availability and reliability of data and offer high performance in data processing by allowing parallel processing of queries, and also reduce processing costs. The use of distributed databases in e-learning systems improves access to information and offer rapid data collection. Modern universities, with geographically distributed locations, must assume the responsibility to introduce new technologies in the educational process and must adopt learning methods based on the new technologies that are more efficient than the traditional ones. In other words, in order to be competitive, any university must take these technologies into account. References Beynon-Davies, P. (2004). Database systems. (3rd ed.). New York: Palgrave-Macmillan, (Chapter 37). Clark, R., & Mayer, R. (2008). E-learning and the science of instruction. (2nd ed.). San Francisco: John Wiley and Sons, (Chapter 1). Distributed query optimizationjournal University of Târgu Jiu Annals - Economics Series, No. 4/2010, pp. 182-192. Ozsu M.T.; Valduriez P. (2011). Principles of Distributed Database Systems. (3th ed.), New York: Springer, (Chapter 13). Rahimi, S.K.; Haug, F.S. (2010). Distributed database management systems. A Practical Approach, IEEE, Computer society, New Jersey: John Wiley & Sons, INC, (Chapter 7). Silberschatz, A.; Korth, H.F.; Sudarshan, S. (2010). Database System Concepts. (6th ed.). McGraw-Hill, (Chapter 19).