DBSYSTEMS Distributed Database Systems University of Manitoba Asper School of Business 3500 DBMS Bob Travica Updated 2013 1 of 24.

Slides:



Advertisements
Similar presentations
Chapter 10: Designing Databases
Advertisements

Concepts of Database Management Seventh Edition
Distributed Databases John Ortiz. Lecture 24Distributed Databases2  Distributed Database (DDB) is a collection of interrelated databases interconnected.
Network+ Guide to Networks, Fourth Edition
MIS 385/MBA 664 Systems Implementation with DBMS/ Database Management Dave Salisbury ( )
Chapter 13 (Web): Distributed Databases
Class 7 Distributing Business and Systems Asper School of Business - MBA Program 6150 Management of Information Systems & Technology April-June 2009 Instructor:
Technical Architectures
Distributed Databases Logical next step in geographically dispersed organisations goal is to provide location transparency starting point = a set of decentralised.
15 Chapter 15 Web Database Development Database Systems: Design, Implementation, and Management, Fifth Edition, Rob and Coronel.
INTERNET DATABASE Chapter 9. u Basics of Internet, Web, HTTP, HTML, URLs. u Advantages and disadvantages of Web as a database platform. u Approaches for.
Distributed Database Management Systems
Jerry Post McGraw-Hill/Irwin Copyright © 2005 by The McGraw-Hill Companies, Inc. All rights reserved. Database Management Systems Chapter 10 Distributed.
Overview Distributed vs. decentralized Why distributed databases
INTERNET DATABASE. Internet and E-commerce Internet – a worldwide collection of interconnected computer network Internet – a worldwide collection of interconnected.
Asper School of Business University of Manitoba Systems Analysis & Design Instructor: Bob Travica System architectures Updated: November 2014.
Introduction to Web Interface Technology (CSE2030)
Integration of Applications MIS3502: Application Integration and Evaluation Paul Weinberg Adapted from material by Arnold Kurtz, David.
12 Chapter 12 Client/Server Systems Hachim Haddouti.
McGraw-Hill/Irwin Copyright © 2007 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 17 Client-Server Processing, Parallel Database Processing,
Chapter 9: The Client/Server Database Environment
Introduction to Web Interface Technology (CSE2030)
Network+ Guide to Networks, Fourth Edition Chapter 1 An Introduction to Networking.
Definition of terms Definition of terms Explain business conditions driving distributed databases Explain business conditions driving distributed databases.
Distributed Systems: Client/Server Computing
4/25/ Application Server Issues for the Project CSEP 545 Transaction Processing for E-Commerce Philip A. Bernstein Copyright ©2003 Philip A. Bernstein.
DATABASE MANAGEMENT SYSTEMS 2 ANGELITO I. CUNANAN JR.
Distributed Databases
Jerry Post Copyright © 2013 DATABASE Database Management Systems Chapter 11 Distributed Databases 1.
Lecture The Client/Server Database Environment
Client-Server Processing and Distributed Databases
The Client/Server Database Environment
1 Web Database Processing. Web Database Applications Static Report Publishing a report is prepared from a database application and exported to HTML DB.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Chapter 12 Designing Distributed and Internet Systems
Network+ Guide to Networks, Fourth Edition Chapter 1 An Introduction to Networking.
DATABASE 1 Distributed Databases  Definition  Advantages / Uses  Problems / Complications  Client-Server / SQL Server  Microsoft Access Britain Germany.
Client/Server Databases and the Oracle 10g Relational Database
1 Distributed and Parallel Databases. 2 Distributed Databases Distributed Systems goal: –to offer local DB autonomy at geographically distributed locations.
IMS 4212: Distributed Databases 1 Dr. Lawrence West, Management Dept., University of Central Florida Distributed Databases Business needs.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
1 Chapter 3 Database Architecture and the Web Pearson Education © 2009.
11/16/2012ISC329 Isabelle Bichindaritz1 Web Database Application Development.
Csi315csi315 Client/Server Models. Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network.
Unit – I CLIENT / SERVER ARCHITECTURE. Unit Structure  Evolution of Client/Server Architecture  Client/Server Model  Characteristics of Client/Server.
Week 5 Lecture Distributed Database Management Systems Samuel ConnSamuel Conn, Asst Professor Suggestions for using the Lecture Slides.
The Client/Server Database Environment Ployphan Sornsuwit KPRU Ref.
1 Welcome to CSC 301 Web Programming Charles Frank.
Lecture 22: Client-Server Software Engineering
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
Oracle's Distributed Database Bora Yasa. Definition A Distributed Database is a set of databases stored on multiple computers at different locations and.
Elmasri and Navathe, Fundamentals of Database Systems, Fourth Edition Copyright © 2004 Pearson Education, Inc. Slide 2-1 Data Models Data Model: A set.
Distributed Databases
Databases Illuminated
INTRODUCTION TO DBS Database: a collection of data describing the activities of one or more related organizations DBMS: software designed to assist in.
Distributed database system
MBA 664 Database Management Systems Dave Salisbury ( )
Introduction to Distributed Databases Yiwei Wu. Introduction A distributed database is a database in which portions of the database are stored on multiple.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
1 Information Retrieval and Use De-normalisation and Distributed database systems Geoff Leese September 2008, revised October 2009.
1 LM 6 Database Applications Dr. Lei Li. Learning Objectives Explain three components of a client-server system Describe differences between a 2-tiered.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
Distributed Databases
The Client/Server Database Environment
The Client/Server Database Environment
Chapter 9: The Client/Server Database Environment
An Introduction to Computer Networking
Distributed Databases
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
Introduction of Week 14 Return assignment 12-1
Presentation transcript:

