Die Erfindung betrifft ein Kommunikationssystem zum Verarbeiten von
Daten und ein entsprechendes Verfahren zum Verarbeiten von Daten.
Heutzutage werden in Unternehmen oftmals komplexe und verteilte Rechnerarchitekturen
verwendet, um die unternehmensweite Kommunikation sowie die Kommunikation mit externen
Geschäftspartnern zu ermöglichen. Beispiele solcher Strukturen sind das
Internet, das unternehmensinterne Intranet sowie das Extranet, welche eine Erweiterung
des Intranets darstellt und zwei oder mehrere Intranets über eine Internet-Anbindung
verbindet.
Um die in den Architekturen ablaufenden Prozesse zu optimieren, ist
es oftmals wünschenswert, die darin verarbeiteten Daten zu analysieren und
zu überwachen. Aus dem Stand der Technik sind eine Vielzahl von Verfahren bekannt,
mit denen die Datenverarbeitung in Kommunikationssystemen überwacht werden
kann. Solche Verfahren umfassen beispielsweise die Analyse von Protokolldateien
oder so genannten Network-Sniffer-Software-Lösungen.
In verteilten Kommunikationssystemen, die eine Vielzahl von Teilsystemen
aufweisen, welche die Daten getrennt voneinander mit einer spezifischen Logik verarbeiten,
besteht das Problem, dass oftmals für jedes Teilsystem aufwändige separate
Mechanismen zur Überwachung der Datenverarbeitung implementiert werden müssen.
Dies führt zu komplexen Netzwerkstrukturen mit einem hohen Aufwand an Hardware
und Software.
Aufgabe der Erfindung ist es deshalb, ein verteiltes Kommunikationssystem
zu schaffen, welches auf einfache Weise die Analyse von in den Kommunikationssystem
verarbeiteten Daten gewährleistet.
Diese Aufgabe wird durch die unabhängigen Patentansprüche
gelöst. Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen
definiert.
Das erfindungsgemäße Kommunikationssystem umfasst eine Mehrzahl
von Teilsystemen, wobei ein jeweiliges Teilsystem Daten gemäß einer für
das jeweilige Teilsystem spezifischen Logik verarbeitet. Wenigstens einige der Teilsysteme
umfassen dabei jeweils wenigstens eine Erfassungseinheit, welche derart ausgestaltet
ist, dass sie Informationen bezüglich der verarbeiteten Daten des jeweiligen
Teilsystems erfasst und in eine vorgegebene Datenstruktur konvertiert, welche die
gleiche für die wenigstens einigen der Teilsysteme ist. Die Erfassungseinheiten
sind wiederum mit einer gemeinsamen Analyseeinheit verbunden, welche im Betrieb
des Kommunikationssystems die Informationen bezüglich der verarbeiteten Daten
in der vorgegebenen Datenstruktur von den Erfassungseinheiten empfängt und
bezüglich vorgegebener Kriterien analysiert.
Durch das erfindungsgemäße Kommunikationssystem wird eine
Entkopplung der Erfassung der verarbeiteten Daten von der Analyse erreicht. Insbesondere
wird die eigentliche Datenerfassung lokal in den einzelnen Teilsystemen durchgeführt,
wobei hierfür separate Erfassungseinheiten verwendet werden. Da die Datenerfassung
einen einfachen Verarbeitungsprozess darstellt, können solche Erfassungseinheiten
auf einfache Weise in den entsprechenden Teilsystemen implementiert werden. Insbesondere
kann eine Standard-Hardware-Komponente verwendet werden, welche über Software
entsprechend an die Logik der einzelnen Teilsysteme angepasst wird. Demgegenüber
wird die im erfindungsgemäßen Kommunikationssystem durchgeführte
Datenanalyse, welche wesentlich mehr Ressourcen erfordert und komplexer aufgebaut
ist, von einem zentralen Analysesystem übernommen, wobei sichergestellt ist,
dass das Analysesystem die Informationen von allen Teilsystemen verarbeiten kann.
Dies wird dadurch erreicht, dass in den einzelnen Erfassungseinheiten eine Konvertierung
in eine vorgegebene Datenstruktur vorgenommen wird, welche von der gemeinsamen Analyseeinheit
verstanden wird. Auf diese Weise werden in dem erfindungsgemäßen Kommunikationssystem
Ressourcen gespart, da eine einzige Analyseeinheit für eine Vielzahl von Teilsystemen
vorgesehen ist und nicht für jedes Teilsystem separat eine Analyseeinheit integriert
werden muss.
In einer bevorzugten Ausführungsform des erfindungsgemäßen
Kommunikationssystems ist eine gemeinsame Schnittstelle zwischen den Erfassungseinheiten
und der gemeinsamen Analyseeinheit vorgesehen, über welche im Betrieb des Kommunikationssystems
die Erfassungseinheiten und die gemeinsame Analyseeinheit miteinander kommunizieren.
Eine solche gemeinsame Schnittstelle wird dadurch ermöglicht, dass Daten in
einer gemeinsamen, vorgegebenen Datenstruktur an die Analyseeinheit übertragen
werden.
Ein besonders bevorzugter Einsatzbereich des erfindungsgemäßen
Kommunikationssystems ist ein System zur Bereitstellung von Webinhalten für
eine Mehrzahl von Nutzern. In einem solchen System werden eine Mehrzahl von Websystemen
als Teilsysteme verwendet, wobei ein jeweiliges Websystem Webinhalte gemäß
einer für das jeweilige Websystem spezifischen Logik verarbeitet und Nutzern
bereitstellt. Hierbei ist die Logik insbesondere die Art und Weise, wie Webinhalte
untereinander verknüpft und strukturiert werden. Wenigstens einige der Websysteme
umfassen jeweils wenigstens eine Erfassungseinheit, welche derart ausgestaltet ist,
dass sie Informationen bezüglich von Nutzern aufgerufener
Webinhalte des jeweiligen Websystems erfasst und in eine vorgegebene Datenstruktur
konvertiert, welche die gleiche für die wenigstens einigen der Websysteme ist.
Vorzugsweise erfasst hierbei die wenigstens eine Erfassungseinheit
die Informationen bezüglich von Nutzern aufgerufener Webinhalte zumindest teilweise
über eine Kommunikation des jeweiligen Websystems mit Webbrowsern der Nutzer.
Insbesondere erfolgt die Kommunikation des jeweiligen Websystems mit Webbrowsern
der Nutzer über das HTTP-Protokoll.
Als Verfahren zum Erfassen der Informationen bezüglich von Nutzern
aufgerufener Webinhalte können beliebige aus dem Stand der Technik bekannte
Verfahren verwendet werden. Solche Verfahren sind beispielsweise in der speziellen
Beschreibung in Bezug auf 2 und 3
erläutert. Beispielsweise werden bei diesen Verfahren die Informationen bezüglich
von Nutzern aufgerufener Webinhalte zumindest teilweise über das Anfordern
von Webinhalten durch einen Webbrowser erfasst. Hierbei können die Informationen
bezüglich der von Nutzern aufgerufener Webinhalte über Parameter in von
den Webbrowsern gestellten Anfragen an die Erfassungseinheiten übermittelt
werden.
In einer weiteren Variante werden Informationen bezüglich von
Nutzern aufgerufenen Webinhalte zumindest teilweise durch Umleiten von Links in
mit einem Webbrowser angezeigten Webseiten, insbesondere von HTML-Webseiten, hin
zu den Erfassungseinheiten übermittelt. Die Links sind hierbei vorzugsweise
Links zu anderen Webseiten oder Links zum Herunterladen von Dokumenten.
In einer Variante des erfindungsgemäßen Kommunikationssystems
mit einer Mehrzahl von Websystemen umfassen die Informationen bezüglich von
Nutzern aufgerufener Webinhalte die URL (URL = Uniform Resource Locator) einer aufgerufenen
Webseite oder Datei und/oder den Speicherort einer aufgerufenen Webseite oder Datei
und/oder den Speicherort einer aufgerufenen Webseite oder Datei und/oder die Zeit,
zu der eine Webseite oder Datei aufgerufen wurde. Hierdurch wird eine umfassende
Erfassung von statistisch relevanten Informationen gewährleistet.
In einer weiteren Ausführungsform des erfindungsgemäßen
Kommunikationssystems umfassen zumindest einige Teilsysteme eine Inhaltbereitstellungseinheit,
insbesondere einen Webserver, zum Bereitstellen der Daten des jeweiligen Teilsystems
und/oder eine Inhaltverwaltungseinheit zum Verwalten der Daten des jeweiligen Teilsystems.
Hierdurch wird auf einfache Weise ein Teilsystem mit einer eigenen Logik zum Bereitstellen
und Verwalten von Daten geschaffen.
Vorzugsweise wirkt die wenigstens eine Erfassungseinheit eines jeweiligen
Teilsystems mit der Inhaltverwaltungseinheit des jeweiligen Teilsystems derart zusammen,
dass die durch die Erfassungseinheit erfassten Informationen bezüglich der
verarbeiteten Daten durch weitere Informationen ergänzt werden. Auf diese Weise
können bei der Analyse der Informationen nicht nur die beispielsweise über
einen Webbrowser bereitgestellten Informationen verwendet werden, sondern auch weitere,
nur lokal in einer Inhaltverwaltungseinheit gespeicherte Informationen.
In einer besonderen Ausgestaltung des erfindungsgemäßen
Kommunikationssystems sind die ergänzenden Informationen insbesondere Metainformationen
zu Webinhalten. Metainformationen sind hierbei Daten, die Informationen über
anderen Daten enthalten. Beispiele solcher Metainformationen sind der Speicherort
einer aufgerufenen Webseite oder Datei und/oder der Autor einer aufgerufenen Webseite
oder Datei und/oder der Speichername einer aufgerufenen Webseite oder Datei.
In einer besonders bevorzugten Ausgestaltung des erfindungsgemäßen
Kommunikationssystems werden die von den Erfassungseinheiten des jeweiligen Teilsystems
erfassten Informationen in einer lokalen Datenbank im jeweiligen Teilsystem gespeichert.
Auf diese lokale Datenbank kann dann in einfacher Weise durch die gemeinsame Analyseeinheit
zugegriffen werden, um die in den lokalen Datenbanken enthaltenen Informationen
zu analysieren. Die Analyseeinheit ist dabei vorzugsweise derart ausgestaltet, dass
sie die Informationen bezüglich der verarbeiteten Daten in der vorgegebenen
Datenstruktur statistisch analysiert.
Die erfindungsgemäßen Erfassungseinheiten können auf
unterschiedliche Weise in dem Kommunikationssystem integriert sein. In einer besonders
bevorzugten Variante der Erfindung sind eine oder mehrere der Erfassungseinheiten
jeweils aufgeteilt in zumindest eine erste Teileinheit, welche lediglich zum Erfassen
von Informationen bezüglich der verarbeiteten Daten dient, und zumindest eine
zweite Teileinheit zum weiteren Verarbeiten der erfassten Informationen. Hierdurch
wird eine effektive Trennung der Erfassungseinheiten in einen Front-end-Rechner
und einen Back-end-Rechner gewährleistet. Der Front-end-Rechner stellt die
erste Teileinheit dar, welche lediglich geringe Rechenkapazität benötigt
und nur Daten erfasst, insbesondere Anfrage verarbeitet und weiterleitet. Demgegenüber
weist die zweite Teileinheit, welche den Back-end-Rechner darstellt, vorzugsweise
eine höhere Rechenkapazität auf, da sie zum weiteren Verarbeiten der erfassten
Informationen verwendet wird. Die weitere Verarbeitung betrifft
hierbei insbesondere die Ergänzung der Informationen mit Informationen aus
einer Inhaltverwaltungseinheit, die Konvertierung der Informationen, sowie das Ablegen
der Informationen in einer Datenbank.
In einer bevorzugten Ausgestaltung des erfindungsgemäßen
Kommunikationssystems umfasst wenigstens eines der Teilsysteme eine Mehrzahl von
Inhaltbereitstellungseinheiten, insbesondere zum Bereitstellen von Webinhalten zum
Abruf durch einen Webbrowser, wobei jede Inhaltbereitstellungseinheit eine erste
Teileinheit beinhaltet und alle ersten Teileinheiten sich eine gemeinsame zweite
Teileinheit teilen. Hierdurch wird Redundanz für die ersten Teileinheiten erzeugt,
so dass sichergestellt ist, dass ein Ausfall einer ersten Teileinheit nicht zum
Abbruch der Kommunikation mit externen Webbrowsern führt. Bei der zweiten Teileinheit
ist die Bereitstellung von Redundanz weniger wichtig, da ein Ausfall der zweiten
Teileinheit nicht die Erfassung von Informationen betrifft und somit keinen Abbruch
der Kommunikation zu externen Browsern nach sich zieht. Es wird somit mit dieser
Ausführungsform Redundanz nur an der Stelle erzeugt, an der sie besonders wichtig
ist, nämlich bei den ersten Teileinheiten. Die Erzeugung dieser Redundanz ist
mit wenig Kosten verbunden, da die ersten Teileinheiten nur geringe Rechnerleistung
benötigen, da ihre Aufgabe einfach abzuarbeiten ist.
In einer weiteren Ausgestaltung des erfindungsgemäßen Kommunikationssystems
sind wiederum eine Mehrzahl von Inhaltbereitstellungseinheiten vorgesehen, wobei
jede Inhaltbereitstellungseinheit eine erste Teileinheit beinhaltet und zumindest
eine der Inhaltbereitstellungseinheiten auch eine zweite Teileinheit beinhaltet.
In einer anderen Variante des erfindungsgemäßen Kommunikationssystems
kann auch auf eine Aufteilung der Erfassungseinheiten in erste und zweite Teileinheiten
verzichtet werden, wobei in diesem Fall vorzugsweise jede Inhaltbereitstellungseinheit
eine Erfassungseinheit umfasst. Auf jeden Fall sollte zur Erzeugung von Redundanz
eines oder mehrere der Teilsysteme zumindest zwei redundant ausgeführte Erfassungseinheiten
aufweisen.
Neben dem oben beschriebenen Kommunikationssystem betrifft die Erfindung
ferner ein Verfahren zum Verarbeiten von Daten in einem Kommunikationssystem, bei
dem:
- – eine Mehrzahl von Teilsystemen jeweils Daten gemäß einer
für das jeweilige Teilsystem spezifischen Logik verarbeiten;
- – in wenigstens einigen der Teilsysteme jeweils mit Hilfe wenigstens
einer Erfassungseinheit Informationen bezüglich der verarbeiteten Daten des
jeweiligen Teilsystems erfasst werden und in eine vorgegebenen Datenstruktur konvertiert
werden, welche die gleiche für die wenigstens einigen der Teilsysteme ist;
- – die Informationen bezüglich der verarbeiteten Daten der vorgegebenen
Datenstruktur von den Erfassungseinheiten an eine gemeinsamen Analyseeinheit gesendet
werden und durch die Analyseeinheit analysiert werden.
Ausführungsbeispiele der Erfindung werden nachfolgend detailliert
anhand der beigefügten Figuren beschrieben.
Es zeigen:
1 eine schematische Darstellung einer Ausführungsform
des erfindungsgemäßen Kommunikationssystems;
2 und 3 Ausführungsformen
von Verfahren zum Nachverfolgen aufgerufener Webinhalte, welche in dem erfindungsgemäßen
Kommunikationssystem eingesetzt werden können;
4–7 Ausführungsformen
der Erfindung, welche unterschiedliche Integrationsmöglichkeiten der Erfassungseinheiten
in dem erfindungsgemäßen Kommunikationssystem zeigen.
1 zeigt eine schematische Darstellung einer Ausführungsform
eines erfindungsgemäßen Kommunikationssystems, welches zwei separate Websysteme
A und B umfasst. Die Websysteme A und B umfassen jeweils die gleichen Komponenten,
und zwar einen Front-end-Server in der Form einer Inhaltbereitstellungseinheit CDA1
bzw. CDA2 (CDA = Content Delivery Application) sowie einen Back-end-Server in der
Form einer Inhaltverwaltungseinheit CMS1 bzw. CMS2 (CMS = Content Management System).
Über die CDA1 bzw. CDA2 werden Webinhalte jeweils einem Browser BR1 bzw. BR2
bereit gestellt, wobei die Webinhalte insbesondere Webseiten bzw. herunterladbare
Dateien sind.
Jedes Websystem A bzw. B verwendet eine eigene Logik, gemäß
der die Webseiten und Dateien untereinander verknüpft sind. Durch die Logik
der Websysteme A bzw. B wird somit ein eigener strukturierter Aufbau der bereitzustellenden
Webinhalte geschaffen, wobei die Logiken der einzelnen Websysteme untereinander
nicht verstanden werden. Jedes der Websysteme A und B beinhaltet ferner eine Erfassungseinheit
in der Form von so genannten „Tracking Engines" TE1 bzw. TE2. Es handelt
sich hierbei um Datenrechner, welche die Logik der lokalen Websysteme A und B verstehen
und dazu dienen, die durch den Nutzer über die Browser BR1 bzw. BR2 aufgerufenen
Webinhalte zu verfolgen (im Englischen als so genanntes „Tracken" bezeichnet).
Das erfindungsgemäße Kommunikationssystem zeichnet sich dadurch aus, dass
lokale an die entsprechenden Logiken der Systeme A und B angepasste
Tracking Engines für die Systeme A und B verwendet werden. Zum Tracken der
Webinhalte werden hierbei aus dem Stand der Technik bekannte Verfahren verwendet,
wobei die einzelnen Tracking Engines nur zum Nachverfolgen und nicht zum statistischen
Auswerten der nachverfolgten Webinhalte dienen, so dass alle Tracking Engines auf
einfache Weise durch entsprechende Softwaremodifikationen an die entsprechenden
Logiken der Websysteme A und B angepasst werden können.
Beim Aufruf von Webinhalten über die Browser BR1 bzw. BR2 werden
in dem Kommunikationssystem der 1 durch entsprechende
Software in den Tracking Engines TE1 bzw. TE2 die von einem Nutzer über die
Browser aufgerufene Webinhalte bzw. Informationen bezüglich der Webinhalte
erfasst. Solche Informationen betreffen insbesondere die URL der aufgerufenen Webseiten,
den Zeitpunkt des Aufrufs der Webseite und beliebige andere Informationen, welche
aus den durch den Browser abgerufenen Webinhalten abgeleitet werden können.
Die Bereitstellung der Webinhalte für die Browser sowie die Erfassung der Informationen
bezüglich der Webinhalte erfolgt über die durch entsprechende Pfeile P1
bzw. P2 angedeuteten Kommunikationswege, welche von der Inhaltbereitstellungseinheit
CDA1 bzw. CDA2 über den entsprechenden Browser BR1 bzw. BR2 zu den Tracking
Engines TE1 bzw. TE2 laufen. Es wird auf diese Weise eine indirekte Kommunikation
unter Zwischenschaltung des Browsers von den Inhaltbereitstellungseinheiten CDA1
bzw. CDA2 hin zu den Tracking Engines TE1 bzw. TE2 geschaffen, wie durch die gestrichelten
Pfeile P3 angedeutet ist.
In dem Kommunikationssystem der 1 werden
die über die Tracking Engines erfassten Inhalte aus den Browsern ferner auch
noch durch Inhalte aus den Inhaltverwaltungseinheiten CMS1 bzw. CMS2 ergänzt.
Hierzu besteht eine direkte Kommunikationsverbindung zwischen den entsprechenden
Tracking Engines und Inhaltverwaltungseinheiten, welche in 1
durch die Doppelpfeile P4 angedeutet ist. Ferner ist in 1
auch die Kommunikationsverbindung zwischen den Inhaltbereitstellungseinheiten CDA1
bzw. CDA2 und den Inhaltverwaltungseinheiten CMS1 bzw. CMS2 mit Doppelpfeilen P5
wiedergegeben.
Wie oben erwähnt, werden in der Ausführungsform der
1 die von den Browsern bereitgestellten Informationen
durch Zugriff auf die Inhaltverwaltungseinheiten CMS1 bzw. CMS2 durch weitere Informationen
ergänzt. Diese ergänzenden Informationen sind nur lokal in den Websystemen
A und B verfügbar sind. Solche Informationen sind insbesondere Metainformationen,
d.h. Daten, die Informationen über andere Daten enthalten. Beispiele solcher
Metainformationen können der Autor einer Webseite sein, der nur lokal im Websystem
hinterlegt ist und nicht durch den Browser angezeigt wird. Es können auch beliebige
andere Informationen durch Rückgriff der Tracking Engines auf die CMS1 bzw.
die CMS2 in Bezug auf die aufgerufenen Webseiten bzw. Webinhalte berücksichtigt
werden, insbesondere für die statistische Auswertung der aufgerufenen Webinhalte
relevante Informationen.
Gemäß der vorangegangenen Beschreibung erfolgt somit durch
die Erfassungseinheiten TE1 und TE2 eine Erfassung von Informationen bezüglich
über die Browser BR1 und BR2 aufgerufenen Webinhalte, wobei diese Informationen
mit weiteren Informationen aus den Datenverwaltungseinheiten CMS1 und CMS2 angereichert
werden. Die auf diese Weise erfassten angereicherten Informationen werden schließlich
in den Tracking Engines TE1 und TE2 derart konvertiert, dass eine einheitliche Datenstruktur
geschaffen wird, welche die gleiche für das Websystem A und B ist. Es erfolgt
somit eine Aufbereitung der erfassten und angereicherten Informationen auf eine
Weise, so dass ein standardisiertes Datenformat vorgegeben wird. Die konvertierten
Informationen werden schließlich in entsprechenden Datenbanken DB1 und DB2
abgespeichert, wobei die Verbindungen zwischen den Tracking Engines TE1 bzw. TE2
hin zu den Datenbanken DB1 bzw. DB2 durch entsprechende Pfeile P6 angedeutet sind.
Die soeben beschriebene Konvertierung der erfassten Informationen
bezüglich aufgerufener Webinhalte stellt ein wesentliches Merkmal der vorliegenden
Erfindung dar. Es ist nunmehr möglich, eine einzige, gemeinsame Analyseeinheit
AS für beide Websysteme A und B einzusetzen, obwohl beide Websysteme unterschiedliche
Logiken zur Strukturierung ihrer Webinhalte verwenden. Hierzu wird eine gemeinsame
standardisierte Schnittstelle SI sowohl zwischen der Datenbank DB1 und dem AS als
auch zwischen der Datenbank DB2 und dem AS verwendet. Über diese Schnittstelle
SI werden die in dem einheitlichen Datenformat aufbereiteten Informationen bezüglich
der aufgerufenen Webinhalte übertragen und nach statistischen Kriterien in
der Analyseeinheit AS ausgewertet. Die Analyseeinheit kann hierbei verschiedene
Unterkomponenten erfassen, welche unterschiedliche Berichte und Auswertungen über
die erfassten Informationen erstellen.
Das soeben beschriebene Kommunikationssystem weist eine Reihe von
Vorteilen auf. Insbesondere wird eine höhere Datenqualität im Hinblick
auf die Überwachung der aufgerufenen Webinhalte gewährleistet, da eine
enge Integration der Erfassungseinheit zum Erfassen der aufgerufenen Webinhalte
lokal in die die Webinhalte bereitstellenden Websysteme erfolgt. Die einzelnen Erfassungseinheiten
führen nur den einfachen Prozess der Datenerfassung und Datenkonvertierung
durch und können auf einfache Weise durch entsprechende Modifikation
ihrer Software an die entsprechende Logik der betreffenden Websysteme angepasst
werden. Es muss in dem Kommunikationssystem nur eine einzige Analyseeinheit eingesetzt
werden, welche von einer Vielzahl von Erfassungseinheiten genutzt werden kann. Das
erfindungsgemäße Kommunikationssystem gewährleistet eine hohe Genauigkeit
der Daten, da das Überwachen der Webinhalte innerhalb der gleichen Domäne
erfolgt, und die Benutzer somit das Nachverfolgen der aufgerufenen Webinhalte nicht
auf einfache Weise umgehen können. Ein weiterer Vorteil des Kommunikationssystems
besteht darin, dass es universell für verschiedene Szenarien eingesetzt werden
kann und nicht auf die im vorangegangenen beschriebene Verwendung in einem Kommunikationssystem
mit verschiedenen Websystemen beschränkt ist. Das Verfahren kann insbesondere
neben der Nachverfolgung von Webinhalten auch zur Nachverfolgung von Applikationen
und zur Analyse der Leistung von Rechenprozessen eingesetzt werden. Eine weitere
Anwendung sind mobile Plattformapplikationen. Ebenso ist das erfindungsgemäße
Verfahren in Systemen zur Verteilung von Multimediadaten einsetzbar, wie z.B. in
digitalen Videoübertragungssystemen (DVB). Andere Systeme zur Verwendung des
erfindungsgemäßen Kommunikationssystems sind Heimsysteme sowie die Steuerung
von so genannten „Business Projekt Management Systems".
2 und 3 zeigen Flussdiagramme,
welche zwei mögliche Verfahren zur Nachverfolgung von Daten in den erfindungsgemäßen
Websystemen der 1 wiedergeben. Die Nachrichtenflüsse
werden hierbei anhand des Websystems A der 1 beschrieben,
sind jedoch analog auch auf das Websystem B der 1 anwendbar.
2 zeigt ein Szenario, bei dem HTML-Dokumente durch
den Browser BR1 des Websystems A durch einen Nutzer oder Browser heruntergeladen
werden, wobei dieses Herunterladen durch die Tracking Engine TE1 überwacht
wird. Zunächst wird von dem Browser BR1 an die Inhaltbereitstellungseinheit
CDA1 ein HTTP-Request in Schritt S1 gesendet. Im Schritt S2 verarbeitet die Inhaltbereitstellungseinheit
CDA1 diese Anfrage und erzeugt ein entsprechendes HTML-Dokument gemäß
der Anfrage, wobei ein Link auf ein so genanntes verstecktes Bild in dem HTML-Dokument
eingefügt ist. Dieses versteckte Bild wird schließlich zur Übermittlung
von statistischen Informationen an die Tracking Engine TE1 benutzt, wie weiter unten
beschrieben wird.
In Schritt S3 wird schließlich das erzeugte HTML-Dokument an
den Browser BR1 übermittelt. Der Browser interpretiert dann den HTML-Code und
zeigt das HTML-Dokument an. Parallel wird in Schritt S4 über den Link auf das
versteckte Bild dieses Bild angefordert. Der Link ist hierbei derart gewählt,
dass er auf die Tracking Engine TE1 zeigt. Die HTTP-Anfrage zum Anfordern des Bildes
ist hierbei parametrisiert und enthält Informationen bezüglich des in
Schritt S1 angeforderten HTML-Dokuments, z.B. die Information, welche Inhaltbereitstellungseinheit
bzw. welcher Webserver das HTML-Dokument erzeugt hat. Durch die parametrisierte
Anfrage werden somit die zur statistischen Auswertung in der Analyseeinheit AS verwendeten
Informationen bereitgestellt. Diese Informationen stellen folglich die von der Erfassungseinheit
erfassten Informationen bezüglich der verarbeiteten Daten im Sinne von Anspruch
1 dar.
Nach Empfangen der parametrisierten Anfrage wird schließlich
das versteckte Bild von der Tracking Engine TE1 an den Browser BR1 übermittelt,
wobei vom Browser anschließend keine weiteren Aktionen mehr durchzuführen
sind. Die Übermittlung des Bildes ist in 2 mit
Schritt S5 gekennzeichnet. Gemäß der hier beschriebenen Ausführungsform
der Erfindung fordert die Tracking Engine TE1 noch ergänzende Informationen
bezüglich der Webinhalte des HTML-Dokumentes an, wobei diese Informationen
nicht direkt im HTML-Dokument enthalten sind, sondern nur durch eine Anfrage an
die Datenverwaltungseinheit CMS1 des Websystems A ermittelt werden können.
Demzufolge stellt die Tracking Engine TE1 im Schritt S6 eine Datenbankanfrage, insbesondere
eine SQL-Anfrage, an die Inhaltverwaltungseinheit CMS1. Die CMS1 stellt diese Informationen,
welche beispielsweise Metainformationen sind, im Schritt S7 der Tracking Engine
TE1 zur Verfügung, welche daraufhin alle erfassten Informationen verarbeitet
und in eine einheitliche Datenstruktur konvertiert, welche in Schritt S8 in der
Datenbank DB1 abgespeichert wird und anschließend von der Analyseeinheit AS
verarbeitet werden kann.
3 zeigt ein Verfahren, mit dem HTML-Dokumente, welche
keine HTML-Dokumente sind, durch die Tracking Engine TE1 nachverfolgt werden können.
Für dieses Verfahren schickt der Browser BR1 zunächst im Schritt S1' eine
HTTP-Anfrage an die Inhaltbereitstellungseinheit CDA1. Diese erzeugt im Schritt
S2' wiederum ein HTML-Dokument. Dieses Dokument wird jedoch derart modifiziert,
dass die enthaltenen externen Links bzw. Links zu downzuloadenden Dateien nicht
direkt an die entsprechende URL gerichtet werden, sondern an die Adresse der Tracking
Engine TE1, wobei das HTML-Dokument jedoch auch die eigentliche Ziel-URL als einen
Parameter beinhaltet. Das HTML-Dokument wird im Schritt S3' an den Browser BR1 übermittelt.
Der Browser interpretiert schließlich im Schritt S4' dieses Dokument und zeigt
es an.
Wenn der Nutzer des Browsers nunmehr auf den in dem HTML-Dokument
enthaltenen externen Link bzw. die Download-Links klickt, wird eine entsprechende
HTTP-Anfrage nicht direkt an die Ziel-URL geleitet, sondern zunächst an die
Tracking Engine TE1 (Schritt S5'). Die Tracking Engine empfängt die HTTP-Anfrage
im Schritt S6' und antwortet darauf mit einer HTTP-Antwort, welche eine so genannte
HTTP-Response 302 sowie die Ziel-URL des Download-Links bzw. des externen
Links enthält. Die Übermittlung der HTTP-Antwort ist in 3
durch Schritt S7' angedeutet. Der Browser BR1 kann dann von der Ziel-URL die Daten
des Download-Links herunterladen bzw. auf den externen Link zugreifen, was in
3 durch Schritt S8' angedeutet ist. Die Daten des Download-Links
bzw. die Webinhalte des externen Links werden schließlich im Schritt S9' dem
Browser übermittelt.
In dem in 3 gezeigten Verfahren enthalten
die im Schritt S5' von der Tracking Engine empfangenen Daten wiederum Parameter,
welche statistische Informationen zu den angefragten Download-Links bzw. externen
Links enthalten. Diese Informationen werden – analog zu 2
– durch weitere Informationen ergänzt, welche nicht in der parametrisierten
Anfrage enthalten sind, sondern nur von der Inhaltverwaltungseinheit CMS1 abgerufen
werden können. Deshalb stellt die Tracking Engine TE1 im Schritt S10' eine
Anfrage bezüglich ergänzender Informationen an das Inhaltverwaltungssystem
CMS1, wobei die Anfrage insbesondere eine SQL-Datenbank-Anfrage ist. Im Schritt
S11' werden dann die ergänzenden Informationen, welche beispielsweise Metainformationen
sind, an die Tracking Engine TE1 übermittelt, welche diese Informationen in
eine Datenstruktur konvertiert, die in der lokalen Datenbank DB1 abgelegt wird (Schritt
S12') und von der Analyseeinheit AS verarbeitet werden kann.
4 zeigt eine schematische Darstellung einer bevorzugten
Ausführungsform eines Websystems, in der eine Tracking Engine gemäß
der Erfindung integriert ist. Das in 4 gezeigte Websystem
beinhaltet zwei Rechner-Cluster C1 und C2, welche jeweils über so genannte
Content-Switches CS mit Browsern im Internet IR bzw. in einem unternehmensinternen
Intranet IA verbunden sind. Die einzelnen Browser sind in 4
schematisiert durch Rechnermonitore angedeutet. Über diese Browser kann nunmehr
auf das Websystem, d.h. auf die Cluster C1 und C2, zugegriffen werden. Der Cluster
C1 stellt Webinhalte über drei separate Inhaltbereitstellungseinheiten CDA1,
CDA2 und CDA3 bereit. Der Cluster C2 beinhaltet auch eine Mehrzahl von Inhaltbereitstellungseinheiten,
wobei lediglich die Inhaltbereitstellungseinheit CDA4 angedeutet ist. Weitere Inhaltbereitstellungseinheiten
des Clusters C2 sind nicht wiedergegeben und nur durch den Platzhalter CDA angedeutet.
Das Websystem gemäß der 4 stellt hierbei
ein Teilsystem im Sinne der Ansprüche dar, d.h. alle Inhaltbereitstellungseinheiten
des Websystems stellen die Webinhalte gemäß der gleichen Logik bereit.
Das Websystem der 4 zeichnet sich durch
eine verteilte Tracking Engine aus, welche zwei Arten von Teileinheiten TE-P1 bzw.
TE-P2 enthält. Es gibt hierbei vier Teileinheiten TE-P1, welche jeweils einer
der Inhaltbereitstellungseinheiten CDA1 bis CDA4 zugeordnet sind bzw. in einer der
Inhaltbereitstellungseinheiten integriert sind. Diese Teileinheiten stellen hierbei
Front-end-Rechner dar, welche in Bezug auf die Erfassung der Webinhalte lediglich
die Anfragen verarbeiten und weiterleiten. Diese Front-end-Rechner TE-P1 wechselwirken
mit einem einzigen Back-end-Rechner TE-P2, welcher den zweiten Teil der Tracking
Engine darstellt. Das Wechselwirken zwischen diesen Rechner ist durch Pfeile A1
bis A5 angedeutet.
Der Rechner TE-P2 übernimmt hierbei andere Aufgaben als die Teileinheiten
TE-P1. Insbesondere ist er für die Konvertierung bzw. Transformation der erfassten
Informationen in die Datenstruktur verantwortlich, welche dann von der Analyseeinheit
AS verarbeitet werden kann. Darüber hinaus übernimmt er das Schreiben
der erfassten und konvertierten Informationen in die lokale Datenbank DB. Durch
die Ausführungsform der 4 wird eine ausfallsichere
und ressourcenoptimierte Möglichkeit der Nachverfolgung von Webinhalten gewährleistet.
Insbesondere sind die Teileinheiten TE-P1, welche lediglich Komponenten mit geringer
Rechenleistung umfassen, redundant ausgestaltet. Diese Redundanz ist wichtig, da
die Teileinheiten TE-P1 mit externen Browsern kommunizieren und somit ein Ausfall
dieser Teileinheiten eine Beendigung der Kommunikation zur Folge hätte. Demgegenüber
ist nur eine einzige zweite Teileinheit TE-2 vorgesehen, welche Komponente mit höherer
Rechnerleistung beinhaltet: Hierbei wird sich die Erkenntnis zu Nutze gemacht, dass
eine Redundanz der Back-end-Teileinheit TE-P2 für die Kommunikation mit den
externen Browsern nicht erforderlich ist. Ein Ausfall der Einheit TE-P2 würde
zwar nicht mehr die Nachverfolgung der aufgerufenen Webinhalte ermöglichen,
jedoch bleibt der Datenaustausch zwischen den Browsern und dem Websystem weiterhin
erhalten. In der Ausführungsform der 4 werden
somit Ressourcen gespart, da die Komponenten mit hoher Rechnerleistung in der Einheit
TE-P2 nicht mehrfach dupliziert werden. Nichtsdestotrotz ist das Rechnersystem ausfallsicher,
da die für den Ausfall kritischen Teileinheiten TE-P1 redundant ausgestaltet
sind.
5 zeigt eine alternative Möglichkeit zur Integration
einer Erfassungseinheit in einem Websystem. Das Websystem in 5
umfasst wiederum eine Mehrzahl von Inhaltbereitstellungseinheiten CDA1 bis CDA3,
wobei Browser im Internet IR über einen Content-Switch CS auf die bereitgestellten
Webinhalte zugreifen können. Durch die Inhaltbereitstellungseinheiten
wird ein Rechner-Cluster C1 gebildet. Im Unterschied zur Ausführungsform der
3 sind die Tracking Engines TE nicht in zwei Teileinheiten
aufgeteilt, sondern die Tracking Engines sind als Gesamteinheit in einem separaten
Cluster C2 angeordnet, wobei in der Ausführungsform der 5
zwei redundante Tracking Engines TE vorgesehen sind, wodurch die Ausfallsicherheit
des Systems erhöht wird.
6 ist eine weitere mögliche Ausführungsform
zur Integration von Erfassungseinheiten in einem Websystem. Analog zur Ausführungsform
der 5 werden die Webinhalte des Websystems über
einen Content-Switch CS von Browsern im Internet IR abgerufen. Das Websystem beinhaltet
hierbei vier Inhaltbereitstellungseinheiten CDA1, CDA2, CDA3 und CDA4, wobei ferner
auch vier redundant ausgebildete Tracking Engines TE vorgesehen sind. Im Unterschied
zu 5 sind die einzelnen Tracking Engines TE jedoch
nicht in einem separaten Cluster angeordnet, sondern sie bilden Bestandteile der
einzelnen Inhaltbereitstellungseinheiten CDA1 bis CDA4. Aufgrund der hohen Redundanz
der Tracking Engines ist das Verfahren sehr ausfallssicher.
7 zeigt eine schematische Darstellung einer weiteren
Ausführungsform der Integration von Tracking Engines in einem Websystem. Die
Ausführungsform der 7 ist ähnlich zu der
Ausführungsform der 4. Insbesondere sind zwei
Rechner-Cluster C1 und C2 vorgesehen, wobei der Cluster C1 die Inhaltbereitstellungseinheiten
CDA1, CDA2, CDA3 und CDA4 enthält. Der Cluster C2 umfasst ebenfalls eine Vielzahl
von Inhaltbereitstellungseinheiten, wobei lediglich die Einheit CDA5 dargestellt
ist und die restlichen Einheiten durch den Platzhalter CDA angedeutet sind. Analog
zur Ausführungsform der 4 umfassen einige der
Inhaltbereitstellungseinheiten, nämlich die Einheiten CDA1, CDA2 und CDA3,
nur einen Front-end-Rechner TE-P1, der in Bezug auf die Erfassung der Webinhalte
lediglich die Anfragen verarbeitet und weiterleitet. Im Unterschied zur
4 sind jedoch zwei redundant ausgestaltete Back-end-Rechner
TE-P2 vorgesehen, welche den zweiten Teil der Tracking Engine darstellen und zusammen
mit dem Rechner TE-P1 in den Inhaltbereitstellungseinheiten CDA3 bzw. CDA4 vorgesehen
sind. Diese Rechner übernehmen andere Aufgaben und dienen insbesondere zur
Konvertierung bzw. Transformation der erfassten Informationen in die Datenstruktur
zur Verarbeitung in der Analyseeinheit AS. Durch die redundante Ausführung
der Rechner TE-P2 wird die Wahrscheinlichkeit des Ausfalls der Überwachung
der aufgerufenen Webinhalte vermindert.