Angebot und Abfrage

Datenbank/Web-Gateways machen Web-Server zu Informationsbrennpunkten

Wissen | Hintergrund

Datenbankserver sind die Motoren moderner EDV-Infrastrukturen. Über leistungsfähige Getriebe bringen sie auch Web-Server in Schwung: Web/Datenbank-Gateways machen müde WWW-Sites zu interessanten Informationsknotenpunkten, Online-Shops und mehr.

Firmen präsentieren sich im Web viel zu oft noch nur durch ein paar statische HTML-Seiten vom Charme eines Faltblatts und dem Nutzwert einer Postwurfsendung. Da reißen auch aufwendige Grafiken oder animierte Java-Applikationen nichts heraus - im Gegenteil: diese nerven den Surfer auf den bundesdeutschen Datenfeldwegen mit langen Downloadzeiten. Eine gut gemachte WWW-Site verursacht dagegen keine Cyber-Langeweile. Sie präsentiert ein Unternehmen nicht nur und informiert den Besucher umfassend über dessen Produkte, sondern verkauft diese gleich auch.

Welches Potential dem Web innewohnt, demonstrieren die Softwareschmiede und PC-Händler der Berliner NetConsult Communications GmbH. Im PC-Konfigurator ihres Computerstores kann sich der Kunde seinen Wunschrechner selbst zusammenstellen. Für sämtliche Komponenten eines Personalcomputers bietet das System eine Auswahl an, aus der sich der potentielle Käufer sein Modul aussucht. Er hat dabei in einem eigenen Frame der Web-Anwendung immer vor Augen, aus welchen Teilen das Gesamtsystem besteht und wieviel der momentan zusammengestellte Rechner insgesamt kostet (siehe Abbildung auf S. 270).

Der PC-Konfigurator ist Netconsults Beispielanwendung der hauseigenen Software 'Intershop', einer Standardanwendung für das Online-Shopping, die sämtliche Komponenten für das virtuelle Busineß umfaßt: Neben dem interaktiven Produktkatalog besteht das System aus einem Administrationswerkzeug, mit dem sich beispielsweise Zugriffsrechte verwalten lassen. Weitere Module für die Fakturierung sowie die Bezahlung runden das Online-Geschäft ab.

