Transaction Processing in a Mobile Computing Environment with Alternating Client Hosts *

Size: px
Start display at page:

Download "Transaction Processing in a Mobile Computing Environment with Alternating Client Hosts *"

Transcription

1 Transaction Processing in a Mobile Computing Environment with Alternating Client Hosts * Sven Buchholz, Thomas Ziegert and Alexander Schill Department of Computer Science Dresden University of Technology sb15@ibdr.inf.tu-dresden.de {ziegert,schill}@ibdr.inf.tu-dresden.de Albert Held DaimlerChrysler Research & Technology Ulm albert.held@daimlerchrysler.com Abstract Previous research in mobile data management has been focused on scenarios where mobile s replace fixed ones. However, not all potential application fields of mobile computing fit into this scenario. There exist scenarios where mobile s will not replace but accompany fixed ones. In this paper we introduce a real world application scenario requiring the capability to process a transaction from alternating, potentially mobile hosts. With this scenario in mind we have developed three approaches supporting multiple s in combination with a so called, an object in the fixed network, which manages transactions on behalf of the and the approach to realise the as a migrating object. Finally we present a prototype implementation of the most promising approach. 1. Introduction Previous research in mobile data management has been focused on the delivery of information from fixed data servers to mobile s, considering a scenario where mobile hosts replace fixed ones. There exists a number of applications which fit into this scenario, e.g. accessing a customer database by a travelling salesman. However, not all potential application fields for mobile computing correspond to this scenario. There is a large number of applications imaginable, where a mobile host does not replace but accompany the fixed host. The approach presented in this paper is based upon one of these applications. The goal of our approach is the provision of a support platform for mobile database access in the industrial pilot lot manufacturing. Nowadays a typical pattern of the engineers work looks like this: Our engineer gets notified whenever a problem arises in the manufacturing process, e.g. by phone. Now he collects related information from product and production databases on the fixed network. Therefore, he starts a distributed transaction on the workstation (a fixed host) in his office. However, the information found may not be sufficient to solve the problem. So the engineer will typically decide to move to the manufacturing site to have a close look at the problem and to have a talk with the involved workers. As a result of this he is able to solve the problem and after returning to the office adapt the information in the databases and commit the transaction. Our target is to supply this scenario with an IT support for the engineer while being mobile. Therefore, the engineer is equipped with a mobile host connected to the fixed network by wireless LAN. Thus, the future pattern of work could look like this: After being notified about a problem the engineer starts a transaction on his fixed host to retrieve information (fig. 1 (1)). When the engineer decides to move to the manufacturing site he takes his mobile host (fig. 1 (2)). At the manufacturing site, he resumes the transaction he has started on the fixed host before (fig. 1 (3)). This means he gets exactly the same mobile host 3 base station 2 fixed network database fixed host Figure 1. Resuming a transaction, started on the fixed host, on the mobile host 1 * This material is based on work supported by the BMBF under grant number 01BK604/8. The content of this material is in the responsibility of the authors

2 view of the on the mobile host which he has left on the fixed host and all future database queries within the same transaction will be submitted from the mobile host. Thus, he is able to collect additional information from the databases, find a solution in cooperation with the workers, and update the databases directly from the manufacturing site. After completing his work at the manufacturing site the engineer may decide to commit the transaction directly on the mobile host or return to the office to resume the transaction on the fixed host and eventually commit it. It is imaginable that the mobile host completely replaces the fixed one so that all processing is done from the mobile host (also in the office), even in applications like the described one. However, our approach to process a transaction from alternating hosts - a fixed one in the office and a mobile one on the move - is more convenient and the user benefits from the more powerful resources of a fixed workstation for the processing which is done in the office. 2. Requirements There are a lot of special requirements of transaction processing resulting from the presented scenario. These arise from the mobility of the hosts in general as well as from the special issues of alternating hosts. However, not all of the commonly discussed requirements due to the mobility of hosts do really apply to our scenario. In our application scenario mechanisms for disconnected operation are less important, because we assume that the mobile host will be reachable anytime in the industrial environment. So we do not consider special mechanisms for disconnected operation. Furthermore do the issues of location awareness 1 not apply to our scenario, because the mobile host is attached to the fixed network by a wireless LAN, which is considered to cover a single location. Other general requirements of transaction processing with mobile hosts are relevant in our scenario. These are: long-lived transactions Beside the problem of disconnection especially the fields where mobile computing is used may lead to a long duration of transactions. The processing of a 1 Location awareness means that the application on the mobile host is aware of the mobility of the host. Thus, a location change is not transparent to the application. Location awareness concerns the access to location dependent data and location dependent permissions as well as adoptions to the location dependent performance of remote resource access. transaction by the engineer may last up to several hours in our scenario. Certainly, long lived transactions are not a problem restricted to mobile computing. The problem has been discussed in different fields of transaction processing, e.g. workflow management or co-operative editing, e.g. Sagas [4] or Split-Transactions [8] were developed to minimise the blocking probability of resources (e.g. databases) by long-lived transactions. However, all these approaches do not realise transactions with ACID (atomicity, consistency, isolation, durability) properties. They apply weaker constraints of consistency. That is why we do not consider special mechanisms coping with long lived transactions but present an approach that handles ACID transactions. However, we assume that even transaction models with weaker constraints of consistency will work in our approach. lack of reliability of the mobile host and the wireless link It seems reasonable that concepts proved successful for distributed transaction processing in fixed networks are applicable to distributed transactions with a mobile as well as long as the remains connected. However, common weaknesses of the protocols may even get more problematic due to the potential unreliability of the mobile host as well as the wireless link. For example, the unreliability of the master process co-located with the on the mobile host or of the link between the master and the data resources as participants in a two phase commit protocol may lead to a significantly higher blocking probability of the data resources. To avoid this problem a solution for commitment control in a mobile computing environment should place the commit master process on a host in the fixed network. Beyond the general requirements of transaction processing caused by the mobility of the host there arises a special requirement from the presence of alternating hosts (this means a transaction is started on one host and later resumed on another one). Common approaches assume, that there is only one accessing data resources within a transaction. Therefore, the keeps the context information of the transaction. To satisfy this constraint while using alternating hosts, the must be realised as a mobile object, which will be able to migrate to the new host. However, this approach requires an extensive system support allowing a transparent migration of both the object and all context information

