Verteilte und föderierte Datenbanken und das Grid



Ähnliche Dokumente
Definition Informationssystem

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse?

Datenbanken. Prof. Dr. Bernhard Schiefer.

Carl-Christian Kanne. Einführung in Datenbanken p.1/513

Kapitel 14 Verteilte DBMS

7. Übung - Datenbanken

Allgemeines zu Datenbanken

Nutzung von GiS BasePac 8 im Netzwerk

Lokale Installation von DotNetNuke 4 ohne IIS

Virtual Roundtable: Business Intelligence - Trends

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

Relationale Datenbanken Datenbankgrundlagen

Seminar Informationsintegration und Informationsqualität. Dragan Sunjka. 30. Juni 2006

Lizenzierung von SharePoint Server 2013

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

SharePoint Demonstration

SJ OFFICE - Update 3.0

Support-Tipp Mai Release Management in Altium Designer

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

OP-LOG

Lizenzierung von SharePoint Server 2013

Der Begriff Cloud. Eine Spurensuche. Patric Hafner geops

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee Berlin Tel.:+49(0) Fax.:+49(0)

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Anleitung zum Prüfen von WebDAV

Themen. M. Duffner: Datenbanksysteme

Internet Explorer Version 6

Use Cases. Use Cases

XINDICE. The Apache XML Project Name: J acqueline Langhorst blackyuriko@hotmail.de

NEWSLETTER // AUGUST 2015

DB2 Kurzeinführung (Windows)

Updatehinweise für die Version forma 5.5.5

Formular»Fragenkatalog BIM-Server«

Einführung. Informationssystem als Abbild der realen Welt

(1) Mit dem Administrator Modul werden die Datenbank, Gruppen, Benutzer, Projekte und sonstige Aufgaben verwaltet.

Version smarter mobile(zu finden unter Einstellungen, Siehe Bild) : Gerät/Typ(z.B. Panasonic Toughbook, Ipad Air, Handy Samsung S1):

Virtual Private Network

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Datenbanken I - Übung 1

1 Die Active Directory

How-to: Webserver NAT. Securepoint Security System Version 2007nx

Lizenzen auschecken. Was ist zu tun?

HANDBUCH LSM GRUNDLAGEN LSM

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware

Java Enterprise Architekturen Willkommen in der Realität

SANDBOXIE konfigurieren

Kapitel 10 Aktive DBMS

pro4controlling - Whitepaper [DEU] Whitepaper zur CfMD-Lösung pro4controlling Seite 1 von 9

Anleitung Redmine. Inhalt. Seite 1 von 11. Anleitung Redmine

ACCESS das Datenbankprogramm. (Einführung) DI (FH) Levent Öztürk

Bedienungsanleitung. Matthias Haasler. Version 0.4. für die Arbeit mit der Gemeinde-Homepage der Paulus-Kirchengemeinde Tempelhof

Installationsanleitung dateiagent Pro

mysoftfolio360 Handbuch

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren

Hilfe Bearbeitung von Rahmenleistungsverzeichnissen

IBM SPSS Data Access Pack Installationsanweisung für Windows

Installation der SAS Foundation Software auf Windows

Datenbanken Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt:

Installation und Inbetriebnahme von SolidWorks

3. Stored Procedures und PL/SQL

WS 2002/03. Prof. Dr. Rainer Manthey. Institut für Informatik III Universität Bonn. Informationssysteme. Kapitel 1. Informationssysteme

Metadateneditoren für ArcGIS

RMeasy das SAP IS U Add On für Versorgungsunternehmen. Optimieren Sie Ihre Prozesse in Kundengewinnung und Kundenbindung.

ANYWHERE Zugriff von externen Arbeitsplätzen

e LEARNING Kurz-Anleitung zum Erstellen eines Wikis 1. Wiki erstellen

ERPaaS TM. In nur drei Minuten zur individuellen Lösung und maximaler Flexibilität.

Anlegen eines SendAs/RecieveAs Benutzer unter Exchange 2003, 2007 und 2010

Externe Authentifizierung. Externe Authentifizierung IACBOX.COM. Version Deutsch

Primzahlen und RSA-Verschlüsselung

GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT

