Technologische Grundlagen des Web Warehousing

Werbung
Technologische
Grundlagen des Web
Warehousing
Juraj Kosmal
[email protected]
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Präsentationsinhalt
Internet / Internetservices
Webkomponente
Datenbankzugang übers Web
Architektur und Kapazität eines Web
Warehouse Systems
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Internet und
Internetservices
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Internet
Topologie
TCP/IP Protokoll
Internetadressierung
Uniform Resource Locator (URL)
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Internetservices
World Wide Web (WWW)
serverseitige Architektur
Client schickt ein Request, Server verarbeitet
ihn und schickt die Antwort zurück (zB HTML)
File Transfer Protocol (FTP)
Bewegung in der Verzeichnisstruktur
Kopieren von Daten
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Internetservices
Gopher
Menüführung von einer Seite zur nächsten
Wide Area Information Service (WAIS)
ermöglicht eine Dokumentensuche
Telnet
ermöglicht eine Fernsteuerung des
Computers
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Internetservices
Internet Relay Chat (IRC)
ermöglicht die Führung einer
Realzeitkommunikation
Mail
ermöglicht den Korrespondezaustausch
[email protected]
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Webkomponente
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Webkomponente
HTML
MIME Typen
Zustandslosigkeit
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
HTML
erlaubt, eine Sache auf verschiedensten
Computern gleich zu sehen
dynamische Bewegung zwischen Seiten
mittels Hypertext
nicht nur Text, sondern auch Graphiken,
Ton und Bild
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
HTML
<HTML>
<HEAD><TITLE>HALLO</TITLE></HEAD>
<BODY>
<CENTER><P>Ich bin zentriert!</P></CENTER>
<FONT COLOR = "#FF0080">Ich bin rosarot!</FONT>
<P><FONT SIZE = +2>Ich bin um 2 Einheiten
größer!</FONT></P>
<P><a href="Anderes_Dokument.html">Ich bin ein Link
zum anderen Dokument.</a></P>
<P>Und das bin ich: <IMG SRC = "photo.jpg" WIDTH=100
HEIGHT=120></IMG></P>
</BODY>
</HTML>
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
HTML
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
MIME
Multipurpose Internet Mail Extensions
Browser schickt gleichzeitig mit dem
Request eine Mitteilung, welche MIMETypen er unterstützt
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
MIME
MIME Typ
Beschreibung
text/plain
bildet einen einfachen ASCII Text ab
text/html
bildet einen Text im HTML-Format ab
application/vmd-lotus 1-2-3 öffnet das Lotus 1-2-3 Programm
Image/gif
ein Bild im gif-Format
Image/jpg
ein Bild im jpg-Format
Video/mpeg
verwendet einen Videoplayer
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Zustandslosigkeit
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Der Datenbankzugang über
das Web
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Der Datenbankzugang über
das Web
Preprocess and publish approach (PPP)
Common Gateway Interface (CGI)
Java
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Preprocess and publish
approach
Dokumente werden vorbereitet, in das
HTML Format konvertiert... (preprocess)
...und zur Verfügung gestellt (publish).
User bewegt sich mittels
erhaltenen URLs
Hypertext
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Common Gateway Interface
Architektur
Komponente
Input
Kommunikation
Verarbeitung
Output
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Input
mittels command line
http://www.animal-server.com/dogs/dognames.exe?20
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Input
mittels HTML
<HTML>
<HEAD><TITLE>Umfrage</TITLE></HEAD>
<BODY>
<CENTER><P><H2>Umfrage</H2></P></CENTER>
<FORM ACTION = "http://www.umfragezentrale.at">
<P>Wieviele Hundenamen möchten Sie bekommen? <INPUT
TYPE = "TEXT" NAME = "AnzHN"></P>
</FORM>
</BODY>
</HTML>
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Input
mittels HTML
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Kommunikation
Browser - Server
Übergabe von Methode, URL, Parametern,
MIME-Typen
GET HTTP://WWW.UMFRAGEZENTRALE.AT?AnzHN=20
HTTP/2.0
Accept text/html
Text/text
……
……
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Kommunikation
Server - Programm
Übergabe mehrerer Daten wegen
Zustandslosigkeit...
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Variable
Zweck
HTTP_ACCEPT
MIME Typen, die der Browser akzeptiert
CONTENT_LENGTH
die Länge der geschickten Daten
CONTENT_TYPE
MIME Typ der vom Browser geschickten Daten
QUERY_STRING
die vom User zur Verarbeitung eingegebene
Information
REMOTE_ADDR
IP-Adresse des Browsers
REMOTE_HOST
voller DNS Hostname des Browsers
REQUEST_METHOD die vom Browser angefragte HTML Methode (GET,
POST..)
SERVER_NAME
DNS Hostname oder IP-Adresse des Servers
SERVER_PORT
die Portnummer des Servers
SERVER_PROTOCOL die Versionnummer des von Server verwendeten
HTTP
Kommunikation
Server - Programm
Übergabe mehrerer Daten wegen
Zustandslosigkeit
Darstellung des Responds
einfacher Text
HTML Dokument
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Verarbeitung
3 Spracharten
Scripts
Standardprogrammiersprachen
Java
Standardisierte Datenbankzugangskonfigurationen
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Verarbeitung - Scripts
Vorteile
Nachteile
Einfach zu lernen,
schreiben, verwenden
Unsicher, weil
uncompiliert gehalten
Mächtigkeit der
Befehle
Ineffizient
Einfach zu lesen,
ändern
Dezember, 02
Geringe Anzahl an
Befehlen
KFK Verteilte Systeme/Informationssysteme WS 2002
Verarbeitung Standardprogrammiersprache
n
Große Sammlung an Befehlen
Compilierbar
Höhere Sicherheit
Höhere Effizienz
Schwer veränderbar
Schwer zu erlernen
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Verarbeitung –
Standardisierte
Datenbankzugangskonfigurationen
Server Native Database
ODBC Database Interface
Native Remote Database Interface
Middleware-driven Interface
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Output
Ausgabe der Information in einem
nützlichen Format
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Der Datenbankzugang über
das Web
Preprocess and publish approach (PPP)
Common Gateway Interface (CGI)
Java
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Java
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Java
Charakteristik
COBOL des 21. Jahrhunderts
Objektorientiert
Sicher
Keine Zeiger
Bytecodeprüfer
Plattformunabhängigkeit
Multithreading
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Java
Komponente
Java Development Kit (JDK)
Compiler, Applet Viewer, Debugger, Applet Demos
Java Application Programming Interface
(Java API)
java.lang, java.io, java.util, java.net, usw.
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Java
Standard Extensions
Enterprise Extensions – remote access
JDBC – relationale DB
RMI
IDL
Commerce Extensions
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Java
Standard Extensions
Management Ext.
Server API
Media API
Java Beans
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Java Database Connectivity
Datenzugriff mit Java
Sammlung von Klassen und Methoden
DriverManager, Driver
Connection, Statement
Query, ResultSet
Close
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
JDBC - Beispiel
//* The animal listing program lists all animals in
//* the database and their ages
import java.sql.*
public class Samplet extends java.applet.Applet {
public void paint (Graphics g) {
//* declare string variables to hold values
String driver = "oracle.sql.OracleDriver"
String url = "jdbc:oracle:thin:bob@animaldb"
String user = "bob"
String pass = "bobpw"
String query1 = "Select name, age from animal"
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
JDBC - Beispiel
try {
//*load the driver;
Class.forName(driver);
//* make the connection
Connection c;
c = DriverManager.getConnection(url,user,pass);
//* create the statement
Statement stmt;
stmt = c.createStatement();
//* Execute the Query and load into the ResultSet
//* called rs
ResultSet rs = stmt.executeQuery(query1);
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
JDBC - Beispiel
//* create loop for the processing of results
//* the value of next will be incremented(the next
//* row will be read) until there are none left.
//* Then rs.next() will be false and the
//* while loop will end
while (rs.next()) {
//* get the two columns from the next row
//* the first column, name, is a String, so use
//* getString the second column, age, is an
//* Integer, so use getInt print them out
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
JDBC - Beispiel
String c1 = rs.getString(1);
Integer c2 = rs.getInt(2);
g.drawString(c1,20,y);
g.drawString(c2,100,y);
y = y +10;
}
//* Close the statement and the connection
stmt.close();
c.close();
}
}
}
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Architektur und Kapazität
eines Webwarehouse
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Architektur und Kapazität
eines Webwarehouse
Funktionalität
Architektur
Kapazität
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Architektur eines
Web Warehouse
Intranet Configuration
Leveraged Inbound Configuration
Leveraged Outbound Configuration
Dual-Leveraged Configuration
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Funktionalität der Data
Warehousing Umgebung
Erwerbsfunktion (E)
Speicherfunktion (S)
Zugriffsfunktion (Z)
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Intranet Configuration
Z
E
Dezember, 02
S
KFK Verteilte Systeme/Informationssysteme WS 2002
Leveraged Inbound
Configuration
E
Dezember, 02
S
Z
KFK Verteilte Systeme/Informationssysteme WS 2002
Leveraged Outbound
Configuration
E
Dezember, 02
S
KFK Verteilte Systeme/Informationssysteme WS 2002
Z
Dual-Leveraged
Configuration
E
Dezember, 02
S
Z
KFK Verteilte Systeme/Informationssysteme WS 2002
Kapazität
Transaktionsrate
TPH – transactions ph
Umfang
MPH – megabytes ph
Quantität
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Kapazität
Knotenkapazität
Verbindungskapazität
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Präsentationsinhalt
Internet / Internetservices
Webkomponente
Datenbankzugang übers Web
Architektur und Kapazität eines Web
Warehouse Systems
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Danke für die
Aufmerksamkeit!
Dezember, 02
KFK Verteilte Systeme/Informationssysteme WS 2002
Herunterladen