3 3. Approaches for transaction processing by alternating s supported by an agent on the fixed network To avoid the need of an extensive system support for transparent migration of both the object and all context information we suggest to discard the one- approach and introduce an approach coping with multiple s. Whenever the user wants to alter the host a new instance is created on the new host. Afterwards, this new gets the current of the transaction transferred by the old and resumes the transaction processing. The context information is not managed by the s, but by an object residing on a host in the fixed network, e.g. the engineers workstation in our application scenario. We call this instance Transaction Processing Agent (). The approach prevents the transfer of context data between host. Moreover, the can act as proxy acting on behalf of a within the fixed network. This is encouraged by the fact, that the is more reliable than a on a mobile host and allows therefore the utilisation of conventional infrastructures for database and transaction processing, which commonly not support applications with mobile nor alternating s. The has at least the following two responsibilities: 1. The routes all queries from a to the data resources. This means, that all communication takes an indirect way via the. This is also called Client-Agent-Server-Model (fig. 2). Complex queries may be decomposed in single queries to different resources by the. Afterwards, the results of the sub-queries are reassembled and the result of the complex query is passed to the. Thus, the distribution of the data resources is completely hidden from the. 2. Moreover, the manages the transaction. This includes the control of the commit protocol between the and the data resources on the fixed network. The as well as the resources participating in the commit protocol are located on the fixed network, so the may utilise an transaction service proven successful for distributed transactions without mobile participants, e.g. X/Open DTP or the CORBA transaction service. Different models of partitioning the responsibilities between the and the are conceivable: Approach 1: A without a copy of the of the transaction In this model the responsibilities of the are restricted to the above mentioned interaction with the data resources and the management of the transaction. The transaction processing is done by the agent server Figure 2. Client-Agent-Server-Model (from [6]) and therefore, the holds the of the transaction. When the host changes, it is in the s responsibility to transfer the of the transaction from the old to the new one. Consequently, a failure of the leads to a loss of the and the transaction must be rolled back. Approach 2: A that keeps the of the transaction in combination with less s In this model the whole transaction processing is the task of the. Thus, the is the only instance keeping a copy of the of the transaction. Consequently, the plays the role of a transactional. The actual on the host provides the user interface. All interactions of the user are propagated to the, that does the necessary processing and transmits the view of the new to the. Thus, this approach may result in a high amount of messages exchanged between a and the and delays in the interactivity. Approach 3: Replicated copies of the of the transaction kept by the and the This hybrid model combines the advantages of the other approaches. The transaction processing is done by the, which keeps the of the transaction. However, the holds a replica of this. Thus, a failure of the does (old) Figure 3. begin registration commit (new) Resume the transaction at the of the last - 3 -

4 not necessarily lead to a rollback because a new may resume the transaction with the s copy of the. However, the copy of the of the transaction kept by the is not updated every time the copy of the changes but only at certain points in time, so called s. This reduces the number of messages exchanged between the and the. Thus, after a failure of the a new cannot resume the transaction at the current but at the of the last (fig. 3). To avoid inconsistencies between the copy of the kept by the and the of the data within the resources (e.g. databases) the copy of the must reflect at least the results of all successful completed non-idempotent operations. Therefore, the has to transfer the current to the with any request for a non-idempotent operation. Moreover, the has to integrate the result of the operation into its copy of the. Executing idempotent operations updating the s copy of the is not mandatory but we highly recommend to use the communication between the and the, which is necessary for the operation call anyway, to transfer the in a piggyback manner to the. Hence, any operation call leads to an implicit. Moreover, the may issue s explicitly to prevent the loss of changes. 4. Comparison of the different approaches Table 1 shows a comparison of the three approaches with a as described above and the approach with a migrating from one host to another. The criteria for the comparison we have chosen are: the problem of commitment control, that may be done by the itself but only after migrating onto a fixed host or Table 1. Comparison of the different approaches one migrating approach 1 approach 2 approach 3 commitment control by the after migration onto a fixed host by the on the fixed network by the on the fixed network by the on the fixed network coping with exceptions during operation calls transaction rollback inquire the result from the (e.g. by call repetition) (exceptions caused by faults on the fixed network only then transaction rollback) inquire the result from the (e.g. by call repetition) local processing during disconnections possible (until the next data resource access) possible (until the next data resource access) impossible possible (until the next ) transfer of the of the transaction by migration direct transfer between s no need to transfer ( is kept by the ) indirect transfer between s coping with failures of the transaction rollback transaction rollback resume the transaction with a new in the current resume the transaction with a new in the saved at the last - 4 -

5 by the on the fixed network on behalf of the ; how to cope with exceptions during operation calls caused by failures of the communication link; whether or not the whole processing must be suspended during disconnections; how to transfer the of the transaction between hosts; and finally how to cope with failures of the. Because the might be situated on a potentially unreliable host, one has to assume that failures of the are frequent compared with an application on a fixed host. Therefore, an appropriate solution should allow one to resume a transaction even when a failure of the occurs. That is why the approach with one migrating as well as approach 1 is not suitable for our application scenario because the only instance keeping a copy of the of the transaction is the itself and, therefore, a failure of the implies a transaction rollback. In the other approaches at least a copy of the is kept by the on the fixed network. Because we assume failures on the fixed network and, thus, failures of the are rare, a transaction rollback is acceptable when the fails. Considering the criteria of table 1, approach 2 seems to meet our requirements. There is a little disadvantage: disconnections force the application to suspend also the local processing. But we assume disconnections as a very rare event in our target scenario, so this might be acceptable. However, there is another problem the approach inherently suffers from: every user interaction, e.g. a key press or a mouse click, causes communication to pass the event to the. Afterwards, the manipulates the corresponding to the user interaction and propagates the view of the new to the. This implies not only a high amount of messages exchanged between and, moreover any delay of the communication link directly influences the interactivity of the application (response time). It is in doubt whether or not this kind of application meets ergonomic requirements. Approach 3 is comparable with the approach with less s considering the criteria of table 1. Only the circumstance that the transaction cannot be resumed in the up-to-date but in a potentially outdated one, the one of the last, is a little drawback of this approach. However, this may be compensated by explicit s initiated by the. On the other hand, this approach allows the continuation of the local transaction processing while disconnections. The major advantage, however, is that the amount of messages is considerable less compared to the approach with a less as user interface. This results from the delayed update of the s copy of the at a. To sum up approach 3 is the most suitable one for our application scenario. Therefore, we selected this approach for the prototype implementation presented in the next section. The applicability of approach 2 depends on the efficiency of the underlying communication subsystem. In conjunction with a suitable communication subsystem this approach might be appropriate as well. 5. Prototype implementation To demonstrate the applicability of approach 3 a prototype implementation has been developed. The implementation has been realised using the Java Programming Language. We used the Java Remote Method Invocation (RMI) for the remote communication between and. Because Java RMI offers only maybe failure semantics and under the conditions of potentially long lasting disconnections, we implemented a call repetition mechanism in conjunction with duplicate elimination to ensure that every call is executed exactly once. Failures of the, however, are treated by a transaction rollback. The of the transaction is represented as a serialisable object, accumulating all data manipulated within the transaction. Due to this fact the can be transferred between and as a parameter of a remote method invocation. Figure 1 shows the basic architecture of the prototype implementation. The potentially mobile and unreliable hosts are the part of the application the user is directly interacting with. These are View and Controller forming the graphical user interface and the Client, which is the model, in the means of the Model-View-Controller design pattern. According to approach 3 presented in section 3 the Client keeps a copy of the transactions. Operations on this which can be executed locally on the host are executed by the Client. Moreover the Client initiates database access operations on the. However, the Client does not call the operations on the directly but via a proxy of the located on the host. This Proxy converts the calls of the into RMI calls on the and handles RMI exceptions by call repetition in conjunction with duplicate elimination transparently for the Client. The reliable agent host hosts the. It keeps a replicated copy of the of the transaction, converts database access calls of the into calls on the Resource Adapter, and passes the results via the Proxy back to the Client. Furthermore it integrates the results into the s copy of the. The Resource Adapter is introduced to hide the resource distribution and the access method. Moreover it is responsible for the management of distributed transactions

