1 / 118

Informationssysteme: Verteilte und Web-Datenbanken

Informationssysteme: Verteilte und Web-Datenbanken. Prof. Alfons Kemper, Ph.D. Lehrstuhl für Informatik III: Datenbanksysteme TU München www-db.in.tum.de. Literatur. P. Dadam : Verteilte Datenbanken und Client/Server Systeme. Springer Verlag, 1996 Vorlesungsbegleitend

pakuna
Download Presentation

Informationssysteme: Verteilte und Web-Datenbanken

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Informationssysteme: Verteilte und Web-Datenbanken Prof. Alfons Kemper, Ph.D. Lehrstuhl für Informatik III: Datenbanksysteme TU München www-db.in.tum.de

  2. Literatur • P. Dadam: Verteilte Datenbanken und Client/Server Systeme. Springer Verlag, 1996 • Vorlesungsbegleitend • M.T. Ozsu und P. Valduriez: Principles of Distributed Database Systems. Springer Verlag, 3. Aufl., 2011. • Vorlesungsbegleitend • E. Rahm: Mehrrechner-Datenbanksysteme. Addison Wesley, 1994. • Vorlesungsbegleitend • Vertiefend zu Parallelen Datenbanken • S. Ceri und G. Pelagatti: Distributed Databases--Principlesand Systems. McGraw Hill, 1984. alt aber ganz gut • A. Kemper und A. Eickler: Datenbanksysteme -- eine Einführung. Oldenbourg Verlag, 8. Auflage, 2011. • Grundlagen VDBMS & XML & XQuery & Web Services & Internet-Datenbanken & P2P & MapReduce & Search Engine Basics (PageRank) • S. Abiteboul, P. Buneman und D. Suciu: Data on the Web, ... Morgan Kaufmann, 1999. • L. Peterson und B. Davie: Computer Networks. Morgan Kaufmann 2000. Vertiefend zu Rechnerkommunikation (sehr gut) • Zusätzlich: Originalliteratur aus Konferenzen und Zeitschriften

  3. Gliederung • Terminologie, Einführung • Grundlagen der Datenkommunikation / Rechnernetze • Klassische Verteilte Datenbanken • Datenbankentwurf • Anfragebearbeitung • Synchronisation • Fehlertoleranz • P2P Informationssysteme • Client/Server-Architektur • Parallele Datenbanksysteme • Web-Services (SOAP, UDDI, WSDL) • Internet-Datenbanken • Web Datenverwaltung (PageRank, MapReduce)

  4. Gegenläufige Trends • Zentralisierung • ERP (Enterprise ResourcePlanning) • SAP, Baan, PeopleSoft, Oracle Applications • Data Warehouses • Dezentralisierung • „Downsizing“ (1000 PCs sind billiger als ein Supercomputer) • Parallelisierung der Anwendungen • Durchsatzoptimierung • Service OrientedArchitectures (SOA) • Web-Services • Cloud Computing

  5. Integration von Datenbanksystemen/ Informationssystemen • Autonome Einzelsysteme mit existierenden Anwendungen • Heterogen bezüglich Hard- und Software • unterschiedliche Datenmodelle (Netzwerk/Codasyl, relational, hierarchisch) • unterschiedliche DBMS (Oracle, DB2 SQL Server, Informix, Sybase, ...) • Ziel: Single-System-Image für neue globale Anwendungen • Verfügbarkeit der lokalen Systeme soll erhalten bleiben

  6. Weiträumig verteilte Datenbanken DB6 DB4 DB1 DB3 DB2 DB5

  7. Problemstellungen von weiträumig verteilten Informationssystemen • Rechner physisch weit voneinander entfernt (keine Kontrolle) • Kommunikation über „langsame“ Weitverkehrsnetze • Dauerhafte Verfügbarkeit der lokalen Stationen nicht immer garantiert • Ziel: hohe lokale Autonomie

  8. Lokal verteilte Datenbanken DBMS Einkaufsabteilung DBMS Entwicklungsabteilung LAN: Local Area Network DBMS Buchhaltung DBMS Verkaufsabteilung

  9. Lokal Verteilte Datenbanksysteme • Stationen sind durch ein „schnelles“ Netz (Local Area Network, LAN) miteinander verbunden • Hoher Grad an Verfügbarkeit des Netzes • Ausfallsicherheit durch Redundanz/Replikation • Durchsatzsteigerung durch Parallelisierung • Mehrrechner-DBMS (Parallele DBMS) • spezielle Variante • P2P Informationssysteme • NoSQL Datenbanken

  10. „Gespiegelte“ Datenbank-Systeme: Ausfallsicherheit DBMS 1 Speicher- system 1 Umschalten auf Stand-by-System • Reduzierung der Failover-Zeit Zugriffe Zugriffe DBMS 2 updates Speicher- system 2 kopieren

  11. Kommunikation in verteilten Informationssystemen DBMS 1 • Realisierung im Anwendungssystem Kommunikation AP 1 AP 2 DBMS 2

  12. Konventionell realisierte verteilte Informationssysteme • Verteilung ist in den Anwendungen bekannt (keine Transparenz) • Direkte Kommunikation zwischen den Anwendungen (Sockets, RPC, SOAP, RMI, o.ä.) • Kein direkter Zugriff auf Daten des „anderen“ Anwendungssystems • Fehlertoleranz muss von den Anwendern „programmiert“ werden

  13. Kommunikation in verteilten Informationssystemen AP 1 AP 2 • Realisierung mittel verteiltem DBMS Kommunikation DB 1 DB 2 Verteiltes DBMS

  14. Echtes verteiltes Datenbanksystem • Verteilung wird durch DBMS realisiert • Kommunikation ist implizit • Verteilungstransparenz: Verteilung ist für die Anwendungssysteme nicht sichtbar • Anwendungsprogramme kommunizieren über gemeinsame Datenbankobjekte

  15. Grobarchitektur eines verteilten Datenbanksystems Lokales DBMS Lokales DBMS Lokales DBMS Lokales DBMS Globale Komp. Globale Komp. Kommunikations- netz Globale Komp. Globale Komp. Verteiltes DBMS

  16. Schema-Integration bei homogenen, eng integrierten vDBMS AP 2 Globales Schema der verteilten Datenbank AP 1 Lokales Schema LDB1 Lokales Schema LDB2 Lokales Schema LDB3

  17. Charakteristische Eigenschaften:Homogene, eng integr. vDBMS

  18. Charakteristische Eigenschaften:Homogene, eng integr. vDBMS

  19. Schema-Integration bei föderiertenverteilten Datenbanken GAP 2 globale Anw. Globales Schema der föderierten verteilten Datenbank GAP 1 LAP 3.2 lokale Anw. LAP 1.1 lokale Anw. LAP 3.1 lokale Anw. Lokales Schema LDB1 Lokales Schema LDB2 Lokales Schema LDB3

  20. Eigenschaften föderierter verteilter Datenbanken • nicht alle Daten sind global sichtbar • neben globalen Applikationen (GAP) gibt es auch lokale Applikationen (LAP) • lokale Datenbanken behalten ihre Autonomie hinsichtlich Schemaerweiterungen und Schemaänderungen (solange keine globalen Schemata betroffen sind) • man unterscheidet bzgl. homogenen und heterogenen lokalen Datenbanken

  21. Charakteristische Eigenschaften:Föderierte verteilte DBMS

  22. Charakteristische Eigenschaften:Föderierte verteilte DBMS

  23. Offene Multi-Datenbanksysteme • À posteriori Integration von Datenbanksysteme • Zugriff auf „fremde“ Datenbanken • Hotelreservierungssysteme • Flugreservierungssysteme • Literatur-Datenbanken • Wegen der Bedeutung des WWW praktisch sehr relevant

  24. Offene Multi-Datenbanksysteme (2) • hoher, vollständiger Grad an Autonomie der Einzelsysteme • geringe Kooperation der beteiligten Systeme • keine globale Transaktionsverwaltung • black-box-Systeme • Atomarität globaler Transaktionen? • Kompensation anstelle „Undo“ • zB Stornierung einer Buchung • Schema-Integration über sogenannte Middlewaresysteme und Wrapper

  25. Anfragebearbeitung im Middleware System thumbnail wrap_S User-defined operators thumbnail wrap_S Heavy data shipping Data-Provider A Data-Provider B S

  26. Goal: Ubiquitous, Open Query Processing Capabilities thumbnail wrap_S Load functions Data-Provider B Data-Provider A Fct-Provider S thumbnail wrap_S

  27. ObjectGlobe: Ubiquitous, Open Query Processing Capabilities thumbnail wrap_S Load functions Data-Provider B Data-Provider A Fct-Provider S thumbnail wrap_S

  28. Charakteristische Eigenschaften:Offene Multi-Datenbanksysteme

  29. Charakteristische Eigenschaften:Offene Multi-Datenbanksysteme

  30. Klassifikation verteilter DBMS Heterogenes, eng integriertes vDBMs Heterogenität Heterogenes Multi-DBMS Heterogenes, föderiertes vDBMS Zentrales DBs Homogenes, eng integriertes vDBMs Autonomie Homogenes, föderiertes vDBMS Verteilung Homogenes Multi-DBMS

  31. Abgrenzung: Verteilte Datenbank -Verteiltes Dateisystem Getblock(...) DBMS Betriebssystem Betriebssystem Betriebssystem

  32. Client/Server-Datenbanksysteme

  33. Unterschiedliche CS-Ausprägungsformen • Query Shipping • Clients haben fast ausschließlich Präsentationsfunktion • Server leistet die Arbeit • Stored Procedure • hauptsächlich in betriebswirtschaftlichen Anwendungen

  34. Unterschiedliche CS-Ausprägungsformen (2) • Data Shipping • Server liefern die Daten • Clients verarbeiten die Daten • hauptsächlich in ingenieurwissenschaftlichen Anwendungen • Clients sind zB CAD-Workstations

  35. Client/Server: Ingenieurwissen-schaftliche Anwendungen Data shipping

  36. Dreistufige Client/Server-Architektur (3 Tier, SAP R/3) sehr viele (Tausende) Clients ein Datenbank- Server mehrere Applikations- Server zur Skalierung Sehr schnelles LAN (z.B. FDDI) „langsame“ Netzverbindung (WAN, Internet, Telefon, ...)

  37. Überblick: Computernetze • L. Peterson und B. Davie: Computer Networks. Morgan Kaufmann, 5. Auflage 2012 (gibt es aber schon!). • Local Area Networks (LAN) • Ethernet • Token Ring • FDDI • ATM • Internet • IP • UDP • TCP • Leistungs-Kennzahlen • Übung: Netzwerk-Programmierung

  38. Ethernet-Netzwerktopologie

  39. CSMA/CD: Carrier Sense Multiple Access w/ Collision Detect • Gemeinsame Leitung für viele Stationen • Analogie zu einen Bus • Carrier Sense: Stationen können erkennen, ob die Leitung benutzt oder frei ist • Collision Detect bedeutet, daß der Sender mithört und erkennt, falls es zu einer Kollision kommt

  40. Ethernet: Kollisionserkennung

  41. Nach Kollisionserkennung ... • Sender wird es noch(mehr)mals versuchen • normalerweise bis zu 16 mal • beim n.-ten Versuch wird der Sender • k * 51.2 µs warten • k ist eine zufällig gewählte Zahl aus {0,1, .., 2n-1} • Also wird beim 3. Versuch 0, 51.2, 102.4, 153.6 oder 204.8 µs gewartet

  42. Ethernet Transceiver und Adaptor Transceiver Adaptor Host

  43. Ethernet Repeater Adaptor Adaptor Adaptor Adaptor Adaptor Adaptor Adaptor Adaptor Adaptor Host Host Host Host Host Host Host Host Host repeater repeater repeater

  44. Ethernet Frame Zum Synchronisieren Cyclic Redundancy Code: Error-Detecting Code Alle Ethernet-Adaptoren sind weltweit eindeutig „durchnummeriert“ (Hersteller bekommen Präfix zugeordnet

  45. Leistung von Ethernet • Ursprünglich 10 Mbps • Busförmige Netze • alle Stationen teilen sich das Medium • sie können auch alle alles mithören • Nur bis zu einer Auslastung von ca 30 % geeignet; danach Leistungsdegradierung (wie thrashing) • keine Realzeit-Tauglichkeit

  46. 1 Gb/s switched Ethernet 1Gbps 1Gbps switch

  47. Stand der Technik • 1 Gbps Ethernet • Switched • 10 Gbps Ethernet • Verfügbar in neuen Rechnern • Ethernet wird im LAN vorherrschend bleiben • ATM konnte Ethernet nicht verdrängen • Tokenring-Netze werden viel seltener verwendet • high-end Bereich (FDDI) • Realzeit-Anwendugen

  48. Tokenring-Netzwerke

  49. Nachrichtenaustausch über Tokenring A E|...... E|...... E|...... E|...... E|...... E E|...... E|...... E|......

More Related