Energetische Klassen von Gebäuden

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Installation SQL- Server 2012 Single Node

PHP Kurs Online Kurs Analysten Programmierer Web PHP

Backup der Progress Datenbank

Prüfungsnummer: Prüfungsname: (Deutsche. Version: Demo. Upgrading Your Skills to MCSA Windows 8.

2 Datei- und Druckdienste

MS Outlook Integration

Grundlagen von Datenbanken

Die Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.

Lizenzierung von System Center 2012

Step by Step Remotedesktopfreigabe unter Windows Server von Christian Bartl

Test zur Bereitschaft für die Cloud

Handbuch. Artologik EZ-Equip. Plug-in für EZbooking version 3.2. Artisan Global Software

Information-Design-Tool

Hinweise zum Update des KPP Auswahltools (Netzwerkinstallation) auf Version 7.2

HowTo: Einrichtung & Management von APs mittels des DWC-1000

Windows 8 Lizenzierung in Szenarien

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller

Windows Small Business Server (SBS) 2008

Whitepaper. Produkt: combit Relationship Manager. Einbindung externer FiBu-/Warenwirtschaftsdaten. combit GmbH Untere Laube Konstanz

Speicher in der Cloud

Einfache und effiziente Zusammenarbeit in der Cloud. EASY-PM Office Add-Ins Handbuch

Verwendung des Terminalservers der MUG

SALSAH eine virtuelle Forschungsumgebung für die Geisteswissenschaften

Transkript:

Verteilte und föderierte Datenbanken und das Grid Peter Brezany Institut für Softwarewissenschaft Universität Wien Tel. : 01/4277 38825 E-mail : brezany@par.univie.ac.at Sprechstunde: Dienstag 11.30-12.30 1 Lernziele Prinzipien von verteilten und föderierten Datenbanksystemen Ideen, wie Datenbanken in das Grid eingebunden werden können. In Richtung auf Datenbankservices 2 Page 1

Einführung In der ersten Generation von Grid Anwendungen nur einige nutzten Datenbanken (DB), um wissenschaftliche Daten zu speichern fast alle nutzten files. In der nächsten Generation wird DB-Integration mit dem Grid wichtig. Es ist nicht möglich, dieses Ziel nur durch Erweiterung von existierenden Grid services, die files handle, zu erreichen. DB bieten eine viel reichere Menge von Operationen (z.b. queries, Transaktionen, usw.). Es gibt grössere Heterogenität zwischen DB-Paradigmen (z.b. relationale und objekt-orientierte (OO) DB; in einem Paradigm können verschiedene DB Produkte verschiedene Funktionalität und Schnittstellen haben) als zwischen File-Systemen. Es ist notwendig folgende Datenquellen zu integrieren: Strukturierte Daten (z.b. Daten aus relationalen und OO DB) Semi-strukturierte Daten wie XML Relativ unstrukturierte Daten, wie Zeitschrift- und Konferenzartikel. 3 Einführung (2) Vorhandene DB Management Systeme (DBMS) bieten keine Grid Integration an. Sie sind doch das Resultat (Sicherheit, gute Leistung, Verlässigkeit, usw.) langjähriger Bemühungen von Tausenden Personen. Ausbau neuer Grid-orientierter DBMS ganz von vorn ist nicht real; das wäre eine Aufwandverschwendung. Das Forschungsziel: Einbindung von existierenden DBMS in das Grid. Limitierung: Einige verlangten Attribute müssen trotzdem direkt in das unterliegende DBMS integriert werden. 4 Page 2

Bereiche von Grid DB Anwendungen Speicherung und Zurückholung (retrieval) von Daten Hauptaufgabe Metadaten. Information über Information; sie fügen den Kontext zu den Daten hinzu; es ist möglich Daten ausfindig zu machen, ohne zu wissen, wo die Daten gespeichert sind oder ihren physischen Namen zu kennen. Relationale DB sind momentan die Hauptmetode für Speicherung von Metadaten auf dem Grid sie unterstützen Metadatenabfragen. Herkunft von Daten. Sie bieten Information über die Quelle und folgende Geschichte von Daten (Datenschaffung, Quelle, Besitzer, welche Bearbeitung stattfand, welche Analyse angewendet wurde, Vetrauen in die Qualität der Information)...., z.b. Abrechnungsinformation benutzt für Gebührberechnung. 5 Grid-DB Forschung It is basiert auf Technologie der verteilten und föderierten Datenbanken Eine verteilte Datenbank (VDB) ist eine Datenbank, die absichtlich über gewisse Zahl von Orten verteilt wurde. Eine VDB wird als Ganzes entworfen, und ist mit ziemlich zentralisierter Steuerung assoziiert. In einer föderierten Datenbank (FDB) tragen viele Datenbanken Daten und Ressourcen zu einer Multidatenbank-Föderation bei, doch hat jeder Teilnehmer volle lokale Autonomie. 6 Page 3

Prinzipien von Verteilten Datenbank-Systemen (Distributed Database Systems DDBS) DDBS = Netzwerk von Computern (Sites) + Datenbank DDBS = Verteilung + Integration Netzwerk = + DDBS Datenbank 7 Geschichtlicher Rückblick Ende der 60er Anfang der 70er ging man zunehmend dazu über Datenbanksysteme zu benutzen, um die Datenunabhängigkeit der Anwendungsprogramme zu erhöhen, transaktionsorientierte Verarbeitung zu ermöglichen, Mehrbenutzerbetrieb zu realisieren, sowie die Recovery-Funktionen zu verbessern. Entstehen von Rechenzentren, wodurch die Betriebsorganisation zentralisiert wurde! Die Datenmenge wuchsen immer weiter an zusammengehörende Datenbestände wurden auf verschiedene Datenbanken verteilt. Dadurch entstanden Probleme mit der Konsistenthaltung der Daten. In den 80iger und 90iger Jahren konnten durch Onlineanwendungen bislang Getrennte Anwendungen und Datenbestände zusammengeführt werden. Deshalb wurden integrierte verteilte Informationssysteme realisiert. 8 Page 4

Transaktion - Definition Transaktion: Besteht aus einer Sequenz von Leseund Schreiboperationen auf eine Datenbank zusammen mit Berechnungsschritten Transaction management behandelt das Problem die Datenbank immer in einen konsistenten Zustand zu halten, auch wenn gleichzeitige Zugriffe und Fehler auftreten. 9 Definition A distributed database is a collection of multiple, logically interrelated databases distributed over a computer network. A distributed database management system is the software that permits the management of the DDBS and makes the distribution transparent to the users. 10 Page 5

Zentrale Datenbank in einem Netzwerk Boston Edmonton Communication Network Paris San Francisco 11 Verteilte Datenbankstruktur Boston Angestellte Paris Angestellte Boston Projekte Boston Edmonton Edmonton Angestellte Paris Projekte Edmont Projekte Paris Communication Network San Francisco Paris Angestellte Paris Projekte Boston Angestellte Boston Projekte San Francisco Angestellte San Francisco Projekte 12 Page 6

Transparentes Management Datenunabhängigkeit Netzwerk Transparenz Replizierungs- bzw. Kopiertransparenz Fragmentierungstransparenz 13 Verbesserte Leistung Ein DBMS teilt die Datenbank und erlaubt es den Daten somit sehr sehr nahe ihrem Ort, wo sie gebraucht werden, gespeichert zu werden. dies hat 2 Vorteile: 1. Seit jeder Knoten einen Teil der Daten bewältigt, ist der Kampf um Ressourcen wie CPU nicht mehr so wichtig wie in zentralisierten Datenbanken 2. Lokalisierung vermindert die Verzögerung bei entfernten Aufrufen 14 Page 7

5. Architektur von DBMS Die Idee hinter dem ANSI/SPARC Modell ist die Datenunabhängigkeit der Daten gegenüber Veränderungen der Speicherstrukturen. Das DBMS ist eine Schnittstelle zu den Daten. 15 Architekturmodell 16 Page 8

Architektur von DBMS Client - Server Architektur Verteilte Datenbank Architektur Multi Datenbank (Föderierte) Architektur 17 Client/Server Architektur Hier gibt es typischerweise einen zentralen Datenbank-Server und eine größere Anzahl vernetzter Arbeitsplatzrechner, die keine relevanten Daten speichern. Der Benutzer am Arbeitsplatzrechner sieht die volle Funktionalität des DBMS. Das System verhält sich wie ein zentrales Datenbanksystem, die Kommunikation ist für den Benutzer transparent 18 Page 9

Verteiltes Datenbanksystem Hier gibt es mehrere Datenbankserver, wobei bestimmte Daten auf nur einem Rechner oder auch auf mehreren (replizit) gespeichert sein können. Eine virtuelle Datenbank, deren Komponenten physisch in einer Anzahl unterschiedlicher, real existierender DBMS abgebildet werden. Transaktionen können in diesem Fall über mehrere DBMS laufen. Sammlung von Daten, die Aufgrund gemeinsamer, verknüpfender Eigenschaften dem gleichen System angehören Auf versch. Rechnern im Netzwerk verteilt sind Wobei jeder Rechner seine eigene Datenbank besitzt Autonom lokal Aufgaben abwickeln kann 19 Verteiltes Datenbanksystem - gleichzeitige Benutzung der Rechenleistung mehrerer Rechner - Engpaß in zentralen Datenbanksystemen bei Zugriff auf die Daten wird vermieden, da die Daten verteilt sind (ggf. repliziert) - Daten werden von einem Datenbanksystem verwaltet - Verteilungstransparenz - Grundlage: 4-Ebenen-Schema-Architektur 20 Page 10

Verteiltes Datenbanksystem externes Schema 1... externes Schema N konzeptionelles Schema lokales konzept. Schema lokales konzept. Schema... lokales konzept. Schema lokales internes Schema lokales internes Schema... lokales internes Schema 4 - Ebenen - Schema - Architektur 21 Multidatenbanksystem - Ein MDBS ist ein Verbund von mehreren Datenbanksystemen. - Das Konzeptionelle Schema repräsentiert nur den Teil von Daten, den die lokalen DBMS teilen wollen. - Auf jedes DBS können lokale Anwendungen zugreifen. - Jedes DBS kann Daten enthalten, welche keine Beziehung zu Daten anderer DBS haben. 22 Page 11

Multidatenbanksystem GES GES GES LES LES LES GKS LES LES LES LKS 1... LKS n LIS 1... LIS n Modell mit globalem konzeptionellem Schema 23 Multidatenbanksystem MDB-Schicht ES 1 ES 2 ES 3 Lokale System - Schicht LKS 1 LKS 2 LKS 3 LIS 1 LIS 2 LIS 3 Modell ohne globales konzeptionelles Schema 24 Page 12

Design Entwurfsmethodik top-down: von den Anforderungen zum Systementwurf; geeignet für Neuentwicklungen. bottom-up: Integration bestehender Datenbanken zu einer verteilten; typisch bei heterogenen Datenbanken. Datenverteilung Fragmentierung der Daten zur Bildung logischer Einheiten, Verteilung der Fragmente auf den Sites: Allokation aller Fragmente an jeder Site (volle Replikation) oder jedes Fragment an mehr als einer Site (partielle Replikation) oder jedes Fragment an genau einer Site (Partitionierung). 25 Die Trennung von Fragmentierung und Allokation dient der Vereinfachung des Entwurfs. Globales Schema: Definition der Relationen eines vdbs ohne Berücksichtigung der Verteilung, Fragmentierungsschema: Definition der Abbildung zwischen globalen Relationen und Fragmenten, Allokationsschema: Definition der Abbildung zwischen Fragmenten und Sites. Der Zugriff zu den Daten soll hinsichtlich Fragmentierung, Lokation, und Replikation transparent sein. 26 Page 13

R1 R1,1 R R2,1 S1 R2 R3 R1,2 Globale Relation R4 R2,2 S2 Fragmente Fragmente und ihre Allokation Allokation an den Sites R3,3 R4,3 S3 27 Beispiel: JNO JNAME BUDGET LOC J1 Instrumentation 150000 Montreal J2 Database Develop. 135000 New York J3 CAD/CAM 250000 New York J4 Maintenance 310000 Paris JNO JNAME BUDGET LOC J1 Instrumentation 150000 Montreal J2 Database Develop. 135000 New York horizontale Fragmentierung JNO JNAME BUDGET LOC J3 CAD/CAM 250000 New York J4 Maintenance 310000 Paris 28 Page 14

JNO J1 J2 J3 Beispiel: JNO JNAME BUDGET LOC Importance low high low J1 Instrumentation 150000 Montreal J2 Database Develop. 135000 New York J3 CAD/CAM 250000 New York J4 Maintenance 310000 Paris J4 high abgeleitete horizontale Fragmentierung JNO JNAME BUDGET LOC J1 Instrumentation 150000 Montreal J3 CAD/CAM 250000 New York JNO JNAME BUDGET LOC J2 Database Develop. 135000 New York J4 Maintenance 310000 Paris 29 Beispiel: JNO JNAME BUDGET LOC J1 Instrumentation 150000 Montreal J2 Database Develop. 135000 New York J3 CAD/CAM 250000 New York J4 Maintenance 310000 Paris JNO BUDGET J1 150000 J2 135000 J3 250000 J4 310000 vertikale Fragmentierung JNO JNAME LOC J1 Instrumentation Montreal J2 Database Develop. New York J3 CAD/CAM New York J4 Maintenance Paris 30 Page 15

Allokation Sei F = {F1,..., Fn} eine Menge von Fragmenten, S = {S1,..., Sm} ein Netzwerk gegeben durch die Menge seiner Sites, und Q = {Q1,..., Qp} die Menge der relevanten Anwendungen. Allokationsproblem: Optimaltätskriterium: Was ist die optimale Zuordnung von F zu S bzgl. Q? Minimalität der Kosten gegeben durch die Speicherkosten der Fi an den Sites Sj, der Anfragekosten für Fi an Site Sj, der Änderungskosten der Fi an allen Sites an den sie gespeichert sind, und die Kosten der Datenkommunikation. Performanz im Sinne von Antwortzeiten oder Systemdurchsatz. 31 A Typical Federated System Architecture 32 Page 16

Integration von Datenbanken in das Grid Grid-enabled version of JDBC/ODBC - The core set of functionality offered by JDBC/ODBC does not include a number of operations to fulfil Grid database requirements. Service-based approach shown in the next slide, with a service wrapper placed between the Grid and the DBS 33 Integrating Databases into the Grid (2) 34 Page 17

Federating Database Systems Across the Grid A Grid application interfacing directly to a set of DBS 35 Federating Database Systems Across the Grid (2) The virtual database service provides the illusion that a singe DB is accessed. The services can be transient (Grid-enabled) or persistent(operated independently of the Grid). 36 Page 18

Database Database Service (GDS) Entdeckung des DB services Die Beschreibung der DB services mußt publiziert (registriert) werden: Inhalt der DB Details über DB Operationen usw. Registry Look-up gibt Grid Service Handle (GSH) zurück. GSH ist ein global eindeutiger Name für jeden einzigen service Fall (instance). 37 Database Statements DB statements ermöglichen Abfragen (queries), Modifikationen (updates) und Ladungen (loads) an ein DB für Ausführung zu schicken. Grundlegendes database statement interface query (IN querynotation, IN query, OPTIN expires, OUT resulthandle, OUT fail) update (...) bulkload (...) schemaupdate (...)... z.b. querynotation = SQL92 expires Beschränkung von Ressourcen-Anwendung 38 Page 19

Distributed Query Service The role of a distributed query service is to allow individual queries to access multiple DB, thereby allowing the system to take responsibility for query optimization and efficient evaluation. Setting up a distributed query service 39 Distributed Query Service (2) Using up a distributed query service 40 Page 20

Database Services in OGSA DB services bekommen zusätzliche Eingeschaften, when sie mit OGSA integriert werden. Life cycles OGSA unterscheidet zwischen: persistent service: er wird außerhalb der Grid-Service-Umgebung hergestellt; er kann durch standard Grid-Service-Konventionen benutzt werden. transient Grid service: er wird innerhalb von OGSA von factory hergestellt. Es ist möglich seine Lebensspane (lifespan) zu spezifizieren. Auch schema, Datenbank, usw. kann spezifiziert werden. Es ist notwendig zu ermöglichen, dass DB Authoriesierungsfunktionalität innerhalb von OGSA zugreifbar ist. 41 Creating and Using a Grid Data Service Creating and using a Grid data service 42 Page 21