Präsentation herunterladen
Veröffentlicht von:Engelram Geisen Geändert vor über 9 Jahren
1
Aufbau Integrierter Informationssysteme Datenbank-Middleware und komponentenbasierte DB-Technologie
Thomas Faust, Andreas Linke, Steffen Schäfer Martin-Luther-Universität Halle-Wittenberg Hauptseminar - Halle
2
Gliederung Einführung Notwendigkeit von Datenbank-Middleware
Gliederung Einführung Notwendigkeit von Datenbank-Middleware Komponentenorientierte DB-Systeme Integrationsansätze Universal Storage Table Function/ Virtual Table Interface Universal Access OLE DB Garlic/ Data Joiner Datenintegration Speicherung von Datenobjekten Data Links © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
3
Datenbank-Middleware
Datenbank-Middleware Wünschenswert wäre: Zugriff auf /Integration von Daten Plattformunabhängige Interoperabilität Erweitertes Transaktionskonzept Datenbank nur eine Komponente unter vielen © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
4
Komponentenorientierung
Komponentenorientierung Erweiterung Erweiterung DBMS Erweiterung Erweiterung DBS Erweiterung Erweiterung © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
5
Überblick – Architekturen
Überblick – Architekturen Plug-in Database-Middleware DBMS Services Configurable DBMS © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
6
Plug-in Universal Server Was Server selbst nicht kann kommt von aussen
Plug-in Universal Server Was Server selbst nicht kann kommt von aussen DBMS DBS © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
7
Erweiterungsmöglichkeiten (1)
Erweiterungsmöglichkeiten (1) Erweiterungsmöglichkeiten Typen Funktionen Indexstrukturen © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
8
Erweiterungsmöglichkeiten (2)
Erweiterungsmöglichkeiten (2) 1. Typen Distinct Types Umbenennung schon integrierter Typen Opaque types Für DBS nur „Black Box“ - Zugriff über Funktionen Row types Neue Tabellentypen aus erzeugten Datentypen © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
9
Erweiterungsmöglichkeiten (3)
Erweiterungsmöglichkeiten (3) 2. Funktionen (UDF) 3GL (C, C++, Java) Können in SQL-Statement enthalten sein oder Nur für internen Gebrauch – durch andere Funktionen aufgerufen Skalare Funktionen – ein Wert wird zurückgeliefert Aggregatsfunktionen Tabellenfunktionen – Tabellen werden zurückgeliefert 3. Indexstrukturen © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
10
Database-Middleware Integration externer Datenquellen
Database-Middleware Integration externer Datenquellen API mit unterschiedlicher Mächtigkeit Verschiedene Datenmodelle Lösung durch Wrapper A N W E N D U N G E N DBS Middleware © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
11
DBMS Services Aufspaltung einer Datenbank in ihre Dienste (Datenhaltung, Suchen, Transaktionskontrolle) einige/alle Dienste der Datenbank können ausgelagert werden Anwendung Platform © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg 1 © 2001 Monika Mustermann, MLU Halle-Wittenberg
12
Configurable DBMS Neue Services können integriert werden D B M S DBS
Configurable DBMS Neue Services können integriert werden D B M S DBS © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
13
Ansätze Universal Storage Universal Access 08.04.2017
© 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
14
Universal Storage Zugriff auf externe Daten: Table Function – IBM
Universal Storage Zugriff auf externe Daten: Table Function – IBM Virtual Table Interface – Informix Gemeinsamer Grundmechanismus Eine/ mehere Funktionen realisieren öffnen, lesen, schliessen einer externen Datei und zurückliefern einer Tabelle Mit Tabelle kann über SQL gearbeitet werden © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
15
Tabellenfunktionen – Beispiel
Tabellenfunktionen – Beispiel CREATE FUNCTION <Funktionsname> (<Datentypen>) RETURNS TABLE <Spaltenname + Datentyp> EXTERNAL <Name + Zeichenkette> LANGUAGE <C,...> PARAMETER STYLE <DB2SQL (für C und OLE), DB2GENERAL (JAVA)> FENCED/ NOT FENCED NO SQL (NO) EXTERNAL ACTION © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
16
Universal Access Wrapper basierte Ansätze OLE DB Garlic / Data Joiner
Universal Access Wrapper basierte Ansätze OLE DB Garlic / Data Joiner © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
17
OLE DB Object linking and embedding
OLE DB Object linking and embedding Umsetzung von Microsofts Universal Data Access – Strategie UDA selbst ist eine Komponenten-Architektur © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
18
UDA – Architektur Application Microsoft Transaction Server
UDA – Architektur Consumers Application Microsoft Transaction Server ActiveX Data Objects OLE DB Cursor engin Distributed query engine Relational query engine COM/DCOM Services OLE DB Data Providers OLAP RDBMS ISAM SPATIAL © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
19
IBM OLE DB Provider DB2 „spielt“ OLE DB Provider
IBM OLE DB Provider DB2 „spielt“ OLE DB Provider Somit können andere unterstützte Anwendungen Daten entnehmen OLE DB Provider befindet sich beim Client und unter- stützt folgende Anwendungen ADO C/ C++ © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
20
Garlic The Project © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
21
The Project Ein kleines Beispiel...
© 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
22
Das Garlic Project wurde 1995 von IBM entwickelt.
The Project Das Garlic Project wurde 1995 von IBM entwickelt. Ziel ist es, weitgefächerte Multimediasysteme zu bilden. Wobei unter Multimedia ein grosses Spektrum von Daten gemeint ist: Dazu gehören neben Bildern, Videos und Audiodaten sowie Texten auch anwendungsspezifische Daten wie CAD-Zeichnungen, Karten... . Garlic soll so die Integration von heterogenen Datenquellen via einer mächtigen Middleware ermöglichen! © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
23
The Project Die Architektur:
© 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
24
The Project Die Architektur: Data Repositories Sind die heterogenen
Datenquellen, die inte- griert werden sollen. Können verschiedenar- tigst sein: - relationale DB - objektorient. DB - Dokumentenma- nagement System - Dateisystem - ... und auch die Anzahl ist nicht begrenzt. © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
25
The Project Die Architektur: Wrappers Die Wrapper über-
setzen Informationen über die Datentypen, den Datenzugriff und die Datenmanipula- tionsanfragen zwischen der Garlic Middleware und den darunter liegenden Datenquellen © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
26
The Project Die Architektur: Metadata Repository Das Metadata
Repository verwaltet Informationen über das sich nach oben hin präsentierende Garlic – Schema sowie Infor- mationen zur Über- setzung für die Wrapper. © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
27
The Project Die Architektur: Middleware Das Garlic Query
Services and Runtime System stellt das ein- heitliche Schema zum Benutzer hin, ist für die Anfrageverar- beitung (d.h. das zer- teilen einer Query und das Zusammenfügen) verantwortlich. © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
28
The Project Die Architektur: User Interfaces Die C++ API bietet
eine statische Schnitt- stelle für SQL-Queries aus Anwendungspro- grammen heraus an. Der Query/Browser ermöglicht eine Suche mittels einer benutzer- freundlichen, graphi- schen Benutzerober- fläche. © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
29
Das Garlic Datenmodell
The Project Das Garlic Datenmodell Die Daten in Garlic werden durch ein vereinheitlichtes Schema dem Benutzer geboten und durch ein objektorientiertes Datenmodell ausgedrückt. Veränderungen & Erweiterungen ODMG-93 Garlic Object Model Garlic Data Model Object Definition Language [ODL] Garlic Data Language [GDL] © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
30
The Project Anfragen in Garlic:
- als Anfragesprache dient eine objetorientierte Erweiterung von SQL Damit sind Möglichkeiten der objektorientierten Anfragen wie: - nachvollziehen von Inter-Objekt-Beziehungen - Aufrufen von Methoden aus einer Anfrage heraus - ... möglich. Problematisch ist nun noch: Anfrage und Auswertung von unscharfen Kriterien. Lösung mittels ‚Graded Sets‘, die die Treffergenauigkeit angeben. d.h. Vergabe eines Wertes zwischen 0 und 1, wobei 1 einen exakten Treffer meint. Damit ist auch die Möglichkeit eines Rankings gegeben. © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
31
The Project Anfragen: ein Beispiel
realisiert mit dem Image Management System QBIC Wir suchen alle Bilder, wo im Vordergrund ein rundes, rotes Objekt ist und der Hintergrund grün ist: Modellierung mit dem Query/Browser: Liefert folgende Ausgabemenge: © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
32
The Project Anfrageverarbeitung Welche Kampagne? Welche Firma?
- was suche ich? Welche Kampagne? Welche Firma? Es war eine Strandszene, sie wurde vor 5 Jahren gemacht und hat € ,- gekostet. QBIC DM RD Image Management Document Relational System Management Database © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
33
& The Project Gottseidank verwenden wir Garlic... Garlic Schema
select from where , , Garlic Schema & Middleware ein SQL-Statement könnte so aussehen: Wrapper Wrapper Wrapper select C.campaign_name, C.report, C.mag_ads from Campaign C, C.mag_ads A where (C.report.date > ´1989´) and A.match_image(SKETCH)>0.5 Image Management Document Relational System Management Database © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
34
Wrapper muss leicht und schnell zu schreiben sein
The Project Ziele der Wrapper - Komponenten Architektur: Wrapper muss leicht und schnell zu schreiben sein Wrapper muss evolutionär entwickelbar sein Wrapperarchitektur muss das Wachsen des Systems ermöglichen Wrapperarchitektur muss die Queryoptimierung enthalten © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
35
The Project Welche Dienste erbringt nun aber der Wrapper?
© 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
36
The Project Abbildung des Inhalts einer Datenquelle als Objekte
damit wird es Garlic möglich auf die Daten Bezug zu nehmen. relationale Datenbank: Stadt Name Einw BL Halle 250T SA Jena 150T TH beschrieben in der GDL: interface Stadt { attribute string name; attribute long Einw; attribute string BL; } © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
37
The Project Aufrufen von Methoden auf Objekte
(um deren Attributwerte zu erhalten) ganz wichtig bei Datenquellen die kaum oder gar keine Anfragemöglichkeiten unterstützen (z.B.: Dateisysteme) generic dispatch - Schemaunabhängig - Methodenname wird als Parameter übergeben get_Einwohner (OID [z.B. für Halle]) select Einwohner from Stadt where name = <OID> z.B.: „Halle“ © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
38
The Project Anfrageplanung:
The Project Anfrageplanung: Ziel: Entwickle alle alternativen Pläne zur Beantwortung einer Anfrage und wähle dann die effizienteste davon aus. Der Optimierer in der Garlic Middleware verwendet STARs [Strategy Alternative Rules] um die möglichen Pläne zu beschreiben. In jeder Planungsphase wird das längste Anfragefragment für jede tangierende Datenquelle an den Wrapper geschickt und dieser gibt entweder NULL oder alle möglichen Pläne die die Aufgaben des Fragments implementieren. Die Entwicklung der Pläne erfolgt dabei iterativ. © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg © 2001 Monika Mustermann, MLU Halle-Wittenberg
39
The Project Anfrageplanung: Wie sehr der Wrapper bei der Planung ein-
select S.Name from Stadt S where S.Einw= Wie sehr der Wrapper bei der Planung ein- bezogen wird obliegt dem Optimizer: Aufruf über Methoden: - plan_access () - plan_join () ... Garlic Optimizer Wrapper Access Plan for Stadt Work Request Properties Project: S.OID, S.Name, S.Einw Preds: S.Einw= Project: S.OID, S.Name, S.Einw Preds: S.Einw= Cost:<access cost> Plan Details (private) Wrapper Relational Database © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
40
Garlic Execution Engine
The Project Anfrageausführung: Garlic Execution Engine translate () Wrapper_Plan::translate () © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
41
The Project Wrapper existieren u.a. schon für:
Ein relationaler Wrapper kommt mit Garlic im Packet, da wohl die meisten Legacy-Daten in relationalen Datenbanken abgelegt sind. © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
42
The Project Angewand wird die Garlic Technologie von IBM unter dem Namen DiscoveryLink. IBM DJ basiert auf der selben Philosophie wie Garlic, verwendet jedoch nicht die Garlic Technologie. Was dem DJ dahingehend fehlt ist die Erweiterung auf Nicht-Relationale Datenquellen. © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
43
The Project Trotzdem ist der DJ sehr leistungsfähig, so ist folgende Anfrage denkbar: „Gib mir alle Haushalte mit einem jährlichen Einkommen über € ,- die in einem Umkreis von 10km um meinen Laden sind!“ © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
44
The Project Damit bleibt hoffentlich nur noch eine Frage offen:
Was heißt Garlic? “[…] Well, the short answer to your first question is that the name is Garlic because I like Garlic and I don't like acronyms :-) . But it turns out to be a great name for many reasons, not least of which is that no one ever forgets it. And anyone with good taste likes Garlic! [...]“ Laura M. Haas Mgr, DB2 Query Compiler and Life Sciences Developement © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
45
Teil 3: Datenintegration ...
... umfasst 2 Teilprobleme: Die Integration von bestimmten Datenobjekten in ein DBS und Welche Möglichkeiten bestehen externe Daten (Dateien) unter die Kontrolle des DBS zu stellen © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
46
Integration Datenobjekte (1)
Daten sind unstrukturiert bzw. semi-strukturiert: Audiodaten Videodaten Bilder Texte Daten entsprechen keinem festem Schema, dadurch existieren keine durch ein DV-System verarbeitbaren Schemainformationen Keine strukturierte Speicherung in DB möglich Daten ermöglichen keine Begrenzung einer Abfrage © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
47
Integration Datenobjekte (2)
Metadaten Audiodaten Videodaten Bilder Texte Informationen über die Art der gespeicherten Daten + Allgemeine: Datentyp, Erstellungsdatum, Inhaltsangaben, ... Datentypabhängige: Bilder: Format, Anzahl der Farben, ... = Ermöglichen effektive Suche © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
48
Unterstützung durch DBS
Der Umgang mit solchen Datenobjekten wird von objektrelationalen Datenbanksystemen unterstützt. Erweiterung um neue Mechanismen entsprechend der Rohdaten: InterMedia bzw. InterMedia Text sog. Extender © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
49
IBM – Extender (1) Extender werden mit der IBM Datenbank DB2 vertrieben Definieren Datentypen und Methoden für die zu speichernden Daten es existieren: Audio - Extender Video - Extender Image - Extender Text - Extender XML - Extender DB2 Spatial - Extender OANDA Currency - Extender ... © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
50
DB2IMAGE Bilder DB2AUDIO Audio DB2VIDEO Video
IBM – Extender (2) Audio-, Video- und Bild-Daten werden intern als BLOB gespeichert, Text-Daten als CLOB um die verschiedenen Datenarten verwalten zu können, werden spezielle Datentypen definiert: DB2IMAGE Bilder DB2AUDIO Audio DB2VIDEO Video © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
51
IBM – Extender (3) Automatisches Erzeugen bzw. Verwalten von Metadaten bei der Speicherung Zu jedem Datentyp sind bestimmte Methoden definiert, z.B.: DB2IMAGE: Thumbnail, Height, Width, Format DB2-Text-Extender: bestimmter Text, Synonyme, Suchbegriffe in Nähe Es existieren z.B. auch Funktionen zum Konvertieren von Datenformaten, Abspielen von Multimediadaten, ... Definition von eigenen Methoden möglich © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
52
Ein Beispiel (1) Anita Jones Assistant ENABLE DATABASE FOR DB2IMAGE
CREATE TABLE employee ( id char(6), name varchar(40), picture DB2IMAGE); Anita Jones Assistant ENABLE TABLE employee FOR DB2IMAGE; ENABLE COLUMN employee picture FOR DB2IMAGE; EXEC SQL INSERT INTO employee VALUES( '128557', 'Anita Jones', DB2IMAGE( CURRENT SERVER, /*database server name*/ '/employee/images/ajones.bmp', /*image source file*/ 'ASIS', /*keep the image format*/ :MMDB_STORAGE_TYPE_INTERNAL, /*store image in DB as BLOB*/ 'Anita''s picture')); /*comment*/ © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
53
Ein Beispiel (2) ENABLE COLUMN ENABLE TABLE CREATE employee
EXEC SQL INSERT INTO employee VALUES © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
54
Möglichkeiten der Datenspeicherung (1)
Metadaten (Roh-)Daten der Anwender übernimmt: Konsistenzsicherung Verwaltung der Daten Datei- System DBS © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
55
Möglichkeiten der Datenspeicherung (2)
Metadaten (Roh-)Daten Interne Speicherung: Alle Daten werden vom DBS verwaltet Datei- System DBS © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
56
Möglichkeiten der Datenspeicherung (3)
Metadaten (Roh-)Daten Externe Speicherung: DBS verwaltet Metadaten und Verweise auf Rohdaten im Dateisystem Konsistenzsicherung?! Datei- System DBS IBM DB2 Data Links © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
57
IBM - Data Links (1) Technologie um Daten, die im Dateisystem des OS gespeichert sind, verwalten zu können Kontrolle des DBS über folgende Bereiche: Referentielle Integrität (kein löschen oder umbenennen) Zugriffskontrolle (Anwendung der DB2 – Benutzerverwaltung) Koordiniertes backup und recovery (optional) Transaktionskontrolle (logische Integrität, Konsistenz der Daten) © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
58
IBM – Data Links (2) besteht aus 3 Komponenten:
Data Links Manager (DLM) Data Links File Manager (DLFM) Data Links File Filter (DLFF) © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
59
DB2 Data Links Manager (1)
Basis-Datentyp: DATALINK Eine DATALINK-Spalte beinhaltet die Verweise auf die Daten in Form einer URL Bei einem CREATE TABLE werden bei der Definition einer DATALINK-Spalte verschiedene Optionen eingestellt: Dateizugriffsrechte, Recovery-Unterstützung, ... Des weiteren werden verschiedene Funktionen zur Verfügung gestellt, z.B. den Server-Namen aus der URL auszulesen. © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
60
DB2 Data Links Manager (2)
Beispiel: CREATE TABLE PRODUCT ( PRODUCT_ID CHAR(8), PRODUCT_NAME VARCHAR(150), ... PRODUCT_AVI DATALINK (200) LINKTYPE URL FILE LINK CONTROL INTEGRITY ALL READ PERMISSION FS WRITE PERMISSION BLOCKED RECOVERY YES ON UNLINK RESTORE) © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
61
DB2 Data Links File Manager
eine Softwarekomponente DB2 Data Links File Manager, wird auf dem entsprechenden Datei-Server ausgeführt Die DLFM-Komponente dient als Interface zum Datenbank-Server Dient der Kommunikation, erhält die anlegen/löschen Befehle Verwaltet eine Liste mit den zu kontrollierenden Dateien Interaktion bei Backup/Recovery zw. DLFM und DBMS © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
62
DB2 Data Links File Filter
Data Links File Filter läuft ebenfalls auf dem File-Server Stellt sicher, das nur die Zugriffe auf Dateien geschehen, die in der DB definiert sind. Der DLFF sorgt für eine Unterbrechung von bestimmten Dateisystemaufrufen wie Datei öffnen, schließen, umbenennen Er ist so angelegt, dass er möglichst wenig in Konflikt mit bestehenden Anwendungen gerät. Implementierung ist stark an das entsprechende OS gebunden, Plattform-Unabhängigkeit wird über die API erreicht. © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
63
IBM Data Links - Architektur
Client - Anwendung Standard - Dateizugriff Direkte Datenübertragung DLFM File Server Dateien DLFF SQL Daten / URL Kontrolle externer Dateien DLFM API DLM DB2 Datenbank Server Daten © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
64
Vorteile Anwendungsperformance: Durch die Nähe zur Anwendung
Datei-Zugriff über Dateisystem, nicht über DBMS Keine Änderungen an bestehenden Applikationen Unterstützung für verschiedene Dateisysteme unter UNIX oder Windows NT © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
65
Zusammenfassung DB-Middleware & komponentenbasierte DB-Technologie
Integrationsansätze Universal Storage Universal Access Garlic Wrapper-basierte Ansatz Definiert eine Middleware, die einen einheitlichen Zugriff auf heterogene Daten ermöglicht Integration von Datenobjekten ORDBMS ermöglichen eine effektive Verwaltung von unstrukturierten bzw. semi-strukturierten Daten durch: spez. Datentypen, Methoden, ... Beispiel: IBM DB2 Extender Möglichkeit zur Kontrolle für in Dateisystemen gespeicherte Daten IBM Data Links © 2002 Thomas Faust, Andreas Linke, Steffen Schäfer; MLU Halle-Wittenberg
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.