6 host agent host output View Proxy input Controller Client Resource Adapter Figure 4. Basic architecture of the prototype implementation database database s each assigned with a single transaction are generated by a Factory (located on the agent host but not shown in fig. 4) on demand of a application. On this occasion, an initial is created by the. Moreover, the new is registered with a directory service realised as a RMI registry. Afterwards, the may register with the and receive the initial by the. When the user wants to change the host he starts a new application on the new host. After that, the new locates the using the directory service and contacts it to get the current of the transaction. If an old is still registered with the, the asks it for the current. Implicitly, the old is deregistered (fig. 5). When the old is unreachable, after a timeout period the assumes that the old has failed and claims its copy of the as the valid one. Consequently, the s copy of the is transferred to the new (fig. 6). If a ends before it has been replaced by a new one, it explicitly deregisters itself with the. At the same time the copy of the kept by the is (old) Checkpoint s1 of work? registration (new) updated so that a new gets the current (fig. 7). To enable access control for s connecting with a the stores the proved identity of the user associated with the application that creates the. Whenever a new requests to be registered with a it presents the proved identity of its user. If the identity does not match the identity of the user that has created the the request is rejected. Due to this mechanism the security gap in this approach is closed. Within the prototype implementation no databases managed by DBMS systems are used as data resources. Instead, we simulate the resource access by objects in the environment of the Resource Adapter. Moreover, these resource objects do not implement mechanisms to make any persistent changes of the data. Protocol mechanisms for commitment control are realised by the Resource Adapter itself. However, the implementation is open to integrate a transaction service conforming to the CORBA transaction service specification with minor adoptions. (old) Checkpoint s1 of work? registration (new) deregistration s2 s2 timeout s1 Figure 5. The old is active when it is replaced Figure 6. The old is unreachable when it is replaced - 6 -

7 (old) s1 deregistration s2 registration 6. Related Research To our knowledge previous research has not addressed the problem of transaction processing from alternating, potentially mobile hosts. However, transaction processing from mobile hosts has been discussed by several research papers. Different papers have investigated new transaction models with adopted, possibly weaker constraints of consistency than ACID to cope with disconnections. For instance, this approach used by the clustering model [7] with weak and strict transactions or Reporting and Co- Transactions [1] for structuring workflow transactions. Another approach followed up by [10] is to incorporate the semantics of the data to allow consistent 2, concurrent access even in case of disconnected operation. Mobility behaviour is captured by the Kangaroo Transaction Model ([2]). Similar to our approach all data resources are accessed through an instance on the fixed network (typically on the base station), the Data Access Agent (DAA), that performs the transaction management. However, the Kangaroo model enhances this idea by moving the management of the transaction from one DAA to another one as the mobile host moves. Hence, the communication between the and the DAA is kept local even when the mobile host moves. Due to the fact that the Kangaroo model assumes a multidatabase approach with autonomous underlying DBMS systems, which allow subtransactions to commit independently, Kangaroo Transactions do not have ACID properties. Another work discussing the approach to have an instance on the fixed network, a so called user agent, acting on behalf of the on the mobile host can be found in [9]. This paper considers how the user agent migrates on the network. Our approach does not consider the migration of the agent or of the transaction management, as in the Kangaroo Transaction Model. However, it is conceivable 2 ACID properties can be maintained. s2 (new) Figure 7: The old is shut down before it is replaced to extend the by the mobility feature. Unlike the Kangaroo Transaction approach, that assigns one DAA with one base station or one network domain, and the user agent approach of [9], that assigns one user agent with one mobile host, our approach assigns one with one transaction. 7. Summary In this paper we have investigated transaction processing from alternating, potentially mobile hosts to allow mobile hosts to accompany instead of to replace fixed ones as hosts for the purpose of transaction processing. Proceeding from a real world application scenario we have developed three different approaches applying multiple s in conjunction with an instance on the fixed network, the, managing the transaction on behalf of the. Furthermore we have compared them with the idea to realise the as a migrating object. The most promising approach: having both the and the keeping a replicated copy of the of the transaction has proven successful in a prototype implementation. 8. References [1] P. K. Chrysanthis: Transaction Processing in Mobile Computing Environment; Proc. of IEEE Workshop on Advances in Parallel and Distributed Systems, pp.77-82, October 1993 [2] M. H. Dunham, A. Helal, S. Balakrishnan: A mobile transaction Model that captures both the data and movement behavior; ACM/Baltzer Journal on Special Topics in Mobile Networks and Applications, Vol 2, pp , 1997 [3] Margaret H. Dunham, Abdelsalam (Sumi) Helal: Mobile Computing and Databases: Anything new?; SIGMOD Record, Vol 24, No. 4, pp.5-9, 1995 [4] H. Garcia-Molina, K. Salem: Sagas; Proc. Of the ACM SIGMOD International Conference on Management of Data, pp , May 1987 [5] Q. Lu, M. Satyanarayanan: Isolation-Only Transactions for Mobile Computing; Operating Systems Review, Vol 28, No. 2, pp.81-87, 1994 [6] Oracle Mobile Agents White Paper; [7] E. Pitoura. B. Bhargava: Maintaining Consistency of Data in Mobile Distributed Environments; Proc. of the 15 th International Conference on Distributed Computing Systems, pp , 1995 [8] C. Pu, G. E. Kaiser: Split-Transactions for Open-Ended Activities; Proc. of the 14 th International Conference on Very Large Data Bases, pp.26-36,

8 [9] R.Ramjee, T. F. La Porta, M. Veeraragahvan: The use of network-based migrating user agents for personal communication services; IEEE Personal Communications, pp.62-68, December 1995 [10] G. Walborn, P. Chrysanthis: Supporting Semantic-Based Transaction Processing in Mobile Database Applications; Proc. of the 14 th IEEE Symposium on Reliable Distributed Systems, pp.31-40,1995 [10] Java TM Remote Method Invocation Specification; Sun Microsystems Inc

