Datenerfassungs- und Datenverarbeitungssystem
1. Gebiet der Erfindung
Die vorliegende Erfindung betrifft ein Datenerfassungs- und Datenverarbeitungssystem sowie ein entsprechendes Verfahren für mindestens zwei Verkaufsstellen, die an verschiedenen Standorten arbeiten.
Die vorliegende Erfindung betrifft auch ein computergesteuertes Datenbanksys- te sowie ein Verfahren zum Speichern, Verwalten und Verarbeiten von Daten.
2. Stand der Technik
Computergesteuerte Datenbanksysteme werden in den verschiedensten Unternehmen, beispielsweise zur Buchhaltung oder zur Personalverwaltung, sowie von Dienstleistern, beispielsweise einer Telefonauskunfl, verwendet. Im Allgemeinen verwendet man Datenbanksysteme in allen Bereichen, in denen unterschiedliche Datenmengen einer spezifischen Person, einem Objekt oder einem Vorgang zugeordnet werden müssen.
Insbesondere Einzelhandel und Großhandel verfügen über eine Vielzahl von verschiedensten Artikeln, deren Zugang und Abgang ständig überwacht, analysiert und gesteuert werden muss. Aus diesem Grund ist es erforderlich, dass sowohl der Zugang als auch beispielsweise der Verkauf von Artikeln oder Waren erfasst wird. Dieser Vorgang des Erfassens erfolgt mit Hilfe von computergestützten Datenbanksystemen, in denen jeder Artikel gespeichert und verwaltet wird.
Diese computergestützten Datenbanksysteme werden bisher für einzelne Verkaufsstellen genutzt, wobei sich diese an verschiedenen Standorten befinden. Basierend auf dem technischen Aufwand derartiger Datenbanksysteme und aufgrund der für die Wartimg dieser Datenbanksysteme erforderlichen Maßnahmen sind für die Standorte diese Datenbanksysteme teuer. Ein weiterer Kostenpunkt ergibt sich aus der ständigen -Aktualisierung der verwendeten Software, um die Kompatibilität des Datenbanksystems zu Systemen von anderen Anbietern zu erhalten. So verwenden beispielsweise Einzelhandelsketten Datenbanksysteme, die die einzelnen Filialen miteinander vernetzen, wobei eine zentrale Verwaltung der zugehen- den und abgehenden Artikel erfolgt. Neben dem oben genannten Kostenaufwand für diese Datenbanksysteme lassen sich zudem die Zugangs- und Abgangsdaten der Artikel nicht kundenspezifisch analysieren, um auf diese Weise auf ein Kaufverhalten schließen zu können.
Die oben beschriebenen Datenbanksysteme einzelner Standorte wurden zusätzlich mit Karten, Kodierungen oder dergl. versehen, um die einzelnen Endverbraucher dieser Standorte identifizieren zu können. Werden daher Waren eines Endverbrauchers gemeinsam mit den kundenspezifischen Daten der Kodierung, der Karte, der Nummer oder dergl. erfasst, kann einerseits das Kaufverhalten analy- siert werden und andererseits die Warenpalette schneller an die Wünsche der Endverbraucher angepasst werden.
Nachteilig im Zusammenhang mit diesen Computersystemen oder Datenbanksystemen sind jedoch immer noch die Kosten, weil das Datenbanksystem be- schränkt auf einzelne Standorte eingesetzt wird und aus diesem Grund dieser Standort die Kosten für das gesamte Datenbanksystem tragen muss. Zudem werden zusätzliche Kosten durch das Ausgeben der kundenspezifischen Karten oder dergl. erzeugt.
Ein weiterer Nachteil ergibt sich aus der Struktur der kundenspezifischen Karten, die den Endverbraucher nur für den jeweiligen Standort identifizierbar machen.
Daraus folgt, dass die Karten nicht von einem anderen Standort oder einer anderen Verkaufsstelle genutzt werden können, weil die gespeicherten identifizierenden Daten des Endverbrauchers für diese Verkaufsstelle nicht lesbar sind.
Ein weiterer Nachteil ergibt sich aus geringen Datendichte, mit der Daten innerhalb solcher Datenbanksysteme übertragen werden.
Es ist daher das technische Problem der vorliegenden Erfindung, ein Datenerfassungssystem und ein Datenverarbeitungssystem bereitzustellen, dass für unter- schiedliche Standorte die Anschaffungskosten und den Wartungsaufwand im Vergleich zu bestehenden Verfahren reduziert. Es ist ein weiteres technisches Problem der vorliegenden Erfindung, kundenspezifische Daten effizienter und schneller durch das Datenbanksystem verwalten zu können.
Computergesteuerte Datenbanksysteme verwenden verschiedene Suchalgorithmen, um ausgehend von bestimmten Anfangsdaten in Verbindung stehende Enddaten zu ermitteln. Anfangsdaten sind beispielsweise in einem Buchhaltungssys- tem eine Rechnungsnummer, in einem Personalverwaltungssystem ein Name oder in einem Telefonauskunftsystem ein Name mit einer Adresse. Diesbezügliche Enddaten werden beispielsweise bei einer Rechnungsnummer durch die verschiedenen Rechnungspositionen und Preise, bei einem Namen in einem Personalver- waltungssystem durch dessen Vertragskonditionen, Verdienst- und Beschäftigungsbereich und in einem Telefonauskunftsystem durch die zu dem Namen und der Adresse gehörende Telefonnummer gebildet.
Gibt man beispielsweise in einem Personalver valtungssystem den Namen eines Mitarbeiters ein, sind zum Finden der entsprechenden Enddaten folgende Schritte erforderlich. Zunächst verzweigt das Datenbanksystem in ein entsprechendes Suchprogramm, dass die dem Namen zugeordneten Enddaten finden soll. Dieses Suchprogramm nimmt den ersten Buchstaben des eingegebenen Namens und öffnet eine Indexdatei, die aus 26 Einträgen besteht. Diese 26 Einträge entsprechen
den im Alphabet vorhandenen Buchstaben A - Z. Es erfolgt nun ein Vergleich des ersten Buchstabens des gesuchten Namens mit den 26 Einträgen, bis Übereinstimmung mit einem der 26 Einträge festgestellt worden ist. Nachdem in der Indexdatei der zu dem ersten Buchstaben passende Index gefunden worden ist, öff- net das Suchprogramm eine Indexdatei, in der Übereinstimmung zwischen dem zweiten Buchstaben des gesuchten Namens mit einem der Einträge festgestellt werden soll. Das Suchprogramm führt daher Schleifen zum Vergleichen des entsprechenden Buchstabens des gesuchten Namens mit den jeweiligen Einträgen der Indexdatei durch. Dieser Suchalgorithmus ist aufgrund der Vielzahl der durchzu- führenden Schleifen rechenintensiv und zeitaufwändig.
Nachdem der vollständige Index für den gesuchten Namen ermittelt worden ist, ergibt sich aus diesem vollständigen Index ebenfalls die Adresse, an der die gesuchten Enddaten gespeichert sind. An dieser Stelle übergibt das Suchprogramm die Enddaten an das Datenbanksystem, so dass ein weiteres Verwalten der Anfangs- und Enddaten erfolgen kann.
Basierend auf der notwendigen Rechenzeit und Rechenkapazität des oben beschriebenen Suchalgorithmus müssen Datenbanksysteme mit leistungsfähigen und somit teueren Mikroprozessoren ausgestattet sein, um eine effektive Datenverwaltung bereitstellen zu können.
Es ist daher das Problem der vorliegenden Erfindung, ein Datenbanksystem und ein Verfahren zum Verwalten von Daten auf der Basis eines Computersystems bereitzustellen, mit dem bestimmte Enddaten schneller gefunden und verwaltet werden im Vergleich zu herkömmlichen Systemen.
3. Zusammenfassung der Erfindung
Die obigen technischen Probleme werden durch ein Datenerfassungs- und Datenverarbeitungssystem gemäß den unabhängigen Ansprüchen 1, 4, 7 und 9, ein Ver-
fahren zur Datenerfassung und Datenverarbeitung gemäß dem unabhängigen Anspruch 12 sowie durch ein computergesteuertes Datenbanksystem gemäß Anspruch 14, das Verfahren gemäß Anspruch 22, das Verfahren gemäß Anspruch 27 und 28 sowie durch das Datenbanksystem gemäß Anspruch 29 gelöst.
Die vorliegende Erfindung umfasst ein Datenerfassungs- und Datenverarbeitungssystem für mindestens einen ersten und einen zweiten Standort aufweisend: mindestens eine Identifikationseinheit, die einen Endverbraucher anhand übermittelter Identifikationsdaten identifiziert; mindestens eine erste Leseeinheit des ersten Standorts und mindestens eine zweite Leseeinheit des zweiten Standorts, die die Identifikationsdaten der Identifikationseinheit erkennen; mindestens eine erste Datenerfassungseinheit des ersten Standorts und mindestens eine zweite Datenerfassungseinheit des zweiten Standorts, die jeweils kundenspezifische Daten von Waren des Endverbrauchers und die weiter geleiteten Identifikationsdaten des Endverbrauchers erfassen und ein erstes und ein zweites Gesamtergebnis ausgeben; eine zentrale Rechnereinheit mit einem Datenbanksystem, das jedem Endverbraucher ein Hauptkonto mit mindestens einem ersten Unterkonto der ersten Standorts und einem zweiten Unterkonto des zweiten Standorts zuordnet, das in diesem ersten und zweiten Unterkonto die kundenspezifischen Daten speichert und verarbeitet und das ein erstes Verarbeitungsergebnis der kundenspezifischen Daten des ersten Unterkontos und das ein zweites Verarbeitungsergebnis der kundenspezifischen Daten des zweiten Unterkontos in dem ersten bzw. zweiten Unterkonto speichert; eine erste Übertragungseinheit des ersten Standorts und eine zweite Übertragungseinheit des zweiten Standorts, wobei die erste Übertragungseinheit die kundenspezifischen Daten von der ersten Datenerfassungseinheit auf das erste Unterkonto und die zweite Übertragungseinheit die kundenspezifischen Daten von der zweiten Datenerfassungseinheit auf das zweite Unterkonto mit Hilfe von drahtloser Datenkommunikation überträgt und die Daten von der zentralen Recheneinheit zu der ersten und der zweiten Datenerfassungseinheit mit Hilfe von drahtloser Datenkommunikation übertragen; und mindestens einen Datenbank-
terminal mit einer dritten Leseeinheit, einer Übertragungseinheit und einer Eingabeeinheit, so dass das erste und zweite Unterkonto auf der zentralen Rechnereinheit für den Endverbraucher selbständig abrufbar ist und so dass für den Endverbraucher das erste und zweite Verarbeitungsergebnis durch ein Starten eines Verarbeitungsprogramms veränderbar ist.
Die vorliegende Erfindung liefert ein ve netztes Computersystem bzw. Datenbanksystem, das zur Datenerfassung und zur Datenverarbeitung für die Daten von getrennt voneinander arbeitenden Verkaufsstellen bzw. Standorten genutzt wird. Ein Standort bezeichnet in diesem Zusammenhang jeweils eine Verkaufsstelle einer Verkaufskette oder unabhängige Verkaufsstellen. Zudem bezeichnet ein Standort Punkte, an denen ein Warenaustausch oder Handel im allgemeinsten Sinne stattfindet, der mit zu verwaltenden Daten verbunden ist.
Dieses Datenverarbeitungssystem führt eine kundenspezifische Datenverarbeitung durch, wobei den Standorten mindestens ein kundenspezifisches Unterkonto zugewiesen ist, so dass die erfassten und verwalteten Daten nur dem jeweiligen Standort und dem Endverbraucher selbst zugänglich sind. Auf dieser Grundlage werden die Daten vor den anderen Standorten gesichert und gleichzeitig wird der apparative Aufwand für ein derartiges Datenverarbeitungssystem minimiert, weil nicht jeder einzelner Standort ein eigenes Datenbanksystem aufbauen und in Stand halten muss.
Ein weiterer Vorteil des vorliegendem Systems ergibt sich aus der Verwendung mobiler Datenkommunikation zur Datenübermittlung zwischen den einzelnen Systemkomponenten. Die mobile Datenkommunikation, bevorzugt mit GPRS oder anderen Übertragungsformaten, vermeidet das aufwendige Verlegen von Kabeln. Zudem werden mit Hilfe mobiler Datenkommunikation große Datenmengen schnell und über beliebige Entfernungen übertragen.
Es ist weiterhin bevorzugt, dass die Identifikationseinheit ein Transponder, ein Magnetkartenleser oder ein Barcodeleser ist.
Ein weiterer Vorteil der vorliegenden Erfindung ergibt sich aus der Identifikation des Endverbrauchers mit Hilfe eines Transponders. Diese Identifikation erfolgt beriihrungslos, weil erfindungsgemäß bevorzugt der Transponder kundenspezifische Identifikationsdaten an das Datenverarbeitungssystem sendet, die von dem Datenverarbeitungssystem erkannt werden. Der übermittelte Datensatz zur Identifikation des Endverbrauchers ist so konfiguriert, dass die einzelnen Standorte die für ihre Datenverwaltung erforderlichen Identifikationsdaten darin speichern können. Daraus folgt die Möglichkeit für den Endverbraucher, sich in getrennt voneinander arbeitenden Standorten über nur eine Identifikationseinheit, nämlich den Transponder, identifizieren zu können. Als weiterer Vorteil folgt aus der Verwendung eines Transponders, dass dieser wenig Platz einnimmt und zudem berüh- rungslos mit der Leseeinheit des Datenverarbeitungssystem kommuniziert, wodurch auch eine nicht sichtbare Kundenidentifikation ermöglicht wird. Zudem sind an Stelle des Transponders auch Magnetkarten, Barcodes oder dergl. zur I- dentifikation bevorzugt.
Gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung ist das erste und/oder zweite Verarbeitungsergebnis mit Hilfe eines Zufallsgenerators mittels des Verarbeitungsprogramms veränderbar, wodurch das erste und/oder zweite Verarbeitungsergebnis vermehrt, reduziert, konstant gehalten oder gelöscht wird, um einen Verarbeitungsaufwand der kundenspezifischen Daten zu vermin- dem oder konstant zu halten.
Es ist erfindungsgemäß bevorzugt, dass der Endverbraucher über einen Datenbankterminal des Datenverarbeitungssystems Zugriff auf sein Hauptkonto mit den den jeweiligen Standorten zugeordneten Unterkonten hat. Diese Unterkonten um- fassen mit den erworbenen Waren verbundene kundenspezifische Daten sowie die Verarbeitungsergebnisse aus diesen Daten. Ein derartiges Verarbeitungsergebnis
ist erfindungs gemäß bevorzugt eine Summe, die dem Endverbraucher bei seinem nächsten Einkauf gutgeschrieben wird. Neben der Einsicht in die Unterkonten ist es ebenfalls erfindungsgemäß bevorzugt, dass der Endverbraucher diese Verarbeitungsergebnisse durch das Starten eines Verarbeitungsprogramms beeinflusst und verändert. Erfindungsgemäß bevorzugt wird durch die Nutzung eines Zufallsgenerators das Verarbeitungsergebnis vervielfacht, reduziert oder aufgehoben. Durch diesen Beitrag des Endverbrauchers wird der Datenaufwand des Datenverarbeitungssystems reduziert, sofern das Verarbeitungsergebnis, erfindungsgemäß bevorzugt die Summe, durch den Zufallsgenerator gelöscht wird. Der Daten- bankterminal wird erfindungsgemäß bevorzugt über einen Touchscreen bedient, der in dem Standort A und dem Standort B vorhanden ist. Es ist weiterhin erfindungsgemäß bevorzugt, dass der Datenbankterminal durch einen Homecomputer des Endverbrauchers gebildet wird. Dieser Homecomputer kommuniziert in Abhängigkeit von seiner Vernetzung und abhängig von den durch den Endverbrau- eher ausgeführten Verarbeitungspro grammen mit der zentralen Rechnereinheit und/oder der ersten und/oder zweiten Datenerfassungseinheit. Es ist ebenfalls bevorzugt, dass der Betreiber des Standorts mit Hilfe eines Homecomputers oder Standortcomputers eine Verbindung zum Datenbanksystem und somit zur zentralen Rechnereinheit aufnimmt, um Datenverwaltung vorzunehmen.
Die vorliegende Erfindung umfasst weiterhin ein Verfahren zur Datenerfassung und Datenverarbeitung für mindestens einen ersten und einen zweiten Standort, die folgenden Schritte aufweisend: Erkennen und Weiterleiten eines Identifikationssignals durch eine erste Leseeinheit des ersten Standorts oder eine zweite Le- seeinheit des zweiten Standorts, dass von einer Identifikationseinheit eines Endverbrauchers ausgegeben wird; Erfassen von kundenspezifischen Daten mit einer ersten Datenerfassungseinheit in dem ersten Standort oder mit einer zweiten Datenerfassungseinheit in dem zweiten Standort; Übertragen der kundenspezifischen Daten und des Identifikationssignals zu einer zentralen Rechnereinheit, wo mit Hilfe des Identifikationssignals ein Hauptkonto des Endverbrauchers identifiziert wird und wo die kundenspezifischen Daten des ersten Standorts in einem ersten
Unterkonto des Hauptkontos und die kundenspezifischen Daten des zweiten Standorts in einem zweiten Unterkonto des Hauptkontos abgespeichert werden; Erstellen eines ersten Verarbeitungsergebnisses auf der Basis der kundenspezifischen Daten des ersten Unterkontos und eines zweiten Verarbeitungsergebnisses auf der Basis der kundenspezifischen Daten des zweiten Unterkontos und Abspeichern des ersten und zweiten Verarbeitungsergebnisses in dem jeweiligen Unterkonto gemeinsam mit einem ersten und zweiten vorangegangenen Verarbeitungsergebnis eines vorangegangenen Vorgangs mit den vorangegangenen Schritten; Übertragen des ersten oder zweiten vorangegangenen Verarbeitungsergebnisses mit Hilfe von drahtloser Datenkommunikation an die erste oder zweite Datenerfassungseinheit und Berechnen eines Gesamtergebnisses aus den kundenspezifischen Daten und dem ersten oder zweiten vorangegangenen Verarbeitungsergebnis.
Erfindungs gemäß bevorzugt wird das Gesamtergebnis zunächst in der zentralen Rechnereinheit ermittelt und dann an die Datenerfassungseinheiten übertragen. Es ist ebenfalls erfindungsgemäß bevorzugt, die kundenspezifischen Daten in der jeweiligen Datenerfassungseinheit zu verarbeiten und entsprechende Verarbeitungsergebnisse zu bestimmen und zwischenzuspeichem. Dem gemäß werden die vorangegangenen Verarbeitungsergebnisse von der zentralen Rechnereinheit an die Datenerfassungseinheit übertragen, um dort gemeinsam mit den kundenspezifischen Daten der Waren das Gesamtergebnis zu ermitteln und auszugeben.
Gemäß einer bevorzugten Ausführungsform des vorliegenden Verfahrens umfasst dies weiterhin die folgenden Schritte: Abmfen der kundenspezifischen Daten, des Verarbeitungsergebnisses und des vorangegangenen Verarbeitungsergebnisses des ersten und zweiten Unterkontos durch den Endverbraucher mit Hilfe eines Datenbankterminals, an dem sich der Endverbraucher durch die Identifikationseinheit identifiziert; Starten eines Verarbeitungsprogramms mit Zufallsgenerator über einen Touch-Screen des Datenbankterminals, wodurch das erste und/oder zweite Verarbeitungsergebnis vermehrt, reduziert, konstant gehalten oder gelöscht wird,
um einen Verarbeitungsaufwand der kundenspezifischen Daten zu vermindern oder konstant zu halten; und Abspeichern des ersten oder zweiten Verarbeitungsergebnisses in dem ersten oder zweiten Unterkonto der zentralen Rechnereinheit.
Die vorliegende Erfindung umfasst ferner ein computergesteuertes Datenbank- system zum Speichern, Verwalten und Verarbeiten von zusammenhängenden Anfangs- und Enddaten aufweisend: eine Eingabe- Auslese-Einheit, mit deren Hilfe die Anfangsdaten in das Datenbanksystem eingebbar und die Enddaten aus dem Datenbanksystem auslesbar sind, ein Speichermittel, in dem die Enddaten an einer festgelegten Adresse in dem Speicher speicherbar sind und Bestunmungsmittel, mit denen die festgelegte Adresse der Enddaten aus den Anfangsdaten bestimmbar ist, so dass die Enddaten durch eine direkte Adressierung von der festgelegten Adresse der Enddaten in dem Speichermittel auslesbar sind.
Das vorliegende computergesteuerte Datenbanksystem dient der Verwaltung von zusammengehörigen Anfangs- und Enddaten. Es zeichnet sich dadurch aus, dass beim Suchen der Enddaten in den Speichermitteln des Datenbanksystems aufwendige Suchalgorithmen eingespart werden, indem eine direkte Adressierung der Enddaten in den Speichermitteln verwendet wird. Diese direkte Adressierung der Enddaten ist aus den Anfangsdaten bestimmbar. Basierend auf der direkten Adressierung sind rechenintensive Indizierungen, die in mehrfachen Tabellen erarbeitet werden, nicht erforderlich. Zudem werden erfindungsgemäß bevorzugt die Anfangsdaten derart von dem Datenbanksystem aufgenommen, dass sie ein Zeigerelement auf die in den Speichermitteln abgelegten Enddaten darstellen. Nach der direkten Adressierung der Enddaten in den Speichermitteln erfolgt ein direkter Zugriff auf diese Adresse zum Auslesen und Ausgeben der Enddaten.
Gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung umfasst das Speichermittel mindestens zwei kaskadierte, physikalisch voneinander ge- trennte Speicherbereiche.
Um die Enddaten basierend auf einer direkten Adressierung in festgelegten Speicherbereichen speichern und aus diesen auslesen zu können, werden erfindungsgemäß bevorzugt mindestens zwei physikalisch voneinander getrennte Speicherbereiche in Form einer Kaskade hintereinander geschaltet. Diese physikalisch voneinander getrennten Speicherbereiche werden erfindungsgemäß bevorzugt durch selbständige Speichersysteme, Computer- oder Client-Systeme gebildet. Der Begriff Kaskadierung bezeichnet in diesem Zusammenhang, dass physikalisch abgegrenzte Speicherbereiche derart aneinander gereiht und miteinander verbunden sind, dass sie wahlweise zugriffsbereit sind, oder dass sie nacheinander mit speicherbaren Daten gefüllt werden, jeweils nachdem der vorhergehende Speicherbereich ausgelastet worden ist.
Gemäß einer weiteren bevorzugten Ausführungsform des vorliegenden Datenbanksystems sind die Enddaten in einer Mehrzahl gleichgroßer Bereiche in dem ersten und zweiten der mindestens zwei Speicherbereiche speicherbar.
Es ist bevorzugt, den Enddaten ausgehend von den Anfangsdaten gleichgroße Bereiche in dem ersten und zweiten der mindestens zwei Speicherbereiche zuzuweisen. Auf diese Weise wird ein direkter Bezug zwischen den Anfangsdaten und einer bestimmten Menge von Enddaten in diesen Bereichen hergestellt. Zudem wird garantiert, dass aus den Anfangsdaten die Adresse der Enddaten in den mindestens zwei Speicherbereichen ermittelt werden kann, ohne das aufwendige Suchalgorithmen durchgeführt werden müssen.
Gemäß einer weiteren bevorzugten Ausführungsform sind die Enddaten unabhängig von den physikalischen Grenzen der mindestens zwei Speicherbereiche fortlaufend in dem ersten und zweiten der mindestens zwei Speicherbereiche speicherbar.
Bestehen die Enddaten aus einer Vielzahl von Datentypen oder Datenarten, sind diese in einem dafür vorgesehenen abgegrenzten Bereich speicherbar, wie es oben
beschrieben wurde. Es ist ebenfalls bevorzugt, die verschiedenen Datenarten oder Datentypen der Enddaten fortlaufend in dem ersten und zweiten der mindestens zwei Speicherbereiche zu speichern. Das bedeutet beispielsweise, dass der Datentyp 1 der jeweiligen Enddaten immer nur im ersten der zwei Speicherbereiche abgelegt wird und das der Datentyp 2 der jeweiligen Enddaten immer nur im zweiten der mindestens zwei Speicherbereiche abgelegt wird. Auch diese Art der Verteilung der Enddaten gewährleistet einen schnellen Zugriff auf die Enddaten ohne die Verwendung aufwendiger Suchalgorithmen.
Gemäß einer weiteren bevorzugten Ausführungsform wird durch das Bestimmungsmittel aus den Anfangsdaten eine Angabe bestimmt, die die festgelegte Adresse der Enddaten bezeichnet oder der an einer Stelle im Datenbanksystem die festgelegte Adresse der Enddaten zugewiesen ist.
Gemäß einer weiteren bevorzugten Ausführungsform ist ein das Datenbanksystem steuerndes Computerprogramm an einer zentralen Stelle erfasst, wobei das Datenbanksystem über eine Client-Server-Beziehung nutzbar ist.
Das Computeφrogramm, dass das Datenbanksystem steuert, ist bevorzugt an ei- ner zentralen Stelle, beispielsweise in einem Server, gespeichert. Ausgehend von diesem Server greift das Datenbanksystem auf verbundene Speicherbereiche zu, um die dort abgelegten Daten auszulesen. Durch die zentrale Speicherung des steuernden Computerprogramms ist eine Mehrzahl von Client-Systemen an den Server anschließbar und somit das Datenbanksystem für diese Client-Systeme parallel nutzbar.
Es ist weiterhin bevorzugt, dass das das Datenbanksystem steuernde Computerprogramm für mindestens ein Client-System direkt zugriffsbereit ist.
Neben der Speicherung des steuernden Computeφrogramms für das Datenbanksystem an einer zentralen Stelle ist ebenfalls die Speicherung dieses Computer-
programms in den einzelnen Client-Systemen bevorzugt. Die Client-Systeme führen auf dieser Basis das Computeφrogramm selbständig durch und greifen dann auf die verbundenen Speicherbereiche mit den jeweiligen Enddaten zu.
Es ist weiterhin bevorzugt, dass das das Datenbanksystem steuernde Computer- programm gemeinsam mit den Enddaten jeweils in den mindestens zwei Speicherbereichen gespeichert ist oder dass das Computeφrogramm in mindestens einem Programmspeicherbereich getrennt von den Enddaten gespeichert ist.
Die vorliegende Erfindung umfasst weiterhin ein Verfahren zum Speichern, Verwalten und Verarbeiten von zusammenhängenden Anfangs- und Enddaten in einem computergesteuerten Datenbanksystem, die folgenden Schritte aufweisend: Eingeben der Anfangsdaten in eine Eingabe- Auslese-Einheit; Bestimmen einer festgelegten Adresse der Enddaten aus den Anfangsdaten, an der die Enddaten in einem Speichermittel gespeichert sind, und Auslesen der Enddaten aus dem Speichermittel mit Hilfe einer direkten Adressierung der Enddaten.
Es ist weiterhin bevorzugt, dass das Verfahren das Speichern von Enddaten an einer festgelegten Adresse umfasst, die aus den Anfangsdaten bestimmbar ist.
Die vorliegende Erfindung umfasst weiterhin ein Verfahren zum Feststellen der Übereinstimmung eines Datums gemäß Ansprüchen 27 und 28.
4. Kurze Beschreibung der begleitenden Zeichnungen.
Die bevorzugten Ausführungsformen der vorliegenden Erfindung werden unter Bezugnahme auf die begleitenden Zeichnungen näher erläutert. Es zeigen:
Figur 1 die schematische Darstellung des erfindungsgemäß bevorzugten Datenerfassungs- und Datenverarbeitungssystems für mindestens einen ersten und einen zweiten Standort.
Figur 2 eine schematische Darstellung einer bevorzugten Ausführungsform des vorliegenden Datenbanksystems;
Figur3 eine bevorzugte Strukturierung der Daten- und Prograrnmbereiche;
Figur 4 die bevorzugte Verteilung der Enddaten auf die mindestens zwei Speicherbereiche;
Figur 5 das bevorzugte Zusammenwirken der Speicherbereiche mit dem das Datenbanksystem steuernden Computeφrogramm; und
Figur 6 die bevorzugte Anordnung von Programmspeichern und Datenspeichern in dem Datenbanksystem.
Fig. 7 das Ablaufschema eines Verfahrens zum Feststellen der Überein- Stimmung eines Datums gemäß einem Ausführungsbeispiel der vorliegenden Erfindung.
5. Detaillierte Beschreibung der bevorzugten Ausführungsformen
Das erfindungsgemäße Datenerfassungs- und Datenverarbeitungssystem wird bevorzugt für mindestens zwei Verkaufsstellen eingesetzt, die unterschiedliche Standorte bilden. Diese Standorte können der selben oder unterschiedlichen Verkaufsketten angehören oder sie sind eigenständig. Auf dieser Grundlage wird durch das erfindungsgemäße Datenerfassungs- und Datenverarbeitungssystem ein übergreifendes Verwaltungssystem bereitgestellt, das eine Datenerfassung und Datenauswertung gewährleistet, die die Standorte getrennt voneinander ausführen können. Aufgrund dieser Computervernetzung verschiedener Standorte ist es
nicht erforderlich, dass die einzelnen Standorte eigene Computersysteme aufbauen und warten. Daraus resultiert der Einsatz eines leistungsfähigen vernetzten Computersystems in den einzelnen Standorten, der gleichzeitig aufgrund des Zusammenschlusses mit einem reduzierten Wartungsaufwand und daher mit redu- zierten Kosten verbunden ist. Trotzdem wird durch dieses vernetzte Datenerfassungs- und Datenverarbeitungssystem erfindungsgemäß bevorzugt die Geheimhaltung der Endverbraucherdaten gegenüber anderen Standorten gewährleistet.
Neben der erfindungsgemäß bevorzugten Datenverarbeitung durch die beteiligten Standorte ist es dem Endverbraucher möglich, eine eigene Datenverarbeitung über angeschlossene Datenbankterminals vorzunehmen. Eine derartige Datenverarbeitung umfasst erfindungsgemäß bevorzugt die Übeφriifung der kundenspezifischen Konten und der darin enthaltenen Daten, das Bearbeiten dieser Daten (wie es unten näher beschrieben ist), sowie die Kommunikation mit dem jeweiligen Standort. Durch das eigene Bearbeiten der gespeicherten Daten durch den Endverbraucher reduziert sich der Verarbeitungsaufwand für das Datenverarbeitungssystem oder dieser Aufwand bleibt zumindest konstant. Die durch den Endverbraucher genutzten Verarbeitungsprogramme werden manuell über den Datenbankterminal gestartet oder sie werden durch die Auswahl über diesen Daten- bankterminal als permanente Verarbeitungssoftware dem jeweiligen Unterkonto des entsprechenden Standorts zugewiesen.
Das erfindungsgemäße System wird durch ein Computernetzwerk gebildet, wie es schematisch in Figur 1 dargestellt ist. Dieses Computernetzwerk umfasst eine zentrale Rechnereinheit 60, die auch als Server bezeichnet wird. Auf dieser zentralen Rechnereinheit 60 wird ein Datenbanksystem betrieben, das erfindungsgemäß bevorzugt jedem beteiligten Endverbraucher ein Hauptkonto 70 zuweist. Die Zuordnung des Hauptkontos 70 zu dem jeweiligen Endverbraucher erfolgt über einen identifizierenden Datensatz. Dieser identifizierende Datensatz ist sowohl in der zentralen Rechnereinheit 60 als auch in einer Identifikationseinheit 10 gespeichert, wie unten ausführlich beschrieben ist.
Die zentrale Rechnereinheit 60 bzw. der Server ist mit verschiedenen Standorten A, B vernetzt bzw. verbunden. Zwischen den getrennt voneinander arbeitenden Standorten A, B liegt keine Vernetzung vor, um eine separate Datenübertragung zur zentralen Rechnereinheit 60 zu gewährleisten.
In Abhängigkeit von der Anzahl der mit der zentralen Rechnereinheit 60 verbundenen Standorte A, B werden innerhalb des kundenspezifischen Hauptkontos 70 Unterkonten 72,74 gebildet. Bezugnehmend auf die bevorzugte Ausführungsfoπn, die in Figur 1 gezeigt ist, werden im Hauptkonto 70 des Endverbrauchers ein erstes Unterkonto 72 in Verbindung mit dem ersten Standort A und ein zweites Unterkonto 74 in Verbindung mit dem zweiten Standort B angelegt. Sobald innerhalb dieser Standorte A, B kundenspezifische Daten ermittelt werden, werden die kundenspezifischen Daten des ersten Standorts A in dem ersten Unterkonto 72 ge- speichert und die kundenspezifischen Daten des zweiten Standorts B werden in dem zweiten Unterkonto 74 gespeichert.
Um die ermittelten -kundenspezifischen Daten des ersten Standorts A und des zweiten Standorts B auf das jeweilige Unterkonto 72, 74 der zentralen Rechner- einheit 60 zu übertragen, wird eine erste Übermittlungseinheit 80 des ersten Standorts A und eine zweite Übermittlungseinheit 90 des zweiten Standorts B verwendet. Mit Hilfe der Übermittlungseinheiten 80, 90 werden die Daten in beide Richtungen zwischen der zentralen Rechnereinheit 60 und einer ersten 40 und einer zweiten Datenerfassungseinheit 50 übertragen. Die Übertragung oder Über- mittlung der Daten erfolgt bevorzugt über eine Vernetzung des erfindungsgemäßen Datenerfassungs- und Datenverarbeitungssystems. Diese Vernetzung wird beispielsweise durch Telefonnetze oder andere elektrische Verbindungen bereitgestellt.
Es ist ebenfalls bevorzugt, die Datenkommunikation zwischen der zentralen Rechnereinheit 60 und den angeschlossenen Datenerfassungseinheiten 40, 50 mit
Hilfe von mobiler Datenkommunikation, d.h. mit Hilfe von GPRS (General Packet Radio Service) und/oder UMTS (Universal Mobile Telecommunication System) durchzuführen. Diese Systeme ermöglichen bevorzugt eine schnelle Übertragung großer Datenmengen, so dass eine Datenübertragung in Echtzeit möglich ist. In diesem Fall ist die Datenverarbeitung erfindungsgemäß bevorzugt unabhängig davon, ob sie von der zentralen Rechnereinheit 60 oder von den Datenerfassungseinheiten 40, 50 in den einzelnen Standorten A, B durchgeführt wird.
Um die zu speichernden kundenspezifischen Daten zu ermitteln, umfasst jede Standort A, B die bereits oben genannten Datenerfassungseinheiten 40, 50. Erfin- dungsgemäß bevorzugt werden mit diesen Datenerfassungseinheiten 40, 50 die gekauften bzw. ausgewählten Waren erfasst. Diese Erfassung erfolgt erfindungsgemäß bevorzugt automatisch mit beispielsweise Scanmethoden. In Abhängigkeit von der Art und dem Umfang der zu erfassenden kundenspezifischen Daten ist ebenfalls eine manuelle Eingabe bevorzugt.
Um in den einzelnen Standorten A, B die Daten als kundenspezifische Daten erfassen zu können, muss zunächst eine Identifikation des Endverbrauchers erfolgen. Erfindungsgemäß bevorzugt erfolgt diese Kundenidentifikation mit Hilfe eines Transponders 10, der auch als Identifikationseinheit 10 bezeichnet wird (vgl. Figur 1 ). Im Vergleich zu dem erfindungs gemäß bevorzugten Transponder 10 sind bekannte Plastikarten mit Magnetstreifen aufwendig in der Benutzung. Jeder einzelne Standort A, B gibt seine eigenen Plastikkarten mit Magnetstreifen aus und der auf diesen Karten gespeicherte Datensatz zur Identifikation des End- Verbrauchers ist für andere Standorte nicht lesbar. Zudem erfordert eine derartige Plastikkarte mit Magnetstreifen, dass die Kundenkarte bei jedem Kauf oder bei jedem Identifikationsvorgang in ein entsprechendes Lesegerät eingeführt werden muss. Somit sind beim Erfassen der Daten zusätzliche Arbeitsschritte erforderlich, die die notwendige Zeit für die Datenerfassung steigern. Jedoch sind auch diese Karten und Identifikationseinheiten bevorzugt in der vorliegenden Erfindung.
Der erfindungsgemäß bevorzugte Transponder 10 speichert den identifizierenden Datensatz mit ausreichender Information, so dass die verschiedensten Standorte A, B aus diesem identifizierenden Datensatz die für sie notwendigen Informationen ableiten können. Des Weiteren erfolgt die Trennung der Kundendaten nicht über den identifizierenden Datensatz des Transponders 10, sondern die Trennung erfolgt über die in der zentralen Rechnereinheit 60 eingerichteten Unterkonten 72, 74 des Hauptkontos 70, die den einzelnen Standorten A, B zugewiesen sind. Auf diese Unterkonten 72, 74 haben sowohl der Endverbraucher als auch der jeweiligen Standort A oder B Zugriff, für die dieses Unterkonto 72, 74 eingerichtet wor- den ist.
Bevorzugt wird ein passiver Transponder 10 verwendet. Passive Transponder 10 haben keine eigene Stromversorgung in Form einer Batterie. Daher sind sie wartungsfrei, haben eine hohe Lebensdauer und zeichnen sich durch geringe Abmes- sungen aus. Basierend auf der fehlenden Batterie und den geringen Abmessungen werden erfindungsgemäß bevorzugte Transponder 10 in Plastikkarten, Schlüssel- anhängern, in Münzform, als Armbänder oder ähnlich bereitgestellt. Sie können daher von dem Endverbraucher mit geringem Aufwand mitgeführt werden. Ein derartiger passiver Transponder 10 umfasst einen Mikrochip und eine Antenne, wobei die Energie für den Chip über die Antenne aus dem umgebenden Frequenzfeld abgeführt wird. Über diese Antenne erfolgt ebenfalls der Datenaustausch des Transponders 10 mit einer später zu beschreibenden Leseeinheit 20, 30.
Erfindungsgemäß bevorzugt übermittelt der Transponder 10 sein Signal an die Leseeinheit 20 oder die Leseeinheit 30. Die Leseeinheit 20 ist erfindungsgemäß bevorzugt mit der ersten Datenerfassungseinheit 40 des ersten Standorts A und die Leseeinheit 30 ist erfindungsgemäß bevorzugt mit der zweiten Datenerfassungseinheit 50 des zweiten Standorts B verbunden. Das Signal des Transponders 10 wird von den Leseeinheiten 20, 30 erfindungsgemäß bevorzugt ohne Vorzeigen oder Einstecken des Transponders 10 in die Leseeinheit 20, 30 übermittelt. Es ist ebenfalls erfindungsgemäß bevorzugt, den Transponder 10 mit einer ausreichen-
den Leistung zu versehen, so dass allein beim Passieren der Leseeinheit 20, 30 der Endverbraucher durch das Übermitteln des Transpondersignals identifiziert wird. Erfindungsgemäß bevorzugt kommunizieren auch andere infrastrukturelle Einrichtungen, beispielsweise Einrichtungen im Parkhaus oder in der Gastronomie, mit dem kundenspezifischen Transponder 10, so dass eine Identifikation des Endverbraucher erfolgt. Die ermittelten Daten, wie beispielsweise Parkzeit in einem Parkhaus, entstandene Kosten und dergleichen, werden auf dieser Grundlage auf das Hauptkonto 70 des Endverbrauchers innerhalb der zentralen Rechnereinheit 60 übermittelt und dort gespeichert.
Die -kundenspezifischen Daten in Verbindung mit den von dem Endverbraucher ausgewählten Waren werden durch die erste Datenerfassungseinheit 40 des ersten Standorts A und durch die zweite Datenerfassungseinheit 50 des zweiten Standorts B erfasst. Erfindungsgemäß bevorzugt erfolgt die Verarbeitung dieser Daten, wie beispielsweise die Ermittlung von Kosten oder dem Endverbraucher zuzuschreibende Rabatte, in der Datenerfassungseinheit 40, 50 oder nach Übermittlung der kundenspezifischen Daten innerhalb der zentralen Rechnereinheit 60. Ausgehend von den von der ersten Datenerfassungseinheit 40 des ersten Standorts A ermittelten Daten, werden diese durch die erste Übermittlungseinheit 80 an die zentrale Rechnereinheit 60 übertragen. Innerhalb der zentralen Rechnereinheit 60 werden diese Daten und das erste Verarbeitungsergebnis, sofern es bereits vorliegt, in dem ersten Unterkonto 72 gespeichert, dass dem ersten Standorts A zugewiesen ist. Erfindungsgemäß bevorzugt enthält das erste Verarbeitungsergebnis die ermittelten Gesamtkosten und eine zu gewährende Summe. Die Summe wird jedoch erfindungsgemäß bevorzugt auf die Gesamtkosten angerechnet oder sie wird für den nächsten Kauf bzw. die nächste kundenspezifische Datenerfassung in dem Unterkonto 72 gespeichert.
Erfolgt nun die nächste kundenspezifische Datenerfassung oder der nächste Kauf ergibt sich nach oben beschriebenem Ablauf ein nachfolgendes erstes Verarbeitungsergebnis. Dieses nachfolgende erste Verarbeitungsergebnis wird erfindungs-
gemäß bevorzugt mit dem vorangegangenen ersten Verarbeitungsergebnis, also mit der erfindungs gemäß bevorzugten vorangegangenen Summe, verrechnet, um ein erstes Gesamtergebnis zu erzielen. Diese Verrechnungsmethode ist nur anwendbar, wenn die vorangegangene Summe nicht bereits auf die vorangegange- nen Gesamtkosten angerechnet worden ist. Die gleiche Berechnungsgrundlage gilt entsprechend für jeden einzelnen Standorte A, B, die ihren Endverbrauchern diese Art der Datenverarbeitung zur Verfügung stellt.
Die Ausgabe des berechneten ersten Gesamtergebnisses der Daten des ersten Standorts A erfolgt über die erste Datenerfassungseinheit 40, nachdem diese Daten von der zentralen Rechnereinheit 60 mit Hilfe der Übermittlungseinheit 80 übermittelt worden sind. Gleichzeitig wird das erste Gesamtergebnis bzw. das Gesamtergebnis des jeweiligen Standorts A, B in dem entsprechenden Unterkonto 72, 74 der zentralen Rechnereinheit 60 gespeichert.
Es ist weiterhin erfindungsgemäß bevorzugt, eine Kontrolle und eine weitere Verarbeitung der kundenspezifischen Daten innerhalb der Unterkonten 72, 74 mit Hilfe eines Datenbankterminals 10 bereitzustellen. Über diesen Nerwaltungster- minal 10 hat der Endverbraucher Zugriff auf sein Hauptkonto 70 sowie die im Rahmen des Hauptkontos geführten Unterkonten 72, 74, die den einzelnen Standorten A, B zugeordnet sind. Erfindungsgemäß bevorzugt befindet sich mindestens ein Datenbankterminal 10 an jedem Standort A, B, um dem Endverbraucher jederzeit Zugriff auf seine Konten 70, 72, 74 zu ermöglichen. Es ist ebenfalls erfindungsgemäß bevorzugt, einen privaten Homecomputer des Endverbrauchers als Verwaltungsterminal 100 einzusetzen. Dieser Homecomputer kommuniziert bevorzugt von der Wohnung/Büro des Endverbrauchers mit einer oder mehreren ausgewählten Komponenten des Datenerfassungssystems, d.h. beispielsweise mit der zentralen Rechnereinheit und/oder mit der jeweiligen Datenerfassungseinheit der Standorte A, B. Eine weitere bevorzugte Ausführangsform besteht darin, dass sich der Endverbraucher über einen beliebigen an das Internet angeschlossenen Computer, mit dem erfindungsgemäßen Datenerfassungssystem verbinden kann.
Erfmdungsgemäß bevorzugt stellt dann entweder die Datenerfassungseinheit 40, 50 oder die zentrale Rechnereinheit 60 die Software für die Funktionen des Datenbankterminals 100 bereit. Der Endverbraucher ist daher nicht an die Öffnungszeiten der Standorte A, B gebunden und er muss nicht über einen Homecomputer verfügen.
Erfindungsgemäß bevorzugt umfasst ein derartiger Datenbankterminal 10 eine Leseeinheit 110, eine Eingabeeinheit 130 und eine Übertragungseinheit 120. Die Leseeinheit 110 und die Übertragungseinheit 120 funktionieren in der gleichen Weise, wie es im Zusammenhang mit den gleichlautenden Einheiten der einzelnen Standorte A, B beschrieben worden ist. Die Eingabeeinheit 130 wird erfin- dungsgemäß bevorzugt durch einen Touchscreen gebildet, über den der Endverbraucher die von ihm gewünschten Konten auswählen kann und Verarbei- tungsprogramme starten kann.
Erfindungsgemäß bevorzugt werden durch den Datenbankterminal 10 dem Endverbraucher Computeφrogramme bzw. Verarbeitungsprogramme zur Verfügung gestellt, die zum Verwalten und zum Verändern der erfindungsgemäß bevorzugten Verarbeitungsergebnisse gespeichert in den jeweiligen Unterkonten 72, 74 eingesetzt werden können. Derartige Nerarbeitungsprogramme können erfindungsgemäß bevorzugt erst durch den Endverbraucher gestartet werden, wenn er sich über seine Identifikationseinheit 10 bzw. seinen Transponder in Zusammenwirkung mit der Leseeinheit 110 identifiziert hat. Danach greift der Endverbraucher unbeschränkt auf die unter seiner Identifikation geführten Konten der zent- ralen Rechnereinheit 60 zu.
Bevorzugt stellt der Datenbankterminal 10 dem Endverbraucher ein Computerprogramm mit einem Zufallsgenerator oder andere Verarbeitungsprogramme zur Verfügung. Dieses Computeφrogramm verarbeitet die in dem jeweiligen Unter- konten 72, 74 gespeicherten Summen mit Unterstützung des Zufallgenerators. Der Endverbraucher startet erfindungsgemäß bevorzugt von dem Datenbankterminal
10 dieses Programm mit Zufallsgenerator oder er richtet dieses Programm mit Zufallsgenerator permanent in seinen Unterkonten 72, 74 ein, so dass es ausgeführt wird, sobald ein neuer Datensatz bzw. ein neues Verarbeitungsergebnis in dem jeweiligen Unterkonto 72, 74 eingeht. Mit Hilfe des Zufallgenerators wird die gespeicherte Summe konstant gehalten, reduziert, vervielfacht oder aufgehoben. In Abhängigkeit von der Wahrscheinlichkeit, mit der ein Aufheben der gespeicherten Summe erfolgt, wird auf diese Weise der Datenaufwand für das erfindungsgemäße Datenerfassungs- und Datenverarbeitungssystem verringert. Sofern keine Aufhebung der Summe erfolgt, entsteht durch das Ausführen dieses Co - puteφrogramms kein zusätzlicher Datenaufwand, der bei nachfolgenden Berechnungen zu berücksichtigen ist oder anderweitig Zeit- und Rechenkapazität in Ansprach nimmt.
Das oben genannte Computeφrogramm mit Zufallsgenerator wird erfindungsge- maß bevorzugt entweder innerhalb des Datenbankterminals 10 oder innerhalb der zentralen Rechnereinheit 60 durchgeführt. In Abhängigkeit davon, wo das Ergebnis der Anwendung des Computeφrogramms mit Zufallsgenerators ermittelt worden ist, erfolgt eine Übermittlung der Daten mit Hilfe der Übertragungseinheit 120 entweder an die zentrale Rechnereinheit 60 oder von der zentralen Rechner- einheit 60 an den Datenbankterminal 10 zur Ausgabe. Sofern vom Datenbankterminal 10 das genannte Computeφrogramm ausgeführt worden ist, erfolgt eine Ausgabe des Ergebnisses über die Eingabe- und Ausgabeeinheit 130 und gleichzeitig eine Übermittlung des Ergebnisses an die zentrale Rechnereinheit 60, um es dort in dem entsprechenden Unterkonto 72, 74 abzuspeichern.
Sobald erfindungsgemäß bevorzugt dieses Ergebnis, d.h. die durch den Zufallsgenerator veränderte Summe in dem entsprechenden Unterkonto 72, 74 abgespeichert worden ist, steht sie für den nachfolgenden Datenerfassungsprozess zur Verfügung. Werden nun erneut Daten von einer der Standorte A, B übermittelt, wird auf das Verarbeitungsergebnis dieser Daten die durch den Zufallsgenerator veränderte Summe angewandt, um ein neues Gesamtergebnis zu ermitteln. Diese Be-
rechnung erfolgt entweder durch die zentrale Rechnereinheit 60 oder durch die jeweilige Datenerfassungseinheit 40, 50, nachdem die durch den Zufallsgenerator veränderte Summe von der zentralen Rechnereinheit 60 über die Übertragungs- einheit 80, 90 an die entsprechende Datenerfassungs einheit 40, 50 übertragen worden ist.
Die vorliegende Erfindung betrifft auch ein computergesteuertes Datenbanksystem sowie ein Verfahren zur Datenverarbeitung, die grundlegend durch eine schematische Darstellung einer bevorzugten Ausführungsform in Figur 2 be- schrieben wird. Das Datenbanksystem 1 verarbeitet bzw. verwaltet Anfangsdaten 10 und Enddaten 40. Beschreibt man das vorliegende Datenbanksystem anhand der Verwaltung von Rechnungsdaten, werden die Anfangsdaten 10 durch die Rechnungsnummer gebildet und die Enddaten 40 werden beispielsweise durch verschiedene Rechnungspositionen mit Artikelnummer und Preis gebildet. Das Ziel des vorliegenden Datenbanksystems 1 besteht darin, ausgehend von den bekannten Anfangsdaten 10, die damit zusammenhängenden Enddaten 40 mit geringem rechnerischen und zeitlichen Aufwand basierend auf einer direkten Adressierung zu ermitteln.
Um die mit den Anfangsdaten 10 zusammenhängenden Enddaten 40 zu ermitteln, werden zunächst die Anfangsdaten 10 in eine Eingabe- Auslese-Einheit 20 eingegeben oder eingelesen. Die Eingabekomponente der Eingabe-Auslese-Ei heit 20 umfasst zum Eingeben bzw. Einlesen der Anfangsdaten 10 bekannte Elemente, wie beispielsweise eine Tastatur, einen Touchscreen, einen Strichcodescanner oder andere ähnliche Systeme.
Die Anfangsdaten 10 werden durch die Eingabe- Auslese-Einheit 20 an Bestimmungsmittel 30 innerhalb des computergesteuerten Datenbanksystems 1 weitergegeben. Diese Bestimmungsmittel 30 werden bevorzugt durch einen Computer gebildet, der Anfangsdaten 10 weiterverarbeiten kann. Diese Bestimmungsmittel 30 sind bevorzugt Arbeitsspeicher für Programme und Daten und damit zusam-
menwirkende Prozessoren, die auf der Basis eines Programmcodes des Datenbanksystems 1 die Anfangsdaten 10 zum Erhalt der Enddaten 40 verarbeiten.
Das Computeφrogramm innerhalb der Bestimmungsmittel 30 erkennt daher durch eine erste Programm-Rechenfolge, dass verarbeitungsfähige Anfangsdaten 10 übermittelt worden sind. Dieses Computeφrogramm leitet einen weiteren Schritt ein, der die Anfangsdaten 10 in die direkte Adressierung der Enddaten 40 umwandelt und die zur Inteφretation der Enddaten 40 notwendigen Programmco- des ausführt. Innerhalb der bevorzugten Bestimmungsmittel 30 werden aus die- sem Grund die empfangenen Anfangsdaten 10 in Verbindung mit dem das Datenbanksystem steuernden Computeφrogramm in ein Zeigerarray umgewandelt, dass direkt die Enddaten 40 im Speicher sowie die zur Inteφretation der Enddaten 40 im Arbeitsspeicher vorhandenen Computeφrogramme adressiert.
Die erforderlichen Enddaten 40 befinden sich bevorzugt während dieses Prozesses im Arbeitsspeicher für Daten oder im Massenspeicher für große Datenmengen. Es ist ebenfalls bevorzugt, dass die Enddaten 40 auf beide genannte Speicherbereiche verteilt sind. Die direkte Adressierung der auszuführenden Programmbestandteile und der Enddaten 40 gewährleistet einen schnellen Zugriff auf die jeweilige Komponente, die wenig Rechenkapazität und Rechnerzeit erforderlich macht. Dieser schnelle Zugriff wird dadurch bereitgestellt, dass die logische Adresse der Programmkomponenten und der Enddaten 40 mit der jeweiligen physikalischen Adresse übereinstimmt.
Nachdem die Adresse der Enddaten 40 und die der zur Inteφretation erforderlichen Programmkomponenten in den Speichermitteln 50 durch die Bestimmungsmittel 30 festgestellt worden ist, werden diese Adressen an die Eingabe- Auslese- Einheit 20 übermittelt. Diese Daten werden nachfolgend von der Eingabe- Auslese-Einheit 20 zum Auslesen der entsprechenden Daten aus den Speicher- mittein 50 verwendet. Der Begriff "Auslesen" bezeichnet in diesem Zusammenhang sowohl ein Abrufen der unver arbeiteten Enddaten 40 aus dem Arbeitsspei-
cher und dem Massenspeicher für Daten als auch ein Aufrufen und Ausführen der entsprechenden Progr.--u-nmkomponenten im Arbeitsspeicher für Programme zum Aufbereiten der unverarbeiteten Enddaten 40. Das oben genannte Zeigerarray, das aus den eingegebenen Anfangsdaten 10 ermittelt worden ist, zeigt bevorzugt durch seine direkte Adressierung auf einen oder mehrere Speicherbereiche 52, 54, 56, die, je nachdem in welchem Speicher sie sich befinden, Programmkomponenten oder Enddaten 40 enthalten.
Nachdem die Enddaten 40 mit Hilfe der auszuführenden Progr-immkomponenten an die Eingabe- Auslese-Einheit 20 übermittelt worden sind, werden sie an den Benutzer des vorliegenden computergesteuerten Datenbanksystems 1 ausgegeben. Diese Ausgabe erfolgte wiederum durch bekannte Elemente, wie beispielsweise einen Bildschirm, einen Drucker oder durch andere bekannte Elemente zum Darstellen oder Übermitteln von Daten.
Zum Verwalten von zusammenhängenden -Anfangs- 10 und Enddaten 40 innerhalb des computergesteuerten Datenbanksystems 1 erfolgt ebenfalls ein Speichern von eingegebenen Daten in den entsprechenden Speichermitteln 50. Im Rahmen dieses Vorgangs wird aus den Anfangsdaten 10 die direkte Adressierung des Speicherbereiches 52, 54, 56 ermittelt, in dem die Enddaten 40 abgespeichert werden und für eine spätere Nutzung zur Verfügung stehen.
Aus dem oben beschriebenen bevorzugten Datenbanksystem und dem in ihm verwendeten Verfahren zum Speichern, Verwalten und Verarbeiten von zusam- menhängenden Anfangs- 10 und Enddaten 40 geht hervor, dass die Enddaten 40 ohne eine rechenintensive und zeitintensive Indizierung, d. h. ohne das Durchlaufen von einer Vielzahl von Rechenschleifen, dafür aber mit einer direkten Adressierung der Enddaten 40 und der zu ihrer Verwaltung erforderlichen Programmkomponenten arbeitet. Die direkte Adressierung folgt aus den Anfangsdaten 10 durch Bildung eines entsprechenden Zeigerarrays auf die Enddaten 40, so dass ein
schnellerer Zugriff und ein schnelleres Auslesen der entsprechenden Enddaten 40 im Vergleich zu bekannten Systemen erfolgt.
Die oben genannte direkte Adressierung innerhalb des bevorzugten computerge- steuerten Datenbanksystems 1 bedeutet, dass die logische Adressierung ausgehend von den Anfangsdaten 10 zu den Enddaten 40/entsprechenden Programmkomponenten mit der entsprechenden physikalischen Adressierung übereinstimmt. Daraus folgt, dass das aus den Anfangsdaten 10 bestimmte Zeigerarray auf die zur weiteren Verarbeitung der Enddaten 40 erforderlichen Progr-----rnmkom- ponenten und auf die Enddaten 40 in den entsprechenden Speicherbereichen verweist. Auf dieser Grundlage werden Zugriffspakete gebildet, die schematisch in Figur 3 a dargestellt sind.
Diese Zugriffspakete bestehen bevorzugt aus den Programmkomponenten bzw. Programmfunktionen F0 - Fn, die den Programmbereich bilden. Des Weiteren umfassen sie einen Datenbereich, der durch Daten DO bis Dn gebildet wird. Auf diese Zugriffspakete wird sowohl durch lesende als auch durch schreibende Funktionen zugegriffen. Das bedeutet, dass bei Ausführung einer oder mehrerer der Programmkomponenten bzw. Programmfunktionen F0 - Fn eine oder mehrere der Daten DO - Dn nur ausgelesen und weitergegeben werden oder das aus diesen Daten DO - Dn neue Werte berechnet werden und den Positionen DO - Dn erneut zugewiesen werden. Somit umfasst die Verarbeitung von Daten bevorzugt das Lesen, Verknüpfen, Berechnen und Schreiben bzw. Neuzuweisen von Daten in den jeweiligen Datenbereichen DO - Dn.
Ein derartiger Vorgang des Verarbeitens von Daten ist beispielhaft in Figur 3b gezeigt. Durch das Ausfuhren des Programms 2 werden die Daten, die im Datenbereich DO [1] gespeichert sind, verarbeitet. Mit Abschluss der Verarbeitung dieser Daten erfolgt eine Neuzuweisung von Werten zu dem Datenbereich DO [1]. Dies ist durch die Veränderang der Zahlenwerte in dem Beispiel dargestellt in Figur 3b kenntlich gemacht.
Die direkte Adressierung, d.h. die Adresse, an der die Enddaten 40 bzw. die Pro- gra mkomponenten zu finden sind, wird innerhalb des aus den Anfangsdaten 10 ermittelten Zeigerarrays direkt angegeben. Diese Adressangabe kann eine Zahl oder ein Bezeichner sein, der an anderer Stelle im Computeφrogramm des Datenbanksystems 1 einer Adresse zugeordnet worden ist.
Um die großen Mengen an Enddaten 40 innerhalb des bevorzugten computergesteuerten Datenbanksystems 1 speichern zu können, werden innerhalb der Spei- chermittel 50 verschiedene, physikalisch voneinander getrennte Speicherbereiche 52, 54, 56 in Form einer Kaskade hintereinander geschaltet. Derartige Speicherbereiche 52, 54, 56 werden bevorzugt durch eigenständige Rechner bzw. Computer, die in Figur 4 als Rechner 1, Rechner 2 und Rechner x dargestellt sind, gebildet. Diese Rechner 1 - x werden ebenfalls als Clients bezeichnet, die Zugriff auf den in den Speicherbereichen 52, 54, 56 gespeicherten Datenbestand haben.
Um den Zugriff auf die Enddaten 40 zu erleichtem und zu beschleunigen, werden bevorzugt verschiedene Anordnungen der Datensätze der Datenarten DO - Dn innerhalb der Speicherbereiche 52, 54, 56 verwendet. Figur 4a zeigt eine erste bevorzugte Aus-führungsform der Anordnung der Datensätze in den physikalisch getrennten Speicherbereichen 52, 54, 56. Die Speicherbereiche 52, 54, 56 werden durch die Rechner 1, 2 und x bereitgestellt. Innerhalb der genannten physikalisch getrennten Speicherbereiche 52, 54, 56 wird die Anzahl n der Datensätze der Datenart DO und die Anzahl m der Datensätze der Datenart D2 gespeichert. Auf- gmnd des begrenzten Platzes im Speicherbereich 52 bzw. im Rechner 1 kann nur eine bestimmte Anzahl der Datensätze der Datenart DO und D2 in dem Speicherbereich 52 abgelegt werden. Die noch verbleibenden Datensätze der Datenart DO und D2 werden in den verbleibenden, physikalisch getrennten Speicherbereichen 54 und 56 der Rechner 2 bis x abgespeichert. Aus den Anfangsdaten 10 und dem daraus ermittelten Zeigerarray bzw. der direkten Adressierung ergibt sich die Information für die Eingabe-Auslese-Einheit 20, von welchem Speicherbereich 52,
54, 56 bzw. von welchem Rechner 1, 2, x die Enddaten 40, d.h. die Datensätze der Datenart DO, D2, auszulesen sind.
Gemäß einer weiteren bevorzugten Aus-führungsform des Speichems der Endda- ten 40, die in Figur 4b gezeigt ist, werden die Speicherbereich 52, 54, 56 aufeinanderfolgend durch die Datensätze der Datenart DO, durch die Datensätze der Datenart Dl und durch die Datensätze der Datenart D2 gefüllt, um nur einige bevorzugte Beispiele zu nennen. In Abhängigkeit von dem Umfang der Datensätze der Datenart DO wird daher der gesamte Speicherbereich 52 und ein Teil des Speicherbereiches 54 verwendet oder es werden nur Teile des Speicherbereiches 52 verwendet. Der verbleibende Speicheφlatz in dem Speicherbereich 54 wird durch die nächstfolgenden Datensätze der Datenart Dl gefüllt usw. Auch in diesem bevorzugten Fall der Datenspeicherung, ergibt sich aus der direkten Adressierung bzw. dem Zeigerarray, dass aus den Anfangsdaten 10 ermittelt wird, der je- weilige Speicherbereich 52, 54, 56, in dem die Enddaten 40 zu finden sind.
Die jeweilige Berechnung der Adresse der Enddaten 40 in Verbindung mit den kaskadierten Speicherbereichen 52, 54, 56 erfolgt derart, dass, wenn die Adress- rechnung einen nicht mehr physikalisch adressierbaren Bereich ergibt, auto a- tisch von einem Speicherbereich in den nächsten Speicherbereich gewechselt wird. Es ist ebenfalls bevorzugt, dass diesen Vorgang der Speicherbereichsbestimmung ein Datenpaket vorwegnimmt, das Bestandteil des das Datenbanksystem 1 steuernden Computeφrogramms ist. Auf diese Weise kann ein großes Datenvolumen immer gleichschnell verarbeitet werden, da die Rechenzeit für die Adressenbestimmung unabhängig vom Speicherbereich nahezu konstant ist. Eine derartige Kaskadierung der Speicherbereiche 52, 54, 56, die bevorzugt auch auf Client-Systeme ausgelagert wird, ist jedoch mit normalen Indextabellen nicht zu realisieren.
In dem vorliegenden Datenbanksystem werden Indextabellen bevorzugt nur dann eingesetzt, wenn es mehrere Datensätze von -Anfangsdaten 10 gibt, die mit nahezu
gleichen Daten gefüllt sind. In diesem Fall wird bevorzugt durch das Zeigerarray ein bestimmter begrenzter Speicherbereich 52, 54 oder 56 direkt adressiert, in dem jedoch mit Hilfe von Indextabellen der gewünschte Datensatz ausgewählt werden muss. Da sich die Indizierung nur noch auf einen sehr kleinen Speicherbe- reich bezieht, wird der Geschwindigkeitsvorteil des vorliegenden Datenbanksystems in Relation zu anderen Systemen davon nicht nachteilig beeinflusst.
Gemäß der ersten bevorzugten Aus-führungsform der Speicherung der Daten in verschiedenen Speicherbereichen 52, 54, 56 werden somit die Daten in gleichgro- ßen Paketen auf alle Rechner verteilt (vgl. Figur 4a). Gemäß der zweiten bevorzugten Ausführungsform, die in Figur 4b dargestellt ist, werden die Daten ohne Rücksicht auf die physikalischen Grenzen der Speicherbereiche 52, 54, 56 über die Rechner hinweg verteilt. Durch Auswahl der jeweiligen Art der Speicherung von Daten in den Speicherbereichen 52, 54, 56 wird die Rechenzeit für Zugriffe auf mehre physikalisch getrennte Speicherbereiche optimiert. In diesem Zusammenhang ist es bevorzugt, dass die verwendeten physikalisch getrennten Speicherbereiche 52, 54, 56 gleich groß sind, weil die Verwendung von Speicherbereichen unterschiedlicher Größe mehr Verwaltungsaufwand und daher Rechenzeit benötigt.
Figur 6 zeigt bevorzugte Ausführangsformen der Anordnung von Programmspeichern und Datenspeichern. Gemäß Figur 6a werden bevorzugt bei der Verwendung von umfangreichen Programmen physikalisch voneinander getrennte Programmspeicher 1, 2 bis n verwendet. In Abhängigkeit von der Strakturierang des Datenbanksystems 1 werden diese Programmspeicher 1, 2, n innerhalb eines Computersystems angeordnet oder auf verschiedene Client-Systeme verteilt. In Abhängigkeit von den für das Programm benötigten Daten, wird von dem jeweiligen Programmspeicher 1, 2, n auf den entsprechenden Datenspeicher 1, 2, m zugegriffen. Dieser Zugriff ist in Figur 6a bevorzugt durch die in beide Richtungen zeigenden Pfeile angedeutet.
Bei der Verwendung von Programmen geringeren Umfangs ist es weiterhin bevorzugt, alle Programme in einem gemeinsamen Programmspeicher eines Rechners, eines Computers bzw. allgemein gesprochen eines Geräts anzuordnen. Ein Teil der Daten oder alle benötigten Daten sind in dem gleichen Gerät angeordnet, so dass ein schnellerer Zugriff auf die Daten als in den oben beschriebenen Ausführungsform erfolgt. Bei umfangsreichen Daten ist es ebenfalls bevorzugt, diese auf physikalisch voneinander getrennte Speicherbereiche zu verteilen. Somit greift die Gesamtheit der in einem Gerät gespeicherten Programme oder ein einzelnes Programm auf die innerhalb dieses Gerätes gespeicherten Daten zu oder es greift auf die Daten innerhalb eines verbundenen Gerätes zu. Diese Verwendung von in physikalisch getrennten Speicherbereichen abgelegten Daten ist durch die in Figur 6b dargestellten Pfeile verdeutlicht.
Die in den Figuren dargestellten Verbindungen zwischen den einzelnen Komponenten müssen nicht physikalisch bestehen, sondern werden ebenfalls bevorzugt durch Verbindung via Link zwischen diesen Komponenten gebildet.
In Figur 5a und b sind bevorzugte Varianten des Zugriffs von Außen auf das computergesteuerte Datenbanksystem 1 dargestellt. Gemäß Figur 5a ist das Computeφrogramm des Datenbanksystems 1 innerhalb eines Servers bzw. Gateways abgelegt, das sämtliche Programme zur Verarbeitung der Daten in den Speichern 1, 2, m enthält. Mit diesem Server ist eine Mehrzahl von Client-Systemen, d.h. Client 1, Client 2 bis Client n, verbunden, die mit Hilfe einer Anforderungsspra- ehe die Programme in dem Server aufrafen und ausführen lassen. Der Server ist wiederum mit Hilfe seiner Speicher-Programm-Sprache in der Lage, diese Programme auszuführen und mit den Speichern 1, 2 bis m zu kommunizieren, um die relevanten Enddaten 40 zur weiteren Verarbeitung oder lediglich zur Ausgabe abzurufen. In diesem System erfolgt somit kein direkter Zugriff der Client- Systeme auf die Speicher 1 , 2 bis m mit den Enddaten 40.
Gemäß einer weiteren bevorzugten Ausführungsform des Datenbanksystems, die in Figur 5b gezeigt ist, greift eine Mehrzahl von Client-Systemen, d.h. Client 1, Client 2 bis Client n, auf die Speicher zu, d.h. Speicher 1, Speicher 2 bis Speicher m, die die zur Verarbeitung erforderlichen weiteren Enddaten 40 enthalten. Diese Anordnung der Client-Systeme und der Speichereinheiten ähnelt einer Multipro- zessoranit, wobei sie jedoch eine reduzierte Anzahl an Verbindungen zwischen den einzelnen Komponenten aufweist. Diese Verbindungen sind in Figur 5b durch die dargestellten Pfeile angegeben.
Gemäß einer weiteren bevorzugten Ausführungsform des Datenbanksystems enthalten die Rechner 1 bis x bezüglich des Prozessorkems, jedoch nicht notwendigerweise bezüglich der Taktrate, identische Prozessoren und die zugehörigen Speicher enthalten jeweils identische Daten. Um die Zuverlässigkeit der Datenabfragen zu erhöhen, wird bezüglich jedes der 1 bis x Speicher die gleiche Datenab- frage durchgeführt, wobei die Ergebnisse der 1 bis x Datenabfragen miteinander verglichen werden, um festzustellen, ob die 1 bis x Speicher bezüglich des abgefragten Datums einen konsistenten Datenbestand enthalten oder nicht. In einer bevorzugten Ausführungsform der vorliegenden Erfindung geschieht dies in der in Fig. 7 gezeigten Weise dadurch, dass die 1 bis x Rechner identische Datenab- fragen 1 bis x empfangen (Schritt 7.1). Vor der Abarbeitung der 1 bis x identischen Datenabfragen werden die 1 bis x Rechner jeweils in einen identischen Ausgangszustand versetzt (Schritt 7.2). Dieser Schritt beinhaltet insbesondere die Initialisierung bestimmter Prozessorregister mit jeweils für jeden der 1 bis x Rechner identischen Werten. Hierauf folgt die Abarbeitung der eigentlichen Da- tenabfrage durch jeden der 1 bis x Rechner (Schritt 7.3). Nach Beendigung der Datenabfrage werden die bestimmten, zuvor initialisierten Prozessorregister in jedem der 1 bis x Rechner ausgelesen (Schritt 7.4). Die ausgelesenen Registerdaten werden dann zusammen mit den Ergebnissen der Datenabfrage an den anfragenden Rechner zurückgegeben (Schritt 7.5).
Bei dem empfangenden Rechner müssen die unmittelbaren Ergebnisse der Datenabfragen nicht mehr direkt miteinander verglichen werden. Stattdessen kann indirekt auf das Vorliegen gleicher Abfrageergebnisse geschlossen werden, wenn ein Vergleich der zusammen mit den Abfrageergebnissen mitgeteilten Prozessorzu- stände der 1 bis x Rechner nach Ausfuhren der 1 bis x Datenabfragen ergibt, dass die Prozessorzustände vollkommen oder zumindest bezüglich bestimmter Speicherstellen bzw. Prozessorregister identisch sind.
In dem bevorzugten Ausführungsbeispiel der Erfindung sind die 1 bis x Rechner mit AMD Athlon Prozessoren ausgestattet. Es wird eine direkte Adressiemng benutzt, am besten im sogenannten ,flat model'. Das ausführende Programm und die damit verbunden Daten sind in dem bevorzugten Ausführungsbeispiel an feste Speicheφlätze gebunden. Das für den Vergleich der Rechnerzustände herangezogene Prozessorregister ist das Register mit dem Namen PervEvtSel MSR, doku- mentiert in der Publikation AMD Athlon Processor X86 Code Optimization Guide, Publication No.: 22007 Revision: K Date: February 2002 (insbesondere Appendix D) erhältlich bei der Firma AMD. Bei Programmstart wird der Cache in jedem der 1 bis x Rechner auf den gleichen Status gebracht (INND).
Der Ablauf des Verfahrens ist wie folgt:
Νr. Schritt
1 Start 2 Einlesen der Eingangsdaten bzw. Abfragedaten
3 Beginn Verarbeitung
4 Schalten auf Privileg Level 0 (Innerster Teil)
5 Einschalten Cache (mov CR0, eax)
6 Interrupts sperren (CLI) 7 PervEvtSel MSR auf: EvenfMask: C0 Unit Mask: hier unerheblich
USR: Nur auf l, 2, 3 OS: Keine 0 Restl. Flags: Kein Int, bei O- verflow ++ etc... EN:1 Counter Mask: 0
8 PerCtrMSR:0 (WRMSR mit ECX=EAX=EDX=0)
9 Schalten auf Privileg 1 (oder 2, 3)
10 Aufruf der eigentlichen Datenabfrage 1 Schalten auf Privileg 0 2 PervEvtSel MSR auf: EN=0 3 Interrupts ein (sti) 4 Laden des PerfCtr MSR (ECX=0) 15 Mov edi, offset Ergebnisdaten 6 Stosd 7 Mov eax, edx 8 Stosd 9 Ausschalten Cache (CR0) 20 Senden der Ergebnisdaten
21 Ende der Verarbeitung
Die empfangende Recheneinheit muß nur jeweils die ersten 64 Bit, welche den Inhalt des verwendeten Prozessorregisters enthalten, vergleichen, um die Konsis- tenz der gesamten Bearbeiteten Datenmenge zu erkennen. Die eigentliche Initialisierung des PervEvtSel Registers ist nur einmal erforderlich. Im laufenden Programm genügt auch das EN Bit. Bei Konsistenz der Daten auf den 1 bis x Rechnern werden bei den obigen Berechnungen gleiche Ergebnisse erhalten, weil das PervEvtSel Register nur bezüglich der Modi 1, 2 und 3 hochgezählt wird, also eventuelle Unterbrechungen oder Ausnahmen, die im umgebenden System, d.h. Ring 0, laufen, nicht mitgezählt werden. Es ist bevorzugt, dass das PervEvtSel
Register abhängig davon gesteuert wird, ob die eigentliche Datenabfrage code- oder datenintensiv ist, so dass z.B. anhand dessen entschieden wird, ob nur Ll Misses oder alle Cache-Zugriffe gezählt werden.
In einer weiteren bevorzugten Ausführungsform wird in jedem der 1 bis x Rechner die bei Ausführung der Datenabfrage verstrichene Zeit mit Hilfe des in jedem Rechner vorhandenen Timers extern gezählt. Die Differenz aus Eingangs- und Ausgangszeit (Zählerstand) umgerechnet von den externen Takten auf den Prozessortakt (z.B. im PC 4,77/4 für extern und 1000 für einen Pentium 4/1000) er- gibt eine 64-Bit-Zahl (32 Bit für das Ergebnis + 32 Bit für den Rest), welche die verbrauchte Zeit, taktunabhängig, wiedergeben. Wenn also auf zwei Rechnern der Code gleich durchlaufen wurde, d.h. die gleiche Datenmenge bearbeitet worden ist, muß die verbrauchte Taktzahl ähnlich sein.
Die in den Figuren beschriebenen bevorzugten Ausführungsformen der Datenanordnung, der Verbindung verschiedener Systemkomponenten sowie der Speichermodelle sind nicht als getrennt anzusehen. Daher sind ebenfalls die Kombinationen der verschiedenen Ausfuhrungsformen bevorzugt. Zudem werden alle dargestellten Modelle ausgehend von dem gleichen Sourcecode bzw. der gleichen Programmlogik erstellt und abgearbeitet. Der Rechenzeitbedarf ist daher bei jeder denkbaren Kombination der oben genannten Modelle gering, weil die grundsätzliche Aufteilung der logischen Zugriffe auf die physikalischen Bereiche durch eine Rechnung erfolgt. Da diese eine Rechnung im Wesentlichen immer gleich bleibt, ist einerseits die dafür benötigte Rechenzeit annähernd konstant und andererseits der Aufbau des Datenbanksystems 1 einfach.
Ein derart beschriebenes Datenbanksystem kann auch eingesetzt werden, um ein computergesteuertes Datenbanksystem mit mehreren Standorten zu realisieren, wobei die Identifikationsdaten redundant in verschiedenen Rechnern bzw. den zugeordneten Speichern erfasst sind.