Auch wenn der Web-Server nicht zum virtuellen Verkaufsraum avancieren soll, so kann er doch viel mehr bieten als nur eine Kopie papierner Prospekte. Besonders Anbieter mit einer großen Anzahl von Artikeln können ihren Kunden mit Hilfe einer intelligenten Suchmaschine durch ihr Angebot helfen. Sei es der Buchhändler, der das Verzeichnis lieferbarer Bücher ins Internet stellt (http://www.buchkatalog.de), der CD-Versender mit einer Auswahl Tausender von Titeln (http://194.77.206.65/de/profi.htm) oder der Hotelbuchungsservice (http://www.hrs.de) - alle profitieren von den Abfragemöglichkeiten einer relationalen Datenbank.

Doch auch Anbieter mit einem überschaubaren Sortiment können ihrem Kunden durch das Web ein Mehr an Information bieten. Gegenüber ihren gedruckten Pendants haben Online-Kataloge den Vorteil, sich nicht auf die elementaren Details beschränken zu müssen. Neben dem Allerwichtigsten kann der Hersteller oder Distributor Hintergrundinformationen oder ausführliche technische Spezifikationen hinterlegen. Einige Softwarehersteller nutzen diese Möglichkeit bereits. Unter anderem muß man den Branchenprimus lobend erwähnen: Microsoft offeriert auf seinem Web-Server die Knowledge Base, eine riesige Sammlung von ausführlichen Beschreibungen sämtlicher Produkte, Feature-/Bug-Reports mit Lösungsmöglichkeiten, aber auch Beiträgen zu allgemeinen Themen der Softwareentwicklung et cetera.

Um in einem derart riesigen Pool an Informationen nicht zu ertrinken, hilft ein weiterer Suchservice: Volltextindizierungs- und -Suchmaschinen bieten lokale Retrievaldienste ähnlich denen der Großen wie AltaVista oder Lycos, die das gesamte Web bearbeiten. Daß ein solches Angebot eine sinnvolle Ergänzung eines Web-Servers darstellt, hat sich inzwischen auch bei den Herstellern der Web-Knechte herumgesprochen (siehe [1]).

Auch für 'abgehobene' Abfragemöglichkeiten, die über die Möglichkeiten gängiger SQL-Server oder Textretrieval-Engines hinausgehen, gibt es sinnvolle Einsatzmöglichkeiten. So lassen sich Fotodatenbanken am natürlichsten grafisch abfragen ('Query By Image Content'), etwa mit einer Skizze. Für bestimmte Produktgruppen ist auch die Möglichkeit zur 'unscharfen Suche' ('Fuzzy Search') sehr nützlich. So könnte ein Immobilienmakler (http://quest.15r.com/QSTServer/qst-sample/Realest.htm) auf seinem Server hiermit sein Angebot offerieren. Zu jedem der Suchkriterien wie 'Stadt (-teil)', 'Anzahl der Zimmer', 'Swimming Pool' vorhanden' gibt der Interessent hierbei eine Wichtung zwischen 'sehr wichtig' bis 'unwichtig' vor, die das System bei der Generierung der Treffer berücksichtigt.

Grundlage sämtlicher vorgestellter Produkte bilden je ein Datenbank- und ein Web-Server, zwischen denen ein sogenanntes Web/Datenbank-Gateway vermittelt. Diese Aufgabenteilung ergibt sich aus den unterschiedlichen Fähigkeiten der beiden Servertypen: Datenbankmanagementsysteme (kurz DBMS) sind darauf spezialisiert, strukturierte Information zu verwalten und auf beliebige Anfragen dynamisch Treffermengen zu generieren. Web-Server (auch http-Server) hingegen verteilen in erster Linie statische HTML-Dokumente.

Die einzige Möglichkeit, von einem Web-Server aus einen anderen Dienst anzubieten, besteht darin, eine externe Anwendung damit zu beauftragen. Als Schnittstelle nach außen dient dem WWW-Server hierfür das sogenannte Common Gateway Interface, kurz CGI. Da dieses Interface aus den Frühzeiten des World Wide Web sehr ineffizient ist, haben verschiedene Hersteller ihre eigenen Programmierschnittstellen entwickelt. Die populärsten hierunter sind diejenigen von Netscape (NSAPI, Netscape Server Application Programming Interface) und ISAPI (Internet Server API), das mehrere Firmen, darunter Microsoft, unterstützen.

Die weitverbreitetsten Datenbankserver speichern ihre Daten in Tabellen (oder Relationen). Auch diese relationalen Datenbankmanagementsysteme besitzen eine gemeinsame Schnittstelle, die Structured Query Language, kurz SQL - zumindest in der Theorie. Denn obwohl die International Standards Organisation (ISO) die Sprache aus Kompatibilitätsgründen standardisierte, haben die einzelnen Hersteller ihre SQL-Dialekte individuell erweitert. Solche proprietären Zusätze dienen zwar auf den jeweiligen Systemen zur Performance-Steigerung, führen jedoch dazu, daß die Sprachen untereinander inkompatibel sind. Als gemeinsamen Standard unterstützen heutzutage die meisten Hersteller von Datenbanken die SQL-Teilmenge namens ODBC (Open Database Connectivity).

Neben den relationalen Datenmanagern kommen auch objektorientierte oder objektrelationale Datenbankmanagementsysteme zum Einsatz. Diese verwenden Fortentwicklungen von SQL oder eigene Programmierschnittstellen. Auch Desktop-Datenbanken auf dem PC oder dem Mac können als Backend für Web-Applikationen fungieren. So gibt es Gateways für Access, 4D sowie xBase-Datenbanken.

Zwischen WWW- und Datenbankserver vermitteln die Web/Datenbank-Gateways. Dieser Begriff faßt eine sehr heterogene Gruppe von Produkten zusammen, von der Erweiterung einer Programmiersprache bis zur Standardanwendung für das Online-Busineß. Grob lassen sie sich in die folgenden vier Kategorien einordnen:

1. Gateways, die eines oder mehrere RDBMS an das Web anbinden. Hierzu gehört beispielsweise IBMs DB2 WWW Connection, das über eine entsprechende Middleware, den DataJoiner, neben DB2 auch die Datenbanken anderer Hersteller bedient. Die neueste Version von Oracles Datenbank Oracle7 hat die Web-Fähigkeit bereits eingebaut: die Web-Server-Option macht einen Oracle7-Datenbank- zum Web-Server.

2. Web-Server, die Datenbankzugriffe unterstützen. Zu den Erweiterungen, die Hersteller von http-Servern den APIs ihrer Produkte spendieren, gehört mitunter ein Datenbank-Interface. So verfügt der GNNserver neben einer ODBC- über eine Schnittstelle zur objektrelationalen Datebank von Illustra.

3. Frontend-, Datenbank-, Client/Server-Entwicklungsumgebungen, die um Web-Features erweitert wurden. Im allgemeinen Internet-Hype bemühen sich die Hersteller von Programmierumgebungen, ihren Produkten die entsprechenden Fähigkeiten einzuimpfen. JAM/

WEB erlaubt als Zusatz zum Client/Server-Werkzeug JAM, WWW-Browser als neue Frontend-Plattform einzusetzen.

4. 'Echte' WWW- beziehungsweise Internet-Entwicklungsumgebungen. Neben den aufgebohrten bestehenden Programmier-Tools gibt es auch echte Neuentwicklungen fürs Web. Hierzu zählen der Intershop, aber auch Entwicklungsumgebungen wie die NeXT WebObjects.

Vor der Umsetzung einer Online-Datenbank sollte der Verantwortliche auf jeden Fall einigen Hirnschmalz in deren Konzeption investieren. Durch die Anbindung einer Datenbank ans Internet kommen eine Reihe neuer Faktoren ins Spiel, auch kann die Integration Auswirkungen auf bestehende Systeme haben.

Neben der Kompatibilität eines Gateways mit der bestehenden EDV-Infrastruktur wirft das Tor zwischen Web und Datenbank neue Performance-Probleme auf. Experimentierfreudige Web-Surfer könnten einen bereits ausgelasteten Firmen-SQL-Server leicht in die Knie zwingen. In einem solchen Fall hängt eine Lösung sicherlich von der Art der Web-Applikation ab. Ein Online-Buchungssystem muß immer up to date sein, hier hilft gegebenenfalls nur eine Aufrüstung der Hardware. Muß die Publikumsinformation nicht derart frisch sein, so kann man sie auch auf ein eigenes System auslagern, das von Zeit zu Zeit aktualisiert wird.

Es ist oft sinnvoll (und auch gängige Praxis), seinen Web-Server beim Internet-Provider aufzustellen, um den eigenen Internet-Zugang zu entlasten. Da es sicher nur in Ausnahmefällen Sinn macht, auch den SQL-Server auszulagern, erwachsen hierdurch neue Probleme. So muß geklärt werden, wo es am ökonomischsten ist, das Gateway zu installieren. Ein weiterer wichtiger Aspekt, der bedacht werden muß, wenn von außen aufs Firmennetz zugegriffen wird, ist die Sicherheit des Gesamtsystems.

In der Tabelle habe ich die Web/Datenbank-Gateways für die Windows-Plattformen, OS/2 und MacOS zusammengestellt. Aus Platzgründen mußte ich auf die URLs der Hersteller-Sites verzichten, diese finden sich auf unserem WWW-Server unter http:// www.ix.de/ct/Artikel/96/06/Jo.html. Auch habe ich den unübersichtlichen Markt der Produkte, für die es bis dato nur Unix-Versionen gibt, außen vor gelassen. Auf diese Weise finden sich auch einige interessante Systeme nicht in der Liste wieder. Bluestone (http://www.bluestone.com/products/sapphire) hat beispielsweise eine NT-Version seines Sapphire/Web angekündigt, auch web.sql von Sybase (http://www.newmedia.sybase.com/Offerings/Websql) soll in Kürze als Betaversion für NT erhältlich sein. Es lohnt sich daher auch für Entwickler auf den Standard-PC-Plattformen, sich bei den Herstellern von Unix-Produkten umzusehen. (jo)

[1] Ralf Lange, Ingo T. Storm: Dienerschaft, c't 6/96, S. 218

[2] René Meißner: Faules Backwerk, c't 6/96, S. 25

[3] Holger Reif: Cyber-Dollars, Elektronisches Geld im Internet, c't 5/96, S. 144

[4] Jürgen Fey, Ralf Hüskes: Tabellen einweben, Datenbankschnittstelle WWW, c't 4/96, S. 362

[5] Willy Winkhardt: Datenweber, WWW als Datenbankschnittstelle, c't 3/96, S. 170

[6] Michael Kunze: Geheimtip, Entwickeln und Testen von Web-Projekten, c't 9/95, S. 166

[#anfang Seitenanfang]


  • AMazon, http://www.ieinc.com/webnews.htm
  • A-Xorion
  • BestWeb PRO
  • ColdFusion 1.5
  • Commerce Builder 1.5, http://www.aristosoft.com/ifact/inet.htm
  • DataRamp, http://dataramp.com/
  • DB2WWW V 1 ,http://www.software.ibm.com/data/db2/db2wfac2.html
  • dbCGI 1.01
  • DB Gateway 2.1, http://fcim1.csdc.com/dbgate/dbgate.htm
  • dbWeb 2.0, http://www.axone.ch/dbWeb/
  • dtf CGI Gateway, http://www.crl.com/www/users/fi/fishtank/dtfgateway.html
  • Dynamo
  • FoxAELib 1.0.10
  • FoxPro Project, http://www.waterware.com/mark/foxhtml.html
  • FoxWeb
  • GNNserver, http://www.tools.gnn.com/index.html
  • HTML Object Library, http://www.racnet.com/htmlobj.htm
  • Hyperstar Web Developer's Kit, http://www.vmark.com/Products/HyperStar/#Overview
  • Illustra ORDBMS Web Datablade, http://www.illustra.com/cgi-bin/Webdriver?MIval=home
  • Internet Toolkit for 4D 1.0.4, http://www.jca.fr/jca/itk/
  • iSQL
  • Internet Information Server, http://www.microsoft.com/infoserv/iisinfo.htm
  • INTERSHOP
  • JAM/WEB, http://www.jyacc.com/web_prev.htm
  • Level\5 Quest Server, http://quest.l5r.com/
  • LiveWire Pro, http://home.netscape.com/comprod/products/tools/livewire_datasheet.html
  • Magic WebLink Solution
  • mgyWEB, http://www.mgy.ca/
  • Mediahost DataBase, http://www.mediahost.com/docs/aboutdb.htm
  • Microsoft SQL Server, http://www.microsoft.com/sql/sqlinet1.htm
  • NetLink/4D 1.0, http://www.fsti.com/productinfo/netlink.html
  • NeXT WebObjects, http://www.next.com/WebObjects/Welcome.html
  • O2 Web
  • Oracle WebServer 1.1, http://www.oracle.com/products/websystem/webserver/html/ws2_info.html
  • Oracle WebServer Option 1.0, http://www.oracle.com/products/websystem/weboption/html/index.html
  • ORALink 1.00
  • PageBlazer
  • ROFM CGI, http://rowen.astro.washington.edu/
  • R:WEB 1.0, http://www.microrim.com/RBASE_Products/Software/RWEB1.0/index.html
  • Speedware Autobahn
  • SPRY (Safety) Web Server, http://server.spry.com/docs/prodinfo/server/serverps.htm
  • SQLweb 1.0
  • Tango, http://www.everyware.com/Tango_Info/default.html
  • TEXIS WWW Bridge, http://198.49.220.90/sqlbridge.html
  • TGATE, http://www.shelby.com/pub/shelby/tgate.html
  • TILE, http://www.tile.net/tile/info/about.html
  • Tool Kit Internet
  • VISIGATE 1.0, http://prisys.com.au/lookfor/
  • WDB 1.4
  • Web2SQL, http://www.nutech.com/products/web2sql/
  • WebBase 4.0
  • WebDBC 2.5, http://www.ndev.com/
  • Web FM
  • Web Forms Express, http://www.pacificnet.net/~walkerc/wfe.htm
  • WebFox/Mac, http://www.cais.com/wrngrp/webfox.html
  • WebHub
  • Web Server 4D
  • Worb Web, http://www.indra.com/plusplus/worbweb.html
Anzeige