Transaction Processing in Mobile Database Systems

Transaction Processing in Mobile Database Systems Ashish Jain* 1 http://dx.doi.org/10.18090/samriddhi.v7i2.8631 ABSTRACT In a mobile computing environment, a potentially large number of mobile and fixed users may simultaneously access shared data; therefore,

More information

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

BRANCH:IT FINAL YEAR SEVENTH SEM SUBJECT: MOBILE COMPUTING UNIT-IV: MOBILE DATA MANAGEMENT - 1 Mobile Data Management: Mobile Transactions - Reporting and Co Transactions Kangaroo Transaction Model - Clustering Model Isolation only transaction 2 Tier Transaction Model Semantic based nomadic

More information

A Comparative Study of Transaction Models in Mobile Computing Environment

A Comparative Study of Transaction Models in Mobile Computing Environment Volume 3, No. 2, March-April 2012 International Journal of Advanced Research in Computer Science RESEARCH PAPER Available Online at www.ijarcs.info ISSN No. 0976-5697 A Comparative Study of Transaction

More information

Advanced Databases Lecture 17- Distributed Databases (continued)

Advanced Databases Lecture 17- Distributed Databases (continued) Advanced Databases Lecture 17- Distributed Databases (continued) Masood Niazi Torshiz Islamic Azad University- Mashhad Branch www.mniazi.ir Alternative Models of Transaction Processing Notion of a single

More information

Realisation of Active Multidatabases by Extending Standard Database Interfaces

Realisation of Active Multidatabases by Extending Standard Database Interfaces Realisation of Active Multidatabases by Extending Standard Database Interfaces Christopher Popfinger Institute of Computer Science - Database Systems Heinrich-Heine-University Düsseldorf D-40225 Düsseldorf,

More information

Incompatibility Dimensions and Integration of Atomic Commit Protocols

Incompatibility Dimensions and Integration of Atomic Commit Protocols The International Arab Journal of Information Technology, Vol. 5, No. 4, October 2008 381 Incompatibility Dimensions and Integration of Atomic Commit Protocols Yousef Al-Houmaily Department of Computer

More information

Chapter 25: Advanced Transaction Processing

Chapter 25: Advanced Transaction Processing Chapter 25: Advanced Transaction Processing Transaction-Processing Monitors Transactional Workflows High-Performance Transaction Systems Main memory databases Real-Time Transaction Systems Long-Duration

More information

5. Distributed Transactions. Distributed Systems Prof. Dr. Alexander Schill

5. Distributed Transactions. Distributed Systems Prof. Dr. Alexander Schill 5. Distributed Transactions Distributed Systems http://www.rn.inf.tu-dresden.de Outline Transactions Fundamental Concepts Remote Database Access Distributed Transactions Transaction Monitor Folie 2 Transactions:

More information

CS5412: TRANSACTIONS (I)

CS5412: TRANSACTIONS (I) 1 CS5412: TRANSACTIONS (I) Lecture XVII Ken Birman Transactions 2 A widely used reliability technology, despite the BASE methodology we use in the first tier Goal for this week: in-depth examination of

More information

Integrity in Distributed Databases

Integrity in Distributed Databases Integrity in Distributed Databases Andreas Farella Free University of Bozen-Bolzano Table of Contents 1 Introduction................................................... 3 2 Different aspects of integrity.....................................

More information

DISTRIBUTED DATABASE OPTIMIZATIONS WITH NoSQL MEMBERS

DISTRIBUTED DATABASE OPTIMIZATIONS WITH NoSQL MEMBERS U.P.B. Sci. Bull., Series C, Vol. 77, Iss. 2, 2015 ISSN 2286-3540 DISTRIBUTED DATABASE OPTIMIZATIONS WITH NoSQL MEMBERS George Dan POPA 1 Distributed database complexity, as well as wide usability area,

More information

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 1 Introduction Modified by: Dr. Ramzi Saifan Definition of a Distributed System (1) A distributed

More information

FlowBack: Providing Backward Recovery for Workflow Management Systems

FlowBack: Providing Backward Recovery for Workflow Management Systems FlowBack: Providing Backward Recovery for Workflow Management Systems Bartek Kiepuszewski, Ralf Muhlberger, Maria E. Orlowska Distributed Systems Technology Centre Distributed Databases Unit ABSTRACT The

More information

On Object Orientation as a Paradigm for General Purpose. Distributed Operating Systems

On Object Orientation as a Paradigm for General Purpose. Distributed Operating Systems On Object Orientation as a Paradigm for General Purpose Distributed Operating Systems Vinny Cahill, Sean Baker, Brendan Tangney, Chris Horn and Neville Harris Distributed Systems Group, Dept. of Computer

More information

Correctness Criteria Beyond Serializability

Correctness Criteria Beyond Serializability Correctness Criteria Beyond Serializability Mourad Ouzzani Cyber Center, Purdue University http://www.cs.purdue.edu/homes/mourad/ Brahim Medjahed Department of Computer & Information Science, The University

More information

Middleware Mediated Transactions & Conditional Messaging

Middleware Mediated Transactions & Conditional Messaging Middleware Mediated Transactions & Conditional Messaging Expert Topic Report ECE1770 Spring 2003 Submitted by: Tim Chen John C Wu To: Prof Jacobsen Date: Apr 06, 2003 Electrical and Computer Engineering

More information

Distributed Transaction Management. Distributed Database System

Distributed Transaction Management. Distributed Database System Distributed Transaction Management Advanced Topics in Database Management (INFSCI 2711) Some materials are from Database Management Systems, Ramakrishnan and Gehrke and Database System Concepts, Siberschatz,

More information

Incompatibility Dimensions and Integration of Atomic Commit Protocols

Incompatibility Dimensions and Integration of Atomic Commit Protocols Preprint Incompatibility Dimensions and Integration of Atomic Protocols, Yousef J. Al-Houmaily, International Arab Journal of Information Technology, Vol. 5, No. 4, pp. 381-392, October 2008. Incompatibility

More information

OPAX - An Open Peer-to-Peer Architecture for XML Message Exchange

OPAX - An Open Peer-to-Peer Architecture for XML Message Exchange OPAX - An Open Peer-to-Peer Architecture for XML Message Exchange Bernhard Schandl, University of Vienna bernhard.schandl@univie.ac.at Users wishing to find multimedia material about interesting events

More information

Mobile and Heterogeneous databases Distributed Database System Transaction Management. A.R. Hurson Computer Science Missouri Science & Technology

Mobile and Heterogeneous databases Distributed Database System Transaction Management. A.R. Hurson Computer Science Missouri Science & Technology Mobile and Heterogeneous databases Distributed Database System Transaction Management A.R. Hurson Computer Science Missouri Science & Technology 1 Distributed Database System Note, this unit will be covered