DBSYSTEMS Distributed Database Systems University of Manitoba Asper School of Business 3500 DBMS Bob Travica Updated of 24

DBSYSTEMS Distributed Databases (DDB) Concept Britain Germany France Italy SELECT Sales FROM Britain.Sales UNION SELECT Sales FROM France.Sales UNION SELECT Sales FROM Italy.Sales  Multiple independent systems  Each has DBMS engine, queries, locking, transactinos, etc.  Usually on different machines & locations  Can be different hardware, OS, software. 2 of 24

DBSYSTEMS Database Zeus Database Apollo Database Athena United States England France There must be different databases as opposed to a central database (teleprocessing) Network is a part of DDB system Distributed Database System (DDBS) Concept 3 of 24

DBSYSTEMS Teleprocessing vs. DDBS DB Loc 1, central Loc 2 Loc 3 DB Loc1 DB Loc2 Teleprocessing DB System Distributed DB System 4 of 24

DBSYSTEMS DDBS Rules  Golden Rule - Transparency: the user should not know or care that the database is distributed and how. User is independent of any constraint.  Specifically:  No reliance on a central site.  Continuous operation.  Location independence.  Fragmentation (Partitioning) independence  Replication independence.  Support to distributed query processing.  Support to distributed transaction management.  Hardware independence.  Operating system independence.  Network independence.  DBMS independence. (C.J. Date) 5 of 24

DBSYSTEMS DDBS Features and Benefits  Each database can continue to run even if a portion fails.  Performance gains in contrast to teleprocessing.  Data and hardware can be moved without affecting operations or users.  Operations expansion possible  System expansion and upgrades possible 6 of 24

DBSYSTEMS More on DDBS Benefits  Support to operations’ dispersion  Work and data are segmented on departments.  Work and data are geographically segmented.  Improved local performance  Most updates and queries are performed locally.  Local control and responsibility over data.  Can still combine data across the system.  Scalability and expansion support Local transactions Future expansion Combine data 7 of 24

DBSYSTEMS DDBS Designs Two typical designs PartitionedReplicated Partitioned- Replicated Hybrid Teleprocessing Technical & economic requirements high low Partition Replication C B A C B A C B A C B A C B A Loc 1 Loc 2 Loc 3 8 of 24 Loc 1 Loc 2 Loc 3

DBSYSTEMS  Choose hardware and DBMS vendor, and network.  Set up network and DBMS connections.  Choose locations for data segments.  Create backup plan and strategy.  Design local views (customized queries).  Design stress tests (max. loads, failure cases). Creating Distributed Database System 9 of 24

DBSYSTEMS Query Processing in Partitioned DDBS  Networks (LANs, WANs) infleunce the speed of data transfer.  Goal is to minimize data transfers  Each system must be capable of evaluating queries.  Results depend heavily on how the system joins tables. Disk drive LAN WAN 10 of 24

DBSYSTEMS Query Optimization in Partitioned DBS  Example  NY: tbl.Customers: 1 M rows (Marketing)  LA: tbl.Product: 10 M rows (Production)  Chicago: tbl.Sale: 20 M rows (main Retail op’s)  Query in Chicago: List customer and product data for blue products sold on 1-Mar Must join the 3 tables.  Database is partitioned according to spatial dispersion of core operations (above). Only sales data are at the locale where query is run (Chicago).  Bad query design : Transfer entire tables Product and Customer to Chicago 11 of 24