More information

Reflective Java and A Reflective Component-Based Transaction Architecture

Reflective Java and A Reflective Component-Based Transaction Architecture Reflective Java and A Reflective Component-Based Transaction Architecture Zhixue Wu APM Ltd., Poseidon House, Castle Park, Cambridge CB3 0RD UK +44 1223 568930 zhixue.wu@citrix.com ABSTRACT In this paper,

More information

Distributed Objects and Remote Invocation. Programming Models for Distributed Applications

Distributed Objects and Remote Invocation. Programming Models for Distributed Applications Distributed Objects and Remote Invocation Programming Models for Distributed Applications Extending Conventional Techniques The remote procedure call model is an extension of the conventional procedure

More information

The goal of the Pangaea project, as we stated it in the introduction, was to show that

The goal of the Pangaea project, as we stated it in the introduction, was to show that Chapter 5 Conclusions This chapter serves two purposes. We will summarize and critically evaluate the achievements of the Pangaea project in section 5.1. Based on this, we will then open up our perspective

More information

Distributed Systems COMP 212. Revision 2 Othon Michail

Distributed Systems COMP 212. Revision 2 Othon Michail Distributed Systems COMP 212 Revision 2 Othon Michail Synchronisation 2/55 How would Lamport s algorithm synchronise the clocks in the following scenario? 3/55 How would Lamport s algorithm synchronise

More information

02 - Distributed Systems

02 - Distributed Systems 02 - Distributed Systems Definition Coulouris 1 (Dis)advantages Coulouris 2 Challenges Saltzer_84.pdf Models Physical Architectural Fundamental 2/60 Definition Distributed Systems Distributed System is

More information

Data Warehousing Alternatives for Mobile Environments

Data Warehousing Alternatives for Mobile Environments Data Warehousing Alternatives for Mobile Environments I. Stanoi D. Agrawal A. El Abbadi Department of Computer Science University of California Santa Barbara, CA 93106 S. H. Phatak B. R. Badrinath Department

More information

POWER AWARE MANAGEMENT OF MOBILE REAL-TIME DATABASE TRANSACTIONS IN AD-HOC NETWORKS. Le Gruenwald Shankar M. Banik

POWER AWARE MANAGEMENT OF MOBILE REAL-TIME DATABASE TRANSACTIONS IN AD-HOC NETWORKS. Le Gruenwald Shankar M. Banik POWER AWARE MANAGEMENT OF MOBILE REAL-TIME DATABASE TRANSACTIONS IN AD-HOC NETWORKS Le Gruenwald Shankar M. Banik University of Oklahoma School of Computer Science Norman, OK 73019 (ggruenwald@ou.edu;

More information

An Analysis of Mobile Transaction Methods and Limitations in Execution of M Commerce Transaction

An Analysis of Mobile Transaction Methods and Limitations in Execution of M Commerce Transaction An Analysis of Mobile Transaction Methods and Limitations in Execution of M Commerce Transaction Archana Sharma Research Scholar, Mewar University, Chittorgarh Vineet Kansal Director IT Institute of Technology

More information

Synchronisation and Coordination (Part 2)

Synchronisation and Coordination (Part 2) The University of New South Wales School of Computer Science & Engineering COMP9243 Week 5 (18s1) Ihor Kuz, Manuel M. T. Chakravarty & Gernot Heiser Synchronisation and Coordination (Part 2) Transactions

More information

CORBA Object Transaction Service

CORBA Object Transaction Service CORBA Object Transaction Service Telcordia Contact: Paolo Missier paolo@research.telcordia.com +1 (973) 829 4644 March 29th, 1999 An SAIC Company Telcordia Technologies Proprietary Internal Use Only This

More information

02 - Distributed Systems

02 - Distributed Systems 02 - Distributed Systems Definition Coulouris 1 (Dis)advantages Coulouris 2 Challenges Saltzer_84.pdf Models Physical Architectural Fundamental 2/58 Definition Distributed Systems Distributed System is

More information

A MOBILE COMMIT PROTOCOL BASED ON TIMEOUTS. Lavanya Sita Tekumalla, BE (CSE) Osmania University College of Engineering. Hyderabad , India.

A MOBILE COMMIT PROTOCOL BASED ON TIMEOUTS. Lavanya Sita Tekumalla, BE (CSE) Osmania University College of Engineering. Hyderabad , India. A MOBILE COMMIT PROTOCOL BASED ON TIMEOUTS Lavanya Sita Tekumalla, BE (CSE) Osmania University College of Engineering Hyderabad 500007, India. ABSTRACT In a mobile environment, the two phase commit protocol

More information

A NEW HIERARCHICAL TRANSACTION MODEL FOR MOBILE ADHOC NETWORK ENVIRONMENT

A NEW HIERARCHICAL TRANSACTION MODEL FOR MOBILE ADHOC NETWORK ENVIRONMENT A NEW HIERARCHICAL TRANSACTION MODEL FOR MOBILE ADHOC NETWORK ENVIRONMENT Vikram Bali 1 Rajkumar Singh Rathore 2 1 Asstt. Prof, Department of CSE, Galgotias College of Engg. & Tech., Greater Noida 2 Sr.

More information

A Concurrency Control for Transactional Mobile Agents

A Concurrency Control for Transactional Mobile Agents A Concurrency Control for Transactional Mobile Agents Jeong-Joon Yoo and Dong-Ik Lee Department of Information and Communications, Kwang-Ju Institute of Science and Technology (K-JIST) Puk-Gu Oryong-Dong

More information

FIPA Agent Software Integration Specification

FIPA Agent Software Integration Specification FOUNDATION FOR INTELLIGENT PHYSICAL AGENTS FIPA Agent Software Integration Specification Document title FIPA Agent Software Integration Specification Document number XC00079A Document source FIPA Architecture

More information

Chapter 2 Distributed Information Systems Architecture

Chapter 2 Distributed Information Systems Architecture Prof. Dr.-Ing. Stefan Deßloch AG Heterogene Informationssysteme Geb. 36, Raum 329 Tel. 0631/205 3275 dessloch@informatik.uni-kl.de Chapter 2 Distributed Information Systems Architecture Chapter Outline

More information

Weak Levels of Consistency

Weak Levels of Consistency Weak Levels of Consistency - Some applications are willing to live with weak levels of consistency, allowing schedules that are not serialisable E.g. a read-only transaction that wants to get an approximate

More information

Mobile Transaction Supports for DBMS: An Overview. Patricia Serrano-Alvarado, Claudia Roncancio, Michel Adiba. LSR-IMAG Laboratory

Mobile Transaction Supports for DBMS: An Overview. Patricia Serrano-Alvarado, Claudia Roncancio, Michel Adiba. LSR-IMAG Laboratory Mobile Transaction Supports for DBMS: An Overview Patricia Serrano-Alvarado, Claudia Roncancio, Michel Adiba LSR-IMAG Laboratory BP 72, 38402 St-Martin d'heres, France e-mail: Firstname.Lastname@imag.fr

More information

ADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE

ADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE ADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE Dave Clarke 1 THIS LECTURE At the end of this lecture you will know notations for expressing software architecture the design principles of cohesion

More information

Distributed KIDS Labs 1

Distributed KIDS Labs 1 Distributed Databases @ KIDS Labs 1 Distributed Database System A distributed database system consists of loosely coupled sites that share no physical component Appears to user as a single system Database

More information

Resource and Service Trading in a Heterogeneous Large Distributed

Resource and Service Trading in a Heterogeneous Large Distributed Resource and Service Trading in a Heterogeneous Large Distributed ying@deakin.edu.au Y. Ni School of Computing and Mathematics Deakin University Geelong, Victoria 3217, Australia ang@deakin.edu.au Abstract

More information

Database Architectures

Database Architectures Database Architectures CPS352: Database Systems Simon Miner Gordon College Last Revised: 4/15/15 Agenda Check-in Parallelism and Distributed Databases Technology Research Project Introduction to NoSQL

More information

Comprehensive Structured Context Profiles (CSCP): Design and Experiences

Comprehensive Structured Context Profiles (CSCP): Design and Experiences Comprehensive Structured Context Profiles (CSCP): Design and Experiences Sven Buchholz, Thomas Hamann, and Gerald Hübsch Department of Computer Science, Dresden University of Technology {buchholz, hamann,

More information

Introduction to Databases, Fall 2005 IT University of Copenhagen. Lecture 10: Transaction processing. November 14, Lecturer: Rasmus Pagh

Introduction to Databases, Fall 2005 IT University of Copenhagen. Lecture 10: Transaction processing. November 14, Lecturer: Rasmus Pagh Introduction to Databases, Fall 2005 IT University of Copenhagen Lecture 10: Transaction processing November 14, 2005 Lecturer: Rasmus Pagh Today s lecture Part I: Transaction processing Serializability

More information

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

Distributed Database Management System UNIT-2. Concurrency Control. Transaction ACID rules. MCA 325, Distributed DBMS And Object Oriented Databases Distributed Database Management System UNIT-2 Bharati Vidyapeeth s Institute of Computer Applications and Management, New Delhi-63,By Shivendra Goel. U2.1 Concurrency Control Concurrency control is a method

More information

Communication. Distributed Systems Santa Clara University 2016

Communication. Distributed Systems Santa Clara University 2016 Communication Distributed Systems Santa Clara University 2016 Protocol Stack Each layer has its own protocol Can make changes at one layer without changing layers above or below Use well defined interfaces

More information

Database Architectures

Database Architectures Database Architectures CPS352: Database Systems Simon Miner Gordon College Last Revised: 11/15/12 Agenda Check-in Centralized and Client-Server Models Parallelism Distributed Databases Homework 6 Check-in

More information

Security Mechanisms I. Key Slide. Key Slide. Security Mechanisms III. Security Mechanisms II

Security Mechanisms I. Key Slide. Key Slide. Security Mechanisms III. Security Mechanisms II Database Facilities One of the main benefits from centralising the implementation data model of a DBMS is that a number of critical facilities can be programmed once against this model and thus be available

More information

Fault tolerance with transactions: past, present and future. Dr Mark Little Technical Development Manager, Red Hat

Fault tolerance with transactions: past, present and future. Dr Mark Little Technical Development Manager, Red Hat Fault tolerance with transactions: past, present and future Dr Mark Little Technical Development Manager, Overview Fault tolerance Transaction fundamentals What is a transaction? ACID properties Distributed

More information

A Scalable Location Aware Service Platform for Mobile Applications Based on Java RMI

A Scalable Location Aware Service Platform for Mobile Applications Based on Java RMI A Scalable Location Aware Service Platform for Mobile Applications Based on Java RMI Olaf Droegehorn, Kirti Singh-Kurbel, Markus Franz, Roland Sorge, Rita Winkler, and Klaus David IHP, Im Technologiepark

More information

Avoidance of Bottleneck in PCS Network

Avoidance of Bottleneck in PCS Network Avoidance of Bottleneck in PCS Network Sidhi Pandey 1, Alka 2, Pratima Singh 3 1, 2, 3 (Computer Science & Engineering, Institute of Technology & Management, India) Abstract: This paper contains the concept

More information

Distributed Systems. Characteristics of Distributed Systems. Lecture Notes 1 Basic Concepts. Operating Systems. Anand Tripathi

Distributed Systems. Characteristics of Distributed Systems. Lecture Notes 1 Basic Concepts. Operating Systems. Anand Tripathi 1 Lecture Notes 1 Basic Concepts Anand Tripathi CSci 8980 Operating Systems Anand Tripathi CSci 8980 1 Distributed Systems A set of computers (hosts or nodes) connected through a communication network.

More information

Distributed Systems. Characteristics of Distributed Systems. Characteristics of Distributed Systems. Goals in Distributed System Designs

Distributed Systems. Characteristics of Distributed Systems. Characteristics of Distributed Systems. Goals in Distributed System Designs 1 Anand Tripathi CSci 8980 Operating Systems Lecture Notes 1 Basic Concepts Distributed Systems A set of computers (hosts or nodes) connected through a communication network. Nodes may have different speeds

More information

Agent-Environment for Small Mobile Devices

Agent-Environment for Small Mobile Devices -Environment for Small Mobile Devices Thomas Strang and Melanie Meyer {firstname.lastname}@dlr.de German Aerospace Center (DLR), Site Oberpfaffenhofen Institute of Communications and Navigation (KN-S)

More information

Chapter 3. Design of Grid Scheduler. 3.1 Introduction

Chapter 3. Design of Grid Scheduler. 3.1 Introduction Chapter 3 Design of Grid Scheduler The scheduler component of the grid is responsible to prepare the job ques for grid resources. The research in design of grid schedulers has given various topologies

More information

JavaSpaces technology for distributed communication and collaboration. Chih-Yao Hsieh

JavaSpaces technology for distributed communication and collaboration. Chih-Yao Hsieh JavaSpaces technology for distributed communication and collaboration Chih-Yao Hsieh Computer Science and Engineering University of Texas at Arlington chsieh@cse.uta.edu Abstract This paper will give an

More information

Distributed Databases Systems

Distributed Databases Systems Distributed Databases Systems Lecture No. 01 Distributed Database Systems Naeem Ahmed Email: naeemmahoto@gmail.com Department of Software Engineering Mehran Univeristy of Engineering and Technology Jamshoro

More information

Topics in Reliable Distributed Systems

Topics in Reliable Distributed Systems Topics in Reliable Distributed Systems 049017 1 T R A N S A C T I O N S Y S T E M S What is A Database? Organized collection of data typically persistent organization models: relational, object-based,

More information

Introduction. Distributed Systems IT332

Introduction. Distributed Systems IT332 Introduction Distributed Systems IT332 2 Outline Definition of A Distributed System Goals of Distributed Systems Types of Distributed Systems 3 Definition of A Distributed System A distributed systems

More information

Patterns Architectural Styles Archetypes

Patterns Architectural Styles Archetypes Patterns Architectural Styles Archetypes Patterns The purpose of a pattern is to share a proven, widely applicable solution to a particular problem in a standard form that allows it to be easily reused.

More information

Documentation Accessibility. Access to Oracle Support

Documentation Accessibility. Access to Oracle Support Oracle NoSQL Database Availability and Failover Release 18.3 E88250-04 October 2018 Documentation Accessibility For information about Oracle's commitment to accessibility, visit the Oracle Accessibility

More information

Chapter 19: Distributed Databases

Chapter 19: Distributed Databases Chapter 19: Distributed Databases Database System Concepts, 6 th Ed. See www.db-book.com for conditions on re-use Chapter 19: Distributed Databases Heterogeneous and Homogeneous Databases Distributed Data

More information

Proposal for Business Transaction Protocol Version 1.0

Proposal for Business Transaction Protocol Version 1.0 Proposal for Business Transaction Protocol Version 1.0 Sanjay Dalal (sanjay.dalal@bea.com) Pal Takacsi-Nagy (pal.takacsi@bea.com) Abstract Long lasting business transactions spanning multiple enterprises

More information

Middleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004

Middleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Middleware Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Outline Web Services Goals Where do they come from? Understanding middleware Middleware as infrastructure Communication

More information

Unit 9 Transaction Processing: Recovery Zvi M. Kedem 1

Unit 9 Transaction Processing: Recovery Zvi M. Kedem 1 Unit 9 Transaction Processing: Recovery 2013 Zvi M. Kedem 1 Recovery in Context User%Level (View%Level) Community%Level (Base%Level) Physical%Level DBMS%OS%Level Centralized Or Distributed Derived%Tables

More information

Transactional Agents for Pervasive Computing

Transactional Agents for Pervasive Computing Transactional Agents for Pervasive Computing Machigar Ongtang Dept. of Computer Science and Engineering, Pennsylvania State University ongtang@cse.psu.edu Ali R. Hurson Computer Science Dept., Missouri

More information

Joint Entity Resolution

Joint Entity Resolution Joint Entity Resolution Steven Euijong Whang, Hector Garcia-Molina Computer Science Department, Stanford University 353 Serra Mall, Stanford, CA 94305, USA {swhang, hector}@cs.stanford.edu No Institute

More information

MODELS OF DISTRIBUTED SYSTEMS

MODELS OF DISTRIBUTED SYSTEMS Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between

More information

A transaction is a sequence of one or more processing steps. It refers to database objects such as tables, views, joins and so forth.

A transaction is a sequence of one or more processing steps. It refers to database objects such as tables, views, joins and so forth. 1 2 A transaction is a sequence of one or more processing steps. It refers to database objects such as tables, views, joins and so forth. Here, the following properties must be fulfilled: Indivisibility

More information

Designing Issues For Distributed Computing System: An Empirical View

Designing Issues For Distributed Computing System: An Empirical View ISSN: 2278 0211 (Online) Designing Issues For Distributed Computing System: An Empirical View Dr. S.K Gandhi, Research Guide Department of Computer Science & Engineering, AISECT University, Bhopal (M.P),

More information

4/9/2018 Week 13-A Sangmi Lee Pallickara. CS435 Introduction to Big Data Spring 2018 Colorado State University. FAQs. Architecture of GFS

4/9/2018 Week 13-A Sangmi Lee Pallickara. CS435 Introduction to Big Data Spring 2018 Colorado State University. FAQs. Architecture of GFS W13.A.0.0 CS435 Introduction to Big Data W13.A.1 FAQs Programming Assignment 3 has been posted PART 2. LARGE SCALE DATA STORAGE SYSTEMS DISTRIBUTED FILE SYSTEMS Recitations Apache Spark tutorial 1 and

More information

05 Indirect Communication

05 Indirect Communication 05 Indirect Communication Group Communication Publish-Subscribe Coulouris 6 Message Queus Point-to-point communication Participants need to exist at the same time Establish communication Participants need

More information

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

Advances in Data Management - NoSQL, NewSQL and Big Data A.Poulovassilis Advances in Data Management - NoSQL, NewSQL and Big Data A.Poulovassilis 1 NoSQL So-called NoSQL systems offer reduced functionalities compared to traditional Relational DBMSs, with the aim of achieving

More information

Distributed Databases

Distributed Databases Distributed Databases These slides are a modified version of the slides of the book Database System Concepts (Chapter 20 and 22), 5th Ed., McGraw-Hill, by Silberschatz, Korth and Sudarshan. Original slides

More information

Transactions in Task Models

Transactions in Task Models Transactions in Task Models Daniel Reichart, Peter Forbrig University of Rostock, Department of Computer Science {daniel.reichart peter.forbrig}@uni-rostock.de Abstract. In this paper we propose a method

More information

AUTHENTICATION AND LOOKUP FOR NETWORK SERVICES

AUTHENTICATION AND LOOKUP FOR NETWORK SERVICES Vol.5, No.1, pp. 81-90, 2014 doi: 10.7903/ijecs.1040 AUTHENTICATION AND LOOKUP FOR NETWORK SERVICES Daniel J. Buehrer National Chung Cheng University 168 University Rd., Min-Hsiung Township, Chiayi County,

More information

Advances in Data Management Distributed and Heterogeneous Databases - 2

Advances in Data Management Distributed and Heterogeneous Databases - 2 Advances in Data Management Distributed and Heterogeneous Databases - 2 1 Homogeneous DDB Systems The key advances in homogeneous DDB systems have been in relational distributed database systems. Challenges

More information

Coping with Conflicts in an Optimistically Replicated File System

Coping with Conflicts in an Optimistically Replicated File System Coping with Conflicts in an Optimistically Replicated File System Puneet Kumar School of Computer Science Carnegie Mellon University 1. Introduction Coda is a scalable distributed Unix file system that

More information

Supporting mobility only on lower layers up to the network layer is not

Supporting mobility only on lower layers up to the network layer is not Mobile transport layer Supporting mobility only on lower layers up to the network layer is not enough to provide mobility support for applications. Most applications rely on a transport layer, such as

More information

Challenges on Combining Open Web and Dataset Evaluation Results: The Case of the Contextual Suggestion Track

Challenges on Combining Open Web and Dataset Evaluation Results: The Case of the Contextual Suggestion Track Challenges on Combining Open Web and Dataset Evaluation Results: The Case of the Contextual Suggestion Track Alejandro Bellogín 1,2, Thaer Samar 1, Arjen P. de Vries 1, and Alan Said 1 1 Centrum Wiskunde

More information

Outline. Non-Standard Database Systems. Distributed Database System. Outline. Distributed Databases

Outline. Non-Standard Database Systems. Distributed Database System. Outline. Distributed Databases Non-Standard Database Systems Distributed Databases Nikolaus Augsten nikolaus.augsten@sbg.ac.at Department of Computer Sciences University of Salzburg http://dbresearch.uni-salzburg.at SS 2017/18 Version

More information

Chapter 2 System Models

Chapter 2 System Models CSF661 Distributed Systems 分散式系統 Chapter 2 System Models 吳俊興國立高雄大學資訊工程學系 Chapter 2 System Models 2.1 Introduction 2.2 Physical models 2.3 Architectural models 2.4 Fundamental models 2.5 Summary 2 A physical

More information

A Tutorial on The Jini Technology

A Tutorial on The Jini Technology A tutorial report for SENG 609.22 Agent Based Software Engineering Course Instructor: Dr. Behrouz H. Far A Tutorial on The Jini Technology Lian Chen Introduction Jini network technology provides a simple

More information

Correctness Criteria Beyond Serializability

Correctness Criteria Beyond Serializability Comp. by: CsenthilkumaranGalleys0000875825 Date:3/11/08 Time:13:18:10 Stage:First Proof C Correctness Criteria Beyond Serializability MOURAD OUZZANI 1,BRAHIM MEDJAHED 2,AHMED Au1 K. ELMAGARMID 3 1 Cyber

More information

Chapter 19: Distributed Databases

Chapter 19: Distributed Databases Chapter 19: Distributed Databases Chapter 19: Distributed Databases Heterogeneous and Homogeneous Databases Distributed Data Storage Distributed Transactions Commit Protocols Concurrency Control in Distributed

More information

View Generator (VG): A Mobile Agent Based System for the Creation and Maintenance of Web Views*

View Generator (VG): A Mobile Agent Based System for the Creation and Maintenance of Web Views* View Generator (VG): A Mobile Agent Based System for the Creation and Maintenance of Web Views* George Samaras Dept. of Computer Science Univ. of Cyprus CY-1678 Nicosia, Cyprus cssamara@ucy.ac.cy Constantinos

More information

CHAPTER - 4 REMOTE COMMUNICATION

CHAPTER - 4 REMOTE COMMUNICATION CHAPTER - 4 REMOTE COMMUNICATION Topics Introduction to Remote Communication Remote Procedural Call Basics RPC Implementation RPC Communication Other RPC Issues Case Study: Sun RPC Remote invocation Basics

More information

MODELS OF DISTRIBUTED SYSTEMS

MODELS OF DISTRIBUTED SYSTEMS Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between

More information

PERSONAL communications service (PCS) provides

PERSONAL communications service (PCS) provides 646 IEEE/ACM TRANSACTIONS ON NETWORKING, VOL. 5, NO. 5, OCTOBER 1997 Dynamic Hierarchical Database Architecture for Location Management in PCS Networks Joseph S. M. Ho, Member, IEEE, and Ian F. Akyildiz,

More information

Commit Protocols and their Issues in Distributed Databases

Commit Protocols and their Issues in Distributed Databases Proceedings of the 4 th National Conference; INDIACom-2010 Computing For Nation Development, February 25 26, 2010 Bharati Vidyapeeth s Institute of Computer Applications and Management, New Delhi Commit

More information

Distributed File Systems. CS432: Distributed Systems Spring 2017

Distributed File Systems. CS432: Distributed Systems Spring 2017 Distributed File Systems Reading Chapter 12 (12.1-12.4) [Coulouris 11] Chapter 11 [Tanenbaum 06] Section 4.3, Modern Operating Systems, Fourth Ed., Andrew S. Tanenbaum Section 11.4, Operating Systems Concept,

More information

Mobile and Heterogeneous databases

Mobile and Heterogeneous databases Mobile and Heterogeneous databases Heterogeneous Distributed Databases Transaction Processing A.R. Hurson Computer Science Missouri Science & Technology 1 Note, this unit will be covered in two lectures.

More information

Executing Evaluations over Semantic Technologies using the SEALS Platform

Executing Evaluations over Semantic Technologies using the SEALS Platform Executing Evaluations over Semantic Technologies using the SEALS Platform Miguel Esteban-Gutiérrez, Raúl García-Castro, Asunción Gómez-Pérez Ontology Engineering Group, Departamento de Inteligencia Artificial.

More information

Persistent Oberon Language Specification

Persistent Oberon Language Specification Persistent Oberon Language Specification Luc Bläser Institute of Computer Systems ETH Zurich, Switzerland blaeser@inf.ethz.ch The programming language Persistent Oberon is an extension of Active Oberon

More information

Management of Protocol State

Management of Protocol State Management of Protocol State Ibrahim Matta December 2012 1 Introduction These notes highlight the main issues related to synchronizing the data at both sender and receiver of a protocol. For example, in

More information

Garbage Collection (2) Advanced Operating Systems Lecture 9

Garbage Collection (2) Advanced Operating Systems Lecture 9 Garbage Collection (2) Advanced Operating Systems Lecture 9 Lecture Outline Garbage collection Generational algorithms Incremental algorithms Real-time garbage collection Practical factors 2 Object Lifetimes

More information

OCL Support in MOF Repositories

OCL Support in MOF Repositories OCL Support in MOF Repositories Joachim Hoessler, Michael Soden Department of Computer Science Technical University Berlin hoessler@cs.tu-berlin.de, soden@cs.tu-berlin.de Abstract From metamodels that

More information

Chapter 20: Database System Architectures

Chapter 20: Database System Architectures Chapter 20: Database System Architectures Chapter 20: Database System Architectures Centralized and Client-Server Systems Server System Architectures Parallel Systems Distributed Systems Network Types

More information

Chapter 18: Database System Architectures.! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems!

Chapter 18: Database System Architectures.! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Chapter 18: Database System Architectures! Centralized Systems! Client--Server Systems! Parallel Systems! Distributed Systems! Network Types 18.1 Centralized Systems! Run on a single computer system and

More information

CS514: Intermediate Course in Computer Systems. Lecture 38: April 23, 2003 Nested transactions and other weird implementation issues

CS514: Intermediate Course in Computer Systems. Lecture 38: April 23, 2003 Nested transactions and other weird implementation issues : Intermediate Course in Computer Systems Lecture 38: April 23, 2003 Nested transactions and other weird implementation issues Transactions Continued We saw Transactions on a single server 2 phase locking

More information