DBSYSTEMS Customer(C#, …) 1,000,000 rows NY Product(P#, Color…) 10,000 rows Sale(S#, C#, Date) 20,000,000 rows SaleItem(S#, P#,…) 50,000,000 rows Chicago LA returns requested customer records  Better query design qry1: SELECT C# FROM Sale WHERE Date=3/1/2006; qry2: SELECT P# FROM SaleItem INNER JOIN Sale ON SaleItem.S#=Sale.S# WHERE Date=3/1/2006; qry3: SELECT * FROM Customer WHERE C# in qry1’s output; qry4: SELECT * FROM Product WHERE P# in qry2’s output AND Color like “blue”; requests customer records for certain customer IDs requests product records for certain Product IDs returns requested product records 12 of 24

DBSYSTEMS Replicated DDBS Design  Rule of thumb: Keep the data close to the location at which they are used.  Goals:  Minimize transmissions  Improve performance  Replication Manager Britain: Customers & Sales Spain: Customers & Sales Britain Britain: Customers & Sales Spain: Customers & Sales Spain Periodic (batch) updates  Decision support systems: Use replicated data warehouse. 13 of 24

DBSYSTEMS  Design: Partitioned database  The concurrency issues that apply to centralized database become even more difficult in a partitioned database  Challenges: Slow network traffic Site unavailable Concurrency (more people trying to change the same data at the same time) => locks management DDBS and Concurrent Access 14 of 24

DBSYSTEMS Two-Phase Commit  Ensuring data consistency across the system.  In updating data, DBMS initiating update becomes Coordinator.  Two phases: 1. Get Ready: Coordinator sends new data and a request for update to all DDB parts.  DB partitions store new data in logs, and report update status. 2. Execute:  2.1 If all DDB parts ready for update, Coordinator requests COMMIT.  2.2 If any DDB part not ready, Coordinator requests ROLLBACK, and the update procedure repeats. DB Partition 1 (Master price list) Initiate Transaction (Reduce price of cookies for 5%) DB Partition 2 (Store A Product tbl) Partition 3 (Store B Product tbl) 1. Prepare to update. All agree? 2. Commit OK? OK! Go! Coordinator 15 of 24

DBSYSTEMS Client-Server DDB  Server performs database tasks at request of clients.  Clients handle front-end tasks and small data tables that are not shared. Database Server Client Front-end (Forms, Queries, Reports) Query Request Query Output Database Server Update Request Update Response 16 of 24

DBSYSTEMS Three-Tier Client-Server Clients Middleware Database Servers Front-end Databases Transactions Legacy systems Database links Business rules Code 17 of 24

DBSYSTEMS Client-Server Architecture for Internet Client Browsers DBS Middleware Database Servers Web Server Application Server Other Systems 18 of 24

DBSYSTEMS Technologies for DDB Used in E-Commerce - Open Database Connectivity (ODBC) - Microsoft’s Active Data Objects (ADO) - Client--Web Server Connectors (CGI) - Data transfer (XML, SOAP) 19 of 24

DBSYSTEMS Open Database Connectivity: ODBC  Since 1992, SQL Access Group; Microsoft’s decisive support  Provides SQL access to different DBMSes  ODBC handles:  Login to database.  Send query.  Interpret result.  Exchange data. Oracle Database Application ODBC driver CLIENT ODBC driver SELECT … Output SQL Database ODBC driver SERVER 20 of 24

DBSYSTEMS Active Data Objects (ADO) Relational Database Server Front end (report) ADO objects Client SELECT … Output ADO - Microsoft object-based technology for accessing data Data access at records level (“cursor programming”) via classes: recordset - similar to table rowset - looser structure Non-relational Database Server Builds on concepts of OO and cursor (the space for storing records in DB systems) Used in Active Server Pages (ASP)* 21 of 24

DBSYSTEMS Client—Web Server Connectors - HTML input needs to be translated for servers down the stream - Output needs to be put back into HTML format - Common Gateway Interface (e.g., CGI programming in PERL) 22 of 24

DBSYSTEMS Communication technology - Extensible Markup Language (XML) & SOAP - SQL can extract DB data into XML documents. So, any database schema can be described => document transfer, validation and format support (e.g., supplier documents). - XML requires additional software for extracting data (parser) and formatting display (style sheets). - Note: Document Type Definition (Declaration) 23 of 24

DBSYSTEMS Extensible Markup Language (XML) & SOAP - SOAP (Simple Object Access Protocol) - protocol for exchanging structured (marked up) data in distributed environment - SOAP uses XML technologies to define an extensible messaging framework, defining message that can be exchanged over a variety of underlying protocols (started with HTTP, hence “Simple”; complex indeed). (See: ) - SOAP and XML provide foundations for Web services – distributed application software, stored across nets, running on different operating systems and devices, written in different programming languages, and made by different vendors (e.g.,.NET) ( More... )More of 24