DE10259206B4 - Verfahren zur Auswahl eines oder mehrerer Datensätze aus einer Datenbank - Google Patents

Verfahren zur Auswahl eines oder mehrerer Datensätze aus einer Datenbank Download PDF

Info

Publication number
DE10259206B4
DE10259206B4 DE10259206A DE10259206A DE10259206B4 DE 10259206 B4 DE10259206 B4 DE 10259206B4 DE 10259206 A DE10259206 A DE 10259206A DE 10259206 A DE10259206 A DE 10259206A DE 10259206 B4 DE10259206 B4 DE 10259206B4
Authority
DE
Germany
Prior art keywords
records
weighting
database
value
option
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE10259206A
Other languages
English (en)
Other versions
DE10259206A1 (de
Inventor
Ralf Usbeck
Markus Pfau
Lothar Schmitz
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Travel Tainment De GmbH
Original Assignee
TRAVELTAINMENT AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by TRAVELTAINMENT AG filed Critical TRAVELTAINMENT AG
Priority to DE10259206A priority Critical patent/DE10259206B4/de
Priority to ES03028956T priority patent/ES2377471T3/es
Priority to AT03028956T priority patent/ATE525701T1/de
Priority to EP03028956A priority patent/EP1431885B1/de
Publication of DE10259206A1 publication Critical patent/DE10259206A1/de
Application granted granted Critical
Publication of DE10259206B4 publication Critical patent/DE10259206B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

Verfahren zur Auswahl eines oder mehrerer Datensätze aus einer Datenbank mittels Eingabe eines oder mehrerer Auswahlkriterien, wobei die zur Verfügung stehenden Ausgangsdatensätze der Datenbank vor der Eingabe von Auswahlkriterien in komprimierter Form als gruppierte Datensätze im Arbeitsspeicher gespeichert werden, mit den Schritten:
(a) Erstellen von jeweils einer Liste für jeden der gespeicherten Parameter, die jeden vorkommenden Wert des in den Datensätzen auftretenden, zugehörigen Parameters nur einmal enthält,
(b) Gruppieren der Datensätze mit Hilfe der so erstellten Listen zu neuen Datensätzen und Speichern der neuen Datensätze im Arbeitsspeicher in Form von boolschen oder ganzzahligen Werten, welche angeben, an welcher Stelle der Dateninhalt in der zugehörigen Liste steht,
(c) Durchsuchen der neuen Datensätze im Arbeitsspeicher, und
(d) Ausgeben einer sortierten Ergebnisliste mit ausgewählten Datensätzen, wobei wenigstens ein Auswahlkriterium mit einer Unschärfe berücksichtigt wird.

Description

  • Technisches Gebiet
  • Verfahren zur Auswahl eines oder mehrerer Datensätze aus einer Datenbank mittels Eingabe eines oder mehrerer Auswahlkriterien.
  • Solche Datensätze können zum Beispiel Reisen sein. Jede Reise hat bestimmte Eigenschaften wie Anbieter, Abflughafen, Reisedatum, Zielort, Hotelname und Preis. Diese Eigenschaften werden dann als Datensatz in einer Datenbank abgelegt. Auf die Datenbank kann dann sequentiell zugegriffen werden, wenn eine Datenbankabfrage erfolgt. Dabei wird zunächst der Datensatz eingelesen. Dann wird der Datensatz mit vorgegebenen Auswahlkriterien verglichen und als Treffer gespeichert, wenn die Auswahlkriterien erfüllt sind. Eine solche Datenbank kann mehrere Millionen Datensätze enthalten. Entsprechend vergeht auch bei hohen Rechnerleistungen und kurzen Zugriffszeiten auf den Datenspeicher eine gewisse Zeitspanne, bis die Ergebnisse vorliegen und ausgegeben werden. Die Ausgabe erfolgt zum Beispiel auf einem Bildschirm, in einer Datei oder über einen Drucker.
  • Je nach Anzahl der Auswahlkriterien übersteigt die Anzahl der ausgewählten Datensätze ein gewünschtes Maß und muß durch Hinzufügung weiterer Auswahlkriterien weiter reduziert werden. Umgekehrt kann eine zu enge Auswahl auch dazu fuhren, daß keine Treffer erzeugt werden, obwohl Datensätze in der Datenbank vorliegen. In beiden Fällen sind weitere Eingaben zur Modifizierung der Anfrage erforderlich.
  • Auf der Internetseite "http://www.bucherreisen.de/" ist am 12. Dezember 2002 eine Suchmaschine für Ferienreisen offenbart. Die Suchmaschine ermöglicht die Auswahl einer Reise aus einer Datenbank mit über einer Million Reiseangeboten. Dabei können folgende Auswahlkriterien angegeben werden: "Flug und Hotel, bzw. Nur Flug", "Reiseziel", "Anzahl der mitreisenden Erwachsenen und Kinder", "Abflughafen", "Aufenthaltsdauer", "Preis", "Früheste Hinreise und späteste Rückreise", "Hotelkategorie" und "Verpflegung".
  • Die Auswahl der Option "Flug und Hotel" bzw. "Nur Flug" erfolgt durch Anklicken einer Tickbox. Dabei kann jeweils nur eine der beiden Boxen aktiviert werden. Ist die Option "Nur Flug" aktiviert, so steht eine Auswahl der Hotelkategorie und der Verpflegung nicht zur Verfügung. Das bedeutet, daß bei Auswahl der Optionen "Flug und Hotel, bzw. Nur Flug" die Auswahlmöglichkeiten einiger der übrigen Optionen angepasst werden.
  • Auch bei der Auswahl der Option "Reiseziel" werden die Auswahlmöglichkeiten der übrigen Optionen angepasst. Das Reiseziel kann mittels einer Drop-Down-Liste ausgewählt werden. Dabei werden alle angebotenen Reiseziele in der Liste aufgeführt und können dort für die Auswahl aktiviert werden. Wird das Reiseziel ausgewählt, so werden im Drop-Down-Liste "Abflughafen" nur noch diejenigen Flughäfen angezeigt, die das Reiseziel auch anfliegen. Dadurch wird von vorneherein vermieden, daß keine unmögliche Auswahl getroffen wird. Es ist auch möglich, Gruppen von Flughäfen auszuwählen. Dabei sind Flughäfen unter "Region Nord", "Region Süd" oder auch "alle Flughäfen" zusammengefasst und werden als ODER-Option aufgefasst.
  • Bei fehlerhaften Eingaben, etwa, wenn das Rückreisedatum vor dem Hinreisedatum liegt, wird eine Fehlermeldung generiert. Die Hotelkategorie wird als Bereich angegeben: alle Hotels sind "ab 3 Sterne", "ab 4 Sterne" etc. und der Preis ist als Maximalwert "bis 500 Euro", "bis 600 Euro" etc. auszuwählen.
  • Durch Aktivierung eines Feldes "Angebot finden" wird die Datenbankabfrage durchgeführt. Dabei kommt es vor, daß kein Ergebnis erzielt wird. Dies liegt daran, daß nur solche Datensätze ausgewählt werden, welche die Auswahlkriterien erfüllen. In einer Hilfefunktion wird darauf hingewiesen, daß Angaben in zu vielen Auswahlfeldern dazu führen kann, daß kein Ergebnis erzielt wird. In diesem Fall muß der Nutzer die Abfrage ändern und erneut durchführen. Dies ist besonders zeitaufwendig. Bei jeder Datenbankabfrage müssen alle Datensätze auf Übereinstimmungen überprüft werden.
  • Zur Erleichterung wird eine gesonderte Datenbankabfrage zu bestimmten Themen durchgeführt. So kann eine verkleinerte Liste etwa "Single-Reisen" aufgerufen werden, ohne die gesamte Datenbank abzufragen. Bei dieser Reduzierung der Datensätze stehen aber nicht alle angebotenen Reise zur Verfügung.
  • Die Suchergebnisse werden gewöhnlich nach dem Preis sortiert. Wird eine längere Zeitspanne als mögliche Reisezeit abgefragt, dann werden die Ergebnisse zuerst nach Datum und dann erst nach Preis sortiert. Das kann je nach Präferenz des Nutzers zu einer unbefriedigenden Sortierung führen. Um dem Problem gerecht zu werden, sind Sortier- und Filter-Boxen vorgesehen, über welche die Ergebnisliste gefiltert werden kann. Auch hier muß ein weiterer, zeitaufwendiger Rechenvorgang erfolgen. Eine Sortierung oder Filterung kann zum Beispiel nach dem Preis, dem Abflughafen oder der Dauer erfolgen. Dadurch wird aber nur die bestehende Ergebnisliste weiter reduziert.
  • Unabhängig von der Anfrage sind in jedem Fall Antwortzeiten im Sekunden-Bereich üblich, auch wenn kein Treffer erzielt wird. Wird kein Treffer erzielt, so muß die Anfrage wiederholt werden, was zu weiteren Wartezeiten führt. Dies kann zur Überlastung des Datenbankrechners und der Kommunikationswege führen. In jedem Fall aber muß ein erhöhter technischer Aufwand betrieben werden, um die hohe Anzahl der Anfragen zu bearbeiten.
  • Es ist weiterhin, z.B. aus der Internet-Seite "http://www.ltur.de" vom 12. Dezember 2002 bekannt, die Anfrage zu staffeln, wobei die Ergebnislisten bereits nach der ersten Auswahl angezeigt wird. Das bedeutet, daß durch die Abfrage eine Gruppierung der Datensätze durchgeführt wird. Es erfolgt eine frühe Reduzierung der Größe der Datenbank. Der Nutzer kann sehen, welche weitere Optionen bei den Auswahlkriterien zu einem Treffer führen und welche nicht. Dann ist aber eine mehrfache Abfrage der verbleibenden Daten erforderlich.
  • Aus der Internet-Seite "http://www.start.de/" ist es bekannt, einen Auswahlassistenten vorzusehen. Dabei erfolgt die Auswahl ebenfalls jeweils nacheinander. Entsprechend werden auch hier die Datensätze gruppiert. Es werden immer nur solche Elemente zur Verfügung gestellt, welche auch auswählbar sind. Dadurch wird zwar immer ein Treffer generiert, aber es ist eine Vielzahl von Abfragen und mehrfacher Bildaufbau erforderlich.
  • In der Suchmaschine "http://www.rex.de" werden die Auswahlergebnisse mit einer Prozentzahl versehen und nach "Relevanz" sortiert. Wie die Prozentzahl zustandekommt ist nicht offenbart.
  • Aus der Druckschrift CODD, E.F.: „A Relational Model of Data for Large Shared Data Banks" in Comm. of the ACM, Vol 13, Nr. 6, Juni 1970, S. 377–387 ist der Aufbau von relationalen Datenbanken bekannt. Bei solchen relationalen Datenbanken besteht die Möglichkeit, den Daten einen eindeutigen Schlüssel zuzuordnen (Primary key). Dieser Schlüssel dient zur Vermeidung von Redundanz. Der Schlüssel enthält jeden vorkommenden Wert eines in den Datensätzen auftretenden Parameters nur einmal, aber er kann nicht für alle Parameter definiert werden, sondern nur für solche Parameter, für welche jeder Wert definitionsgemäß nur einmal auftritt. Bezüglich des Schlüssels liegt keine Redundanz vor. Redundante Daten werden aus relationalen Datenbanken entfernt.
  • Aus der Veröffentlichung LINDECKER, Jürgen: „Datenbanken – Brücken über Raum und Zeit" in Technische Rundschau. ISSN 1023-0823. 1988, Heft 45/88, S.84–96 sind die Eigenschaften von Datenbanken bekannt. Dort ist das Eliminieren von Redundanz und die hohe Verfügbarkeit der Daten formuliert. Nach der Offenbarung der Druckschrift speichert das relationale Datenbankmodell die Daten und umfasst die Deskribierung beim Einlesen der abzuspeichernden Information und die Rückinterpretation bei der Systemabfrage. Dabei werden die Informationen strukturunabhängig gespeichert. Die Speicherung erfolgt in Tabellen, mit Attributen, Tupeln und Domänen. Es werden üblicher weise ein Attribut oder eine Attributfolge als Tupelidentifikator (Schlüssel) bezeichnet, womit bestimmte wiederkehrende Zugriffswege spezifiziert werden können, um das Tabellensuchen zu beschleunigen. Die Druckschrift beschreibt auch die Probleme bei dieser Art der Speicherung: die Suchfragen sind langsam. Das relationale Modell sei daher (bisher) für höhere Anforderungen bezüglich Komplexität und Antwortzeiten mit den heutigen Speichermedien weniger leistungsfähig.
  • Die Veröffentlichung von SRIVASTAVA, CHEN: „Warehouse Creation – A Potential Roadblock to Data Warehousing" in IEEE Trans. on Knowledge and Data Engineering. ISSN 1041-4347 1999, Vol 11 No.1, S. 118–126 beschäftigt sich mit der Schaffung von Warehouse-Datenbanken. Darin wird eine Datenbank-Konvertierung angesprochen. Die Konvertierung zu einem (integrierten) Zielsystem soll jedoch erfolgen, wenn 1) die Datenquelle geschlossen werden soll und die Daten lediglich in das Zielsystem überführt werden sollen oder 2) beide Datenbanken weiterbestehen, und die Quelle lediglich zum Erstellen eines Anfangsbestands dienen soll. Bei der beschriebenen Konvertierung soll auf ein neues Format umformatiert werden. Auch ein Update des Targetsystems mit Synchronisation ist offenbart, wobei ein geringeres Volumen vorliegen soll. Dies geht mit einem Informationsverlust einher, da nur die Daten integriert werden, die durch aufgrund einer Anfrage benötigt werden.
  • Offenbarung der Erfindung
  • Es ist Aufgabe der Erfindung, ein Verfahren zu schaffen, bei welchem die Wartezeiten für den Nutzer verkürzt werden und die Anzahl der Wartezeiten verringert werden. Es ist weiterhin Aufgabe der Erfindung, ein Verfahren zu schaffen, bei welchem eine erhöhte Anzahl von Anfragen durch einen Rechner bearbeitet werden kann. Erfindungsgemäß wird die Aufgabe bei einem Verfahren der eingangs genannten Art dadurch gelöst, daß die zur Verfügung stehenden Ausgangsdatensätze der Datenbank vor der Eingabe von Auswahlkriterien in komprimierter Form als gruppierte Datensätze im Arbeitsspeicher gespeichert werden, mit den Schritten:
    • (a) Erstellen von jeweils einer Liste für jeden der gespeicherten Parameter, die jeden vorkommenden Wert des in den Datensätzen auftretenden, zugehörigen Parameters nur einmal enthält,
    • (b) Gruppieren der Datensätze mit Hilfe der so erstellten Listen zu neuen Datensätzen und Speichern der neuen Datensätze im Arbeitsspeicher in Form von boolschen oder ganzzahligen Werten, welche angeben, an welcher Stelle der Dateninhalt in der zugehörigen Liste steht,
    • (c) Durchsuchen der neuen Datensätze im Arbeitsspeicher, und
    • (d) Ausgeben einer sortierten Ergebnisliste mit ausgewählten Datensätzen, wobei wenigstens ein Auswahlkriterium mit einer Unschärfe berücksichtigt wird.
  • Bei der Gruppierung und Speicherung in einer neuen Datei kann auf redundante Datensätze verzichtet werden. Außerdem erlaubt die Gruppierung die Zuordnung von Daten in Formaten, die leichter lesbar sind. Das Einlesen eines Textformats dauert zum Beispiel länger, als das Einlesen eines Boolschen Wertes, da die damit verbundene Datenmenge kleiner ist. Auf diese Weise kann der Zugriff auf die gruppierten Daten in der neuen Datenbank wesentlich schneller erfolgen. Weiterhin sind durch die Gruppierung weniger Zugriffe auf den Datenspeicher erforderlich, bis die ausgewählten Datensätze gefunden werden.
  • Durch die Verringerung der Anzahl der Datenbankabfragen wird der Datenbankrechner und die angeschlossenen Kommunikationswege weniger belastet. Dies führt zusätzlich zu einer schnelleren Bearbeitung jeder einzelnen Abfrage.
  • In einer Ausgestaltung der Erfindung wird wenigstens ein Auswahlkriterium mit einer Unschärfe berücksichtigt. Eine Unschärfe bei einem Auswahlkriterium bedeutet, daß ein Treffer auch dann erzielt wird, wenn das Auswahlkriterium nicht vollständig, sondern nur teilweise erfüllt ist. Wenn die Sportart zum Beispiel Tennis ausgewählt wird, die gewünschte Reise aber prinzipiell nur mit Squash angeboten wird oder ein allgemeines großes Sportangebot hat, dann wird ohne Unschärfe nie ein Treffer erzielt, mit Unschärfe wird jedoch ein Treffer erzielt. Durch die Berücksichtigung des Auswahlkriteriums mit einer Unschärfe wird entsprechend immer ein Treffer erzielt, egal wieviele Auswahlkriterien eingegeben werden. Dadurch wird die Mehrfachabfrage der Datenbank vermieden. Zusätzliche Belastungen des Datenbankrechners und der Kommunikationswege entfallen.
  • Die Ergebnisse können nach der Qualität der Treffer, die zum Beispiel als Prozentwert angegeben werden kann, sortiert werden. Das beste Ergebnis wird dann zuerst angezeigt. Eine weitere Anfrage mit modifizierten Auswahlkriterien erübrigt sich, da die Modifizierung quasi selbstständig vorgenommen wird. In einer weiteren Ausgestaltung der Erfindung ist der Grad der Unschärfe vom Nutzer auswählbar. Dann kann der Nutzer selber auswählen, wie wichtig ihm ein Auswahlkriterium ist. Ist ein Abflugdatum zum Beispiel sehr wichtig und der Nutzer will nicht davon abweichen, dann interessieren ihn die Ergebnisse mit einem anderen Abflugdatum nicht. Demgegenüber ist der Nutzer bei der Angabe des Zielortes möglicherweise eher flexibel, solange nur das Abflugdatum stimmt. Dann kann er hier eine größere Unschärfe auswählen, so daß auch andere Zielorte berücksichtigt werden. Die Ergebnisse können in der Reihenfolge ihres Abstands vom gewünschten Ergebnis dargestellt werden. So können etwa die Zielorte nach ihrer Nähe zum gewünschten Zielort sortiert werden. Bei der Verwendung von Unschärfen bei der Auswertung der Datenbank finden die Algorithmen und Gesetzmäßigkeiten der Fuzzy Logic Anwendung.
  • Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche. Ein Ausführungsbeispiel ist nachstehend unter Bezugnahme auf die beigefügten Zeichnungen näher erläutert.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Beispiel für eine Datenbank, wie sie ursprünglich vorliegt.
  • 2a zeigt Listen zur Gruppierung von Daten
  • 2b zeigt Daten, welche mit Hilfe der Listen aus 2a gruppiert wurden
  • 3 ist ein Ablaufdiagramm für ein Auswahlverfahren
  • 4 zeigt eine Eingabemaske für Auswahlkriterien und Optionsgewichtungen mit Startwerten
  • 5 zeigt die Eingabemaske aus 4, bei welcher Optionen und Gewichtungen für die Auswahlkriterien eingegeben wurden
  • 6 zeigt Zwischenergebnisse des Auswahlverfahrens nach 3, welche in Form von Zielorten angegeben sind
  • 7 zeigt Zwischenergebnisse des Auswahlverfahrens nach 3 für einen Zielort
  • 8 zeigt die Endergebnisse des Auswahlverfahrens nach 4, bei dem auch alternative Reisen für ein identisches Hotel aufgelistet werden
  • 9 zeigt eine Buchungsmaske für eine ausgewählte Reise
  • Beschreibung des Ausführungsbeispiels
  • Als Ausführungsbeispiel wird im folgenden eine Datenbank beschrieben, in welcher Urlaubsreisen gespeichert sind. Die Urlaubsreisen sollen für einen Nutzer online im Internet buchbar sein. Entsprechend ist es das Ziel, dem Nutzer möglichst nur solche Reisen aus der Datenbank anzubieten, die seinen Wünschen sehr nahe kommen. Je besser die Übereinstimmung der Reise mit den Wünschen des Nutzers, um so höher wird die Wahrscheinlichkeit, daß der Nutzer eine Reise buchen wird. Bei hoher Buchungszahl steigt auch die Wirtschaftlichkeit der Datenbank.
  • Die Datenbank setzt sich aus mehreren Millionen Einträgen zusammen. Jeder Eintrag entspricht einer buchbaren Reise mit bestimmten Eigenschaften. Solche Eigenschaften sind der Reiseveranstalter, Abflughafen, Abflugdatum, Reisedauer, Zielort, Hotelkategorie, Hotelname, Art der Unterkunft, Verpflegung, Ausstattung des Hotels, Entfernung zum Strand, Sportangebot, Kinderfreundlichkeit (z.B. Kinderbetreuungsmöglichkeiten), Preis und Anzahl der Mitreisenden. Die Daten werden täglich aktualisiert, da Reisen ausgebucht sein können, aus anderen Gründen nicht mehr zur Verfügung stehen oder neue Reisen hinzukommen. Entsprechend ändert sich die Anzahl der Reisen und damit die Anzahl der Datensätze. Die Anzahl der Eigenschaften jeder Reise bleibt im allgemeinen konstant, solange nicht neue Eigenschaften (z.B. Tageshöchsttemperatur am Zielort) erfasst werden. Die Inhalte der Datensätze (Werte), zum Beispiel das Abflugdatum, ändern sich aber zumindest teilweise ebenso wie deren Anzahl. Umgekehrt bleiben einige Werte in den jeweiligen Datensätzen dauerhaft gleich. Der Reiseveranstalter oder der Abflughafen stellt eine dauerhafte Eigenschaft dar.
  • Ein Beispiel für einen Ausschnitt aus einer solchen Datenbank ist in 1 gezeigt. Die Datenbank weist 10 unterschiedliche Datensätze auf. Jeder Datensatz ist in einer Zeile gespeichert und mit einem Datensatzindex versehen. Der Index ist in der ersten Spalte vorgesehen und ist im vorliegenden Fall eine laufende Nummerierung. Der Index ist entsprechend ein Integer mit einem Wert zwischen 1 und 10.
  • In der zweiten Spalte ist der Veranstalter der jeweiligen in einem Datensatz repräsentierten Reise dargestellt. Jeder Veranstalter wird mit bis zu drei Buchstaben gekennzeichnet. Im vorliegenden Fall ist ein erster Veranstalter "NEC" und ein zweiter Veranstalter "BU" vorgesehen. Die Veranstalterdaten werden also als String mit 3 Buchstaben gespeichert.
  • In der dritten Spalte jedes Datensatzes ist die Anzahl der mitreisenden Personen gespeichert. Diese Angabe liegt als Integer vor. Im vorliegenden Beispiel gibt es Reisen für 1, 2 und 3 Personen.
  • In der vierten Spalte ist das Abflugdatum als Datum gespeichert. Im vorliegenden Fall ist immer das gleiche Datum gewählt, nämlich der 22.12.
  • In der fünften Spalte ist die Art der Verpflegung angegeben. Hierfür wird ein String mit zwei Buchstaben verwendet. Die Buchstaben sind kodiert. So bezeichnet "HP" Halbpension und "VP" Vollpension.
  • In der sechsten Spalte ist die Reisedauer der angebotenen Reise angegeben. Die Reisedauer wird in Tagen angegeben. Im vorliegenden Fall gibt es Reisen mit einer Dauer von 7 oder 14 Tagen.
  • In den Spalten 7 bis 10 werden der Abflughafen, der Zielflughafen, der Hotelname und die Kategorie in Sternen angegeben. Für die Bezeichnung der Flughäfen wird jeweils ein String mit drei Buchstaben verwendet, welcher der internationalen Kurzbezeichnung entspricht. "TXL" im vorliegenden Beispiel ist der String für den Abflughafen "Berlin-Tegel" und "CFU" analog der Zielflughafen "Kerkyra". Die Kategorie in Hotelsternen und der Hotelname werden ausgeschrieben als String eingegeben. Im vorliegenden Beispiel handelt es sich bei jeder Reise um das Hotel mit dem Namen "Paralia Orea", welches drei Hotelsterne aufweist. Die letzte Spalte beinhaltet den Preis in Euro und ist ebenfalls als Integer gespeichert.
  • Aus dieser Datenbank soll nun ein Nutzer die Reise auswählen, die seinen Vorstellungen am ehesten entspricht. Hierfür kann er Auswahlkriterien mittels einer Abfrageoberfläche über das.Internet eingeben und die Datenbank durchsuchen. Die Reisen, die den Vorstellungen des Nutzers am besten entsprechen sollen im Ergebnis als erstes angezeigt werden. Ungeeignete Reisen sollen nicht gezeigt werden, solange geeignetere Reisen gefunden werden.
  • Da die Datenbank sehr viele Datensätze enthält, würde ein direkter Zugriff durch den Nutzer sehr lange Zeit in Anspruch nehmen. Die Datenbank wird daher zunächst für die Nutzung vorbereitet und in vorbereiteter Form abgespeichert. Hierfür werden Listen erstellt. In jeder Liste befinden sich die Daten, die in den verschiedenen Spalten der Datenbank auftreten. So werden für den vorliegenden Fall 10 Listen entsprechend den 10 Parametern (Spalten) ohne die Indexspalte erstellt.
  • Die erste Liste ist die Anbieterliste. In dieser Liste sind alle vorkommenden Anbieter aufgezählt. Im vorliegenden Fall lautet die Liste: {NEC; BU}. An erster Stelle der Anbieterliste ist der Anbieter mit der Kurzbezeichnung "NEC" und an zweiter Stelle ist der Anbieter mit der Kurzbezeichnung "BU" angegeben. Statt NEC kann also auch in der neuen, vorbereiteten Datenbank "0" stehen, entsprechend dem ersten Wert der Anbieterliste und statt "BU" kann "1" stehen. Diese Werte sind Boolsche Werte oder Integer und sind im binomischen Zahlensystem mit wesentlich weniger Stellen darstellbar als Strings. Entsprechend verringert sich an dieser Stelle nicht nur der benötigte Speicherplatz, sondern auch die Auslesezeit. Anders ausgedrückt: "1" lässt sich im Computer wesentlich schneller lesen als "BU" und nimmt weniger Speicherplatz ein. Wenn nur zwei Werte vorliegen, reicht ein Feld mit einem Boolscher Wert 0 oder 1 aus, um eine hinreichende Charakterisierung einer Eigenschaft in Verbindung mit der zugehörigen Liste zu erreichen.
  • Das gleicher Verfahren wird auf die übrigen Dateninhalte angewendet. Die Personenliste entsprechend Spalte 3 lautet im vorliegenden Fall: { 1; 2; 3 }. Die Datumsliste weist nur einen Wert auf {22.12}. Wenn, wie hier, nur ein Wert vorliegt, braucht dieser Wert nicht mehr in der der neuen Datenbank entsprechenden Matrix gespeichert werden. Es reicht aus, wenn die Liste mit dem Wert gespeichert ist. Die Verpflegungsliste lautet {VP; HP}. Wird in der neuen Datenbank entsprechend eine Verpflegung "0" angegeben, so bedeutet dies, daß Vollpension angeboten wird. Bei "1" bedeutet dies hingegen, daß Halbpension (HP) angeboten wird. Auch dieser Wert kann statt als String in Form eines Integers oder gar als Boolscher Wert in die Matrix eingetragen werden.
  • Auch bei der Dauer der Reise existieren in dem Ausschnitt nur zwei verschiedene Werte. Die zugehörige Liste lautet {7: 14}. Ein Wert "0" in der Matrix bedeutet dann eine Reisedauer von 7 Tagen. Ein Wert "1" bedeutet dann eine Dauer von 14 Tagen. Im vorliegenden Beispiel sind Abflughafen, Zielflughafen, Kategorie und Hotelname für jede Reise identisch. In der Liste taucht dann jeweils der zugehörige Wert auf. Da die Liste nur diesen Wert enthält, braucht in der Matrix überhaupt kein Feld vorgesehen werden.
  • In der letzten Spalte sind verschiedene Reisepreise angegeben. Die zugehörige Liste lautet: { 199; 259; 299; 359; 399; 499}. Wie bereits oben erwähnt, tauchen die Werte 199 und 299 zwar zweimal auf, sie werden jedoch nur einmal in der Preisliste aufgeführt. Jedesmal, wenn eine Reise mit einem Preis von 199 Euro angeboten wird, wird der Wert in dem zugehörigen Matrixfeld auf "0" gesetzt. Die 0 ergibt sich daraus, daß der Preis 199 Euro an 0. Stelle in der Liste aufgeführt ist. Bei einem Reisepreis von 299 Euro würde der Wert auf "2" gesetzt.
  • Zusammen mit diesen Listen lässt sich die in 1 dargestellte Datenbank zusammenfassen und erhält dann die Form einer Matrix, wie sie in 2 dargestellt ist. Die Matrix enthält 10 Zeilen und nur 5 Spalten und besteht ausschließlich aus kleinen Zahlen. Sie ist auch im Praxisfall bei großen Datenmengen klein genug, um vollständig in den Arbeitsspeicher einlesbar zu sein. Es ist leicht einzusehen, daß eine solche Matrix wesentlich schneller auszulesen ist, als eine Datenbank auf einer Festplatte, wie sie in 1 dargestellt ist. Die Zugriffszeiten werden daher wesentlich reduziert, ohne den Informationsgehalt der Datenbank zu beschränken. Dabei gehören zu der Datenbank selbstverständlich immer die Indexlisten, welche in 2a nochmals gesondert dargestellt sind.
  • Die Vorbereitung einer solchen Matrix erfolgt bereits vor der Abfrage durch einen Nutzer. Sie kann zum Beispiel bei Reisedatenbanken nach dem täglichen Einlesen der aktuellen Daten erfolgen. Das bedeutet, daß der Nutzer in jedem Fall, auch bereits bei der ersten Abfrage von einer verkürzten Abfragedauer profitiert.
  • Das Auswahlverfahren ist im Ablaufdiagramm in 3 dargestellt. Zunächst erfolgt eine Eingabe der Auswahlkriterien. Hierfür wird eine Eingabemaske verwendet, die in 4 dargestellt ist. In der Maske werden Auswahlkriterien, wie verschiedene Anreiseoptionen, Hoteloptionen, Sportoptionen etc. zur Verfügung gestellt. Dabei werden Drop-Down-Menüs verwendet, in welchen zulässige Optionen angeboten werden. In 4 ist die Anfangseinstellung dargestellt. Darin wird ein typisches Reiseprofil angezeigt. In 5 ist eine Einstellung gezeigt, bei welcher ein Nutzer Eingaben gemacht hat. So wurde zum Beispiel statt der Voreinstellung "Nah-Strecke (ca 2,5h Flug)" als Reiseziel, die Option "Fern-Strecke (> 6h Flug)" ausgewählt.
  • Neben jeder Option (bis auf die Personenzahl) ist eine Gewichtung angegeben. Dabei kann der Nutzer in drei Stufen angeben, wie wichtig die Option für ihn ist. Wenn eine Option zwar ausgeübt wird, diese aber nicht unbedingt notwendig ist, so kann der Nutzer die Tickbox "unwichtig" aktivieren. Legt der Nutzer hingegen großen Wert auf die Verwirklichung einer Option, so wird er die Tickbox "sehr wichtig" aktivieren. Auch eine mittlere Wichtigkeit ist vorgesehen. Die Wichtigkeit, die der Nutzer einer Option einräumt, wird in Form des Unschärfegrads bei der Auswertung berücksichtigt. "sehr wichtig" bedeutet, daß die Option mit geringer Unschärfe berücksichtigt werden soll. "Unwichtig" bedeutet, daß die Option mit großer Unschärfe berücksichtigt werden darf.
  • In der Eingabemaske wurden alle Wichtigkeiten auf "unwichtig" als Startwert gesetzt. Verändert ein Nutzer einen Startwert, so wird die Wichtigkeit auf "mittlere Wichtigkeit" gesetzt. Der Nutzer kann den Wert dann von Hand auf den gewünschten Wert setzen. Da überhaupt eine Eingabe stattgefunden hat, ist davon auszugehen, daß die. angewählte Option mit höherer Wahrscheinlichkeit zumindest eine mittlere Wichtigkeit aufweist, als daß sie völlig unwichtig ist. Die Auswahl soll möglichst schnell und mit möglichst wenig Eingaben erfolgen. Wenn der Wert für die Wichtigkeit so gesetzt wird, daß er die höchste Wahrscheinlichkeit aufweist, dann werden weniger Eingaben bei gleicher Ergebnisqualität benötigt.
  • Der eingegebene Wert stellt bei der Auswahl einen Sollwert dar. Im vorliegenden Beispiel wurde etwa der Startwert für die Dauer von 7 Tagen auf den Sollwert "14 Tage" geändert. Dabei wird die Wichtigkeit programmseitig auf mittlere Wichtigkeit gesetzt. Die Wichtigkeit wurde dann vom Nutzer noch höher eingestuft und wird mit "sehr wichtig" angegeben. Es ist dem Nutzer also sehr wichtig, für 14 Tage zu verreisen.
  • Für die Reisedauer-Liste (s. 2a) mit den Werten 7 und 14 werden nun Abstände zum Sollwert berechnet. Hierzu werden die Gesetzmäßigkeiten der Vektor- und Matrizenrechnung hinzugezogen. Im vorliegenden Fall ist der Abstand des ersten. Listenelements "-7" und der Abstand des zweiten Listenelements "0". Wenn weitere Elemente vorliegen, wird der Abstand als Differenz zwischen Sollwert und Istwert angegeben. Jedem Abstand ist ein Gewicht entsprechend einer Zuordnung zugeordnet. Die Zuordnungsvorschrift kann als numerische Tabelle, als Kennfeldlinie oder als funktioneller Zusammenhang vorliegen. Ein Beispiel für eine solche Zuordnungstabelle kann folgendermaßen aussehen:
    Abstand [Tagen] Gewicht [%]
    –14 0
    –7 20
    –5 30
    –4 50
    –3 70
    –2 80
    –1 95
    0 100
    +1 95
    +2 80
    +3 70
    +4 55
    +5 35
    +7 25
    +14 5
  • Selbstverständlich brauchen nur solche Werte in der Tabelle aufgeführt werden, für die prinzipiell Werte vorkommen können. Wenn von keinem Veranstalter zu keinem Zeitpunkt Reisen angeboten werden die einen Abstand von allen anderen Reisen von 6 Tagen haben, ist eine Zuordnung des Wertes nicht erforderlich.
  • Im Beispiel von 5 wurde eine Reisedauer von 14 Tagen ausgewählt. Die Reisen Nr. 7 und 8 haben eine Reisedauer von 7 Tagen. Der Abstand der Werte ist -7. Aus der Zuordnungstabelle ergibt sich, daß Datensätze, die diesen Abstand aufweisen, mit einem Gewicht von 20 % berücksichtigt werden können (Kombinationsgewichtung). Wie sich aus der Tabelle ergibt, spielt es ebenfalls eine Rolle, ob die Reise kürzer oder länger ist, als der Sollwert. Eine um die gleiche Zeitspanne längere Reise erhält ein höheres Gewicht, als die entsprechend kürzere Reise. Die Berechnung der Kombinationsgewichte braucht nur für die Werte der Listen (2a) durchgeführt werden und nicht für die Datensätze der Datenbank. Entsprechend umfasst die Berechnung weniger Rechenschritte und ist erheblich weniger zeitaufwendig.
  • Es wird nun jedes Feld der einzelnen Listen in 2a nicht mehr nur mit einem Wert, sondern einem Wertepaar belegt. Das Wertepaar umfasst zum einen den Wert selbst in Form des Sollwertertes. Zum anderen umfasst das Wertepaar das Gewicht des Wertes (Kombinationsgewicht). Die Dauer von 7 Tagen einer Reise ist in 2a an Position 0 dargestellt. Dieser Wert hat ein Gewicht von 20% (s.oben). Entsprechend lautet dieses Wertepaar mit dem Index 0 in der Liste: [7;20%].
  • Im Anschluß and die Gewichtung der Abstandswerte, wird die Gewichtung durch den Nutzer berücksichtigt (Optionsgewichte). Gibt ein Nutzer den Wert "sehr wichtig" ein, so wird die Eingabe zu 100% gewichtet. Gibt ein Nutzer den Wert "unwichtig" ein, so wird die Eingabe zum Beispiel nur mit 10 % berücksichtigt. Mit dieser Eingabe wird angegeben, wie wichtig es für den Nutzer ist, hier einen guten Treffer zu landen.
  • Jede Gruppe hat weiterhin eine ihr eigene, vorgegebene Gewichtung (Gruppengewichtung). So ist das Kriterium "Hotel-Ausstattung" mit einem geringeren Gewicht versehen, als das Reisedatum oder das Reiseziel. Wird dann der Ausstattung und dem Reiseziel vom Nutzer die gleiche Wichtigkeit zugemessen, so werden kleine Abstände des Reiseziels von Sollwert höher bewertet. Das heißt, hier wird eine höhere Gruppengewichtung angenommen, als bei den Werten der Ausstattung. Die Gruppengewiclttung kann vom Nutzer umgangen werden, wenn er eine anderslautende Optionsgewichtung durch Eingabe der entsprechenden Wichtigkeit vornimmt. Die Priorisierung der Gruppen, d.h. der Auswahlkriterien entspricht den praktischen Erfahrungen. Aus den Kombinationsgewichten, die sich aus den Abständen vom Sollwert ergeben, der Gruppengewichtung für die Auswahlkriterien, und der vom Nutzer eingegebenen Optionsgewichtung wird eine Gesamtgewichtung für jeden Datensatz berechnet.
  • Die Gesamtgewichtung wird nach folgendem Verfahren berechnet: zunächst werden die Kombinationsgewichtungen für jede Option einzeln mit den Optionsgewichtungen multipliziert. Alle Kombinationsgewichtungen für die Personenzahl in Prozent werden also mit der Optionsgewichtung für Personenzahlen in Prozent multipliziert. Dann werden alle Kombinationsgewichtungen für das Datum mit der Optionsgewichtung für das Datum multipliziert. Dies wird für alle in der Matrix enthaltenen Elemente eines Datensatzes (die in einer Reihe in der Matrix stehen) durchgefülirt. Im nächsten Berechnungsschritt werden diese Produkte über eine ganze Zeile der Matrix summiert, indem über den jeweiligen Index in der Matrix der Gewichtungswert aus der entsprechenden Liste ausgelesen werden. Die Summe wird durch die Stimme der Optionsgewichtungen dividiert. Als Ergebnis erhält man einen ersten Gewichtungswert, der auf den Nutzerwünschen und den angebotenen Reisen basiert. Jeder Datensatz wird nach diesem Prinzip abgearbeitet. Ein zweiter Gewichtungswert basiert auf der Gruppengewichtung der angebotenen Reisen. Dieser wird nach dem selben Prinzip wie der erste Gewichtungswert berechnet. Es werden jedoch zusätzlich zu den Optionsgewichtungen die Gruppengewichtungen eingesetzt. Dazu werden die Gruppengewichtungen und Optionsgewichtungen einer Gruppe miteinander zu einem Produkt multipliziert, mit dem dann die oben beschriebene Kombinationsgewichtung durchgeführt wird. Wird diese Berechnung für jeden Datensatz durchgeführt, so erhält man am Ende eine Vielzahl von Gesamtgewichten, die für die Reise charakteristisch sind und die Nutzerwünsche berücksichtigen.
  • Man erhält eine Zahl in %, die die Qualität des Treffers angibt. Die Prozentzahl gibt an, wie gut die jeweilige Reise die Wünsche des Nutzers erfüllt. Das Gesamtgewicht kann für alle Datensätze in vergleichsweise kurzer Zeit ermittelt werden. In jedem Fall wird auf diese Weise eine Trefferliste generiert. Diese Trefferliste wird nach dem Gesamtgewicht sortiert. Die Datensätze mit dem höchsten Gesamtgewicht sollen angezeigt werden. Zu diesem Zweck wird die ursprüngliche Position anhand der Nummerierung ermittelt. Danach werden die Originaldaten aus der ursprünglichen Datenbank eingelesen und zur Ausgabe vorbereitet. Da aber nur die interessantesten Daten mit hohen Gesamtgewichten eingelesen werden müssen, braucht die Datenbank nicht vollständig durchsucht werden.
  • Vor der Ausgabe werden die Gesamtgewichte oder die Einzelwerte normiert. So wird der Treffer mit dem höchsten Gesamtgewicht auf 100% gesetzt und die darunterliegenden Treffer entsprechend angepasst.
  • Die Ausgabe dieser Trefferliste erfolgt zunächst nach Zielgebieten, in welchen die besten Treffer liegen. Dies ist in 6 für eine reale Datenbank dargestellt. Dabei werden die Ergebnisse mit dem Satz versehen: "1 Angebot entspricht zu 78% Ihren Wünschen". Die Angabe 78% entspricht dem Gesamtgewicht. Dann kann der Nutzer dasjenige Zielgebiet aussuchen, welches ihm am meisten gefällt. Bei Eingabe eines Zielgebiets wird dann das jeweilige Angebot im Detail angezeigt und es erfolgt eine Angabe, wie sich die Wunscherfüllung zusammensetzt. Dies ist in 7 dargestellt. Im vorliegenden Fall setzt sich die Zahl 78 % zusammen aus Anreise/Reiseziel 100%, Hotel/LJnterkunft 71%, Sport/Wellness 100%, Familie/Kinder 100% und Preis/Termin 66%. Zusätzlich werden die ursprünglich gemachten Eingaben angezeigt, damit der Nutzer sich noch erinnert und eine weitere Eingabe im gleichen Sinne verhindert. In einer weiteren Anzeige, die in 8 dargestellt ist, werden nun alle Angebote für dieses Hotel aufgelistet, damit Angebote verschiedener Anbieter, Abflughäfen und dergleichen noch berücksichtigt werden können. Dort werden neben den Reisedaten wie Anreisedatum, Reisedauer und Abflughafen die Treffergualität (Kombinationsgewichtung) angegeben. Es ist also angegeben, welche Reisen es noch gibt.
  • Wird hier eine Reise ausgewählt, so kann der eigentliche Buchungsvorgang beginnen, bei dem persönliche Daten übermittelt werden. Die Reiseauswahl ist an dieser Stelle abgeschlossen. Der Buchungsvorgang erfolgt mittels einer üblichen Maske, wie sie in 9 dargestellt ist. Dort werden persönliche Daten etc eingegeben. Solche Masken sind bekannt und brauchen hier nicht weiter erläutert werden.
  • Das beschriebene Verfahren basiert auf Fuzzy Logic, wodurch gewährleistet ist, daß stets ein Ergebnis angezeigt wird, solange noch Daten in der Datenbank vorhanden sind. Darüberhinaus ist das Verfahren schnell und vermeidet überflüssige Zugriffe auf die Datenbank.

Claims (10)

  1. Verfahren zur Auswahl eines oder mehrerer Datensätze aus einer Datenbank mittels Eingabe eines oder mehrerer Auswahlkriterien, wobei die zur Verfügung stehenden Ausgangsdatensätze der Datenbank vor der Eingabe von Auswahlkriterien in komprimierter Form als gruppierte Datensätze im Arbeitsspeicher gespeichert werden, mit den Schritten: (a) Erstellen von jeweils einer Liste für jeden der gespeicherten Parameter, die jeden vorkommenden Wert des in den Datensätzen auftretenden, zugehörigen Parameters nur einmal enthält, (b) Gruppieren der Datensätze mit Hilfe der so erstellten Listen zu neuen Datensätzen und Speichern der neuen Datensätze im Arbeitsspeicher in Form von boolschen oder ganzzahligen Werten, welche angeben, an welcher Stelle der Dateninhalt in der zugehörigen Liste steht, (c) Durchsuchen der neuen Datensätze im Arbeitsspeicher, und (d) Ausgeben einer sortierten Ergebnisliste mit ausgewählten Datensätzen, wobei wenigstens ein Auswahlkriterium mit einer Unschärfe berücksichtigt wird.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Grad der Unschärfe auswählbar ist.
  3. Verfahren nach einem der vorgehenden Ansprüche, dadurch gekennzeichnet, daß die Übereinstimmung der Datensätze mit den Auswahlkriterien nach einer vorgegebenen Zuordnungsvorschrift bestimmt wird und die Sortierung der Datensätze in der Ergebnisliste nach der Qualität der Übereinstimmung mit den Auswahlkriterien erfolgt.
  4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß die Zuordnungsvorschrift jedem Abstand eines IST-Wertes vom gewünschten SOLL-Wert eine Kombinationsgewichtung zugeordnet wird.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, daß für jeden Datensatz eine mittlere Kombinationsgewichtung als arithmetischer Mittelwert der einzelnen Kombinationsgewichtungen bestimmt wird.
  6. Verfahren nach einem der Ansprüche 2 bis 5, dadurch gekennzeichnet, daß für jedes Auswahlkriterium, für welches der Grad der Unschärfe auswählbar ist, eine Optionsgewichtung nach einer vorgegebenen Zuordnungsvorschrift bestimmt wird.
  7. Verfahren nach Anspruch 6, sofern es auf Anspruch 4 zurückbezogen ist, dadurch gekennzeichnet, daß für jeden Datensatz eine Gesamtgewichtung bestimmt wird, welche sich berechnet nach (a) Zuordnung einer Gruppengewichtung für wenigstens zwei Parameter (b) Berechnung der Produkte aus der Kombinationsgewichtung eines Wertes, der Optionsgewichtung des zugehörigen Parameters und der Gruppengewichtung dieses Parameters, (c) Aufsummieren aller Produkte eines Datensatzes aus Schritt (a) und (d) Berechnung der Produkte aus der Optionsgewichtung und der Gruppengewichtung für die Parameter (e) Aufsummieren der in Schritt (c) für alle Parameter berechneten Produkte (f) Division der Summe aus Schritt (b) durch die Summe aus Schritt (d).
  8. Verfahren nach einem der Ansprüche 4 bis 7, dadurch gekennzeichnet, daß die Gewichtungen normiert werden.
  9. Verfahren nach einem der Ansprüche 6 bis 8, dadurch gekennzeichnet, daß die Startvorgabe für eine Optionsgewichtung höher ist, wenn eine Eingabe eines Auswahlkriteriums erfolgt, als wenn das Auswahlkriterium auf einer Startvorgabe belassen wird.
  10. Verfahren nach einem der vorgehenden Ansprüche, dadurch gekennzeichnet, daß zwei oder mehr Auswahlkriterien zu einem gemeinsamen Parameter zusammengefasst werden.
DE10259206A 2002-12-17 2002-12-17 Verfahren zur Auswahl eines oder mehrerer Datensätze aus einer Datenbank Expired - Lifetime DE10259206B4 (de)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE10259206A DE10259206B4 (de) 2002-12-17 2002-12-17 Verfahren zur Auswahl eines oder mehrerer Datensätze aus einer Datenbank
ES03028956T ES2377471T3 (es) 2002-12-17 2003-12-17 Procedimiento para seleccionar registros de datos.
AT03028956T ATE525701T1 (de) 2002-12-17 2003-12-17 Verfahren zur auswahl von datensätzen
EP03028956A EP1431885B1 (de) 2002-12-17 2003-12-17 Verfahren zur Auswahl von Datensätzen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10259206A DE10259206B4 (de) 2002-12-17 2002-12-17 Verfahren zur Auswahl eines oder mehrerer Datensätze aus einer Datenbank

Publications (2)

Publication Number Publication Date
DE10259206A1 DE10259206A1 (de) 2004-07-15
DE10259206B4 true DE10259206B4 (de) 2006-09-28

Family

ID=32336437

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10259206A Expired - Lifetime DE10259206B4 (de) 2002-12-17 2002-12-17 Verfahren zur Auswahl eines oder mehrerer Datensätze aus einer Datenbank

Country Status (4)

Country Link
EP (1) EP1431885B1 (de)
AT (1) ATE525701T1 (de)
DE (1) DE10259206B4 (de)
ES (1) ES2377471T3 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007047053A1 (de) 2007-10-01 2009-04-09 Giata-Gesellschaft Zur Entwicklung Und Vermarktung Interaktiver Tourismusanwendung Mbh Suchmaschine für Reisen
DE102010002209A1 (de) 2010-02-22 2011-08-25 Partners Software GmbH, 28759 Verfahren zum Auswählen von mindestens einem Datensatz aus einem in einem Speicher eines Computers gespeicherten Datenwürfel

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005027574A1 (de) * 2004-12-16 2006-09-14 Travel Tainment Ag Verfahren und Vorrichtung zum Erstellen eines Pauschalreise-Datensatzes
DE102005005226A1 (de) * 2005-02-03 2006-08-24 Travel Tainment Ag Verfahren zum Erzeugen von Datensätzen
DE102005027575A1 (de) 2005-06-14 2006-12-28 Travel Tainment Ag Verfahren zur Auswahl von Datensätzen
LU101105B1 (de) 2019-01-17 2020-07-17 It Seal Gmbh Verfahren zur automatisierten Erstellung eines an eine vorgegebene Person gerichteten Phishing-Dokuments
DE102021124963A1 (de) 2021-09-27 2023-03-30 GauVendi GmbH Verfahren zur Auswahl von Datensätzen und Datenbank

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6311178B1 (en) * 1997-09-29 2001-10-30 Webplus, Ltd. Multi-element confidence matching system and the method therefor
US20020082877A1 (en) * 1999-12-03 2002-06-27 Schiff Martin R. Systems and methods of matching customer preferences with available options
US6484165B1 (en) * 1998-04-10 2002-11-19 Requisite Technology, Inc. Method and system for database manipulation

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6542889B1 (en) * 2000-01-28 2003-04-01 International Business Machines Corporation Methods and apparatus for similarity text search based on conceptual indexing
AU2001253055A1 (en) * 2000-03-31 2001-10-15 Liquid Engines, Inc. Electronic matching engine for matching desired characteristics with item attributes

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6311178B1 (en) * 1997-09-29 2001-10-30 Webplus, Ltd. Multi-element confidence matching system and the method therefor
US6484165B1 (en) * 1998-04-10 2002-11-19 Requisite Technology, Inc. Method and system for database manipulation
US20020082877A1 (en) * 1999-12-03 2002-06-27 Schiff Martin R. Systems and methods of matching customer preferences with available options

Non-Patent Citations (9)

* Cited by examiner, † Cited by third party
Title
<http://www.ltur.de> *
<http://www.rex.de> *
<http://www.start.de> *
<http://wwww.bucherreisen.de> *
CODD, E.F.: A Relational Model of Data for Large Shared Data Banks. In: Comm. of the ACM, Vol. 13, Nr. 6, Juni 1970, S. 377-387 *
FÜHLES-UMBACH: Analysen zur Unschärfe in Daten- bank- und Retrievalsystemen - unter besonderer Berücksichtigung der Redundanz - Dissertation, Humboldt-Universität, Berlin:, 1997 (Inhaltsver- zeichnis, Kapitel 4, Literatur *
LINDECKER, Jürgen: Datenbanken-Brücken über Raum und Zeit. In: Technische Rundschau,ISSN 1023-0823, 1988, Heft 45/88, S. 84-96
LINDECKER, Jürgen: Datenbanken-Brücken über Raum und Zeit. In: Technische Rundschau,ISSN 1023-0823,1988, Heft 45/88, S. 84-96 *
SRIVASTAVA, CHEN: Warehouse Creation - A Poten- tial Roadblock to Data Warehousing. In: IEEE Trans. on Knowledge and Data Engineering, ISSN 1041-4347, Januar/Februar 1999, Vol. 11, No. 1, S. 118-126 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007047053A1 (de) 2007-10-01 2009-04-09 Giata-Gesellschaft Zur Entwicklung Und Vermarktung Interaktiver Tourismusanwendung Mbh Suchmaschine für Reisen
DE102010002209A1 (de) 2010-02-22 2011-08-25 Partners Software GmbH, 28759 Verfahren zum Auswählen von mindestens einem Datensatz aus einem in einem Speicher eines Computers gespeicherten Datenwürfel

Also Published As

Publication number Publication date
EP1431885A3 (de) 2005-07-06
EP1431885A2 (de) 2004-06-23
DE10259206A1 (de) 2004-07-15
ES2377471T3 (es) 2012-03-27
ATE525701T1 (de) 2011-10-15
EP1431885B1 (de) 2011-09-21

Similar Documents

Publication Publication Date Title
EP0910829B1 (de) Datenbanksystem
DE69833238T2 (de) System zur Schlüsselwortgewinnung und Textwiederauffingungssystem zu seiner Verwendung
DE10205081A1 (de) Dokumentenauskunftszensor
DE10042983A1 (de) Verfahren zum Bestimmen eines gewünschten Zielortes in einem rechnergestützten Navigationssystem sowie entsprechendes Navigationssystem
DE10259206B4 (de) Verfahren zur Auswahl eines oder mehrerer Datensätze aus einer Datenbank
DE10034694B4 (de) Verfahren zum Vergleichen von Suchprofilen sowie dessen Verwendung
WO2011044865A1 (de) Verfahren zum bestimmen einer ähnlichkeit von objekten
EP1844432A1 (de) Vorrichtung und verfahren zum auswählen von reisebezogenen datensätzen
EP1734469A2 (de) Verfahren zur Auswahl von Datensätzen
EP1672577A1 (de) Verfahren und Vorrichtung zum Erstellen eines Pauschalreise-Datensatzes
DE102005005226A1 (de) Verfahren zum Erzeugen von Datensätzen
DE19952630A1 (de) Verfahren zum Erzeugen einer Auswahlmaske für den Abruf von Daten aus einer Datenbank mit Hilfe programmierbarer Informationsobjekte
DE102008062830B3 (de) Vorrichtung und Verfahren zum Speichern, Suchen und Darstellen von Informationen
WO2007082632A1 (de) Verfahren zur ausgabe von datensätzen und vorrichtung hierfür
DE102009037848A1 (de) Verfahren zum rechnergestützten Verarbeiten von digitalen semantisch annotierten Informationen
Kreuzmair Platform work. Zur materialistischen Analyse von Digitalisierung und Gegenwartsliteratur am Beispiel von Twitter
Plisecka Ἀποκρίματα und die Kaiserkonstitutionen
Antonelli Selbst-Repräsentation und Phänomenale Intentionalität bei Brentano: Eine kritische Stellungnahme
EP3076343A1 (de) Verfahren zur zuordnung sprachlicher eingaben
DE102005005225A1 (de) Verfahren zur Auswahl von Datensätzen
Eckl et al. Ten years of Soziale Passagen: An empirical analysis of the journal’s topics
EP1553506B1 (de) Datenfilter in einem Computernetzwerk
Lehmkuhl et al. “Visible scientists revisited”: on the relationship between scientific reputation and the public presence of scientific experts in mass media coverage of infectious diseases
WO2008028649A2 (de) Informationssystem und verfahren zur anzeige von informationen
Meckel et al. Kirchenrecht-Katholisch

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: TRAVEL TAINMENT AG, 52146 WUERSELEN, DE

R082 Change of representative

Representative=s name: WEISSE UND KOLLEGEN, DE

Representative=s name: WEISSE UND KOLLEGEN, 42555 VELBERT, DE

R081 Change of applicant/patentee

Owner name: TRAVEL TAINMENT GMBH, DE

Free format text: FORMER OWNER: TRAVEL TAINMENT AG, 52146 WUERSELEN, DE

Effective date: 20120110

R082 Change of representative

Representative=s name: SAMSON & PARTNER, PATENTANWAELTE, DE

Effective date: 20120110

Representative=s name: KAI KOHLMANN, DE

Effective date: 20120213

Representative=s name: SAMSON & PARTNER PATENTANWAELTE MBB, DE

Effective date: 20120110

Representative=s name: SAMSON & PARTNER PATENTANWAELTE MBB, DE

Effective date: 20120227

Representative=s name: SAMSON & PARTNER PATENTANWAELTE MBB, DE

Effective date: 20120213

Representative=s name: SAMSON & PARTNER, PATENTANWAELTE, DE

Effective date: 20120227

Representative=s name: SAMSON & PARTNER, PATENTANWAELTE, DE

Effective date: 20120213

Representative=s name: KAI KOHLMANN, DE

Effective date: 20120110

Representative=s name: KAI KOHLMANN, DE

Effective date: 20120227

Effective date: 20120213

Effective date: 20120110

Representative=s name: KAI KOHLMANN, 52078 AACHEN, DE

R082 Change of representative

Representative=s name: SAMSON & PARTNER PATENTANWAELTE MBB, DE

Representative=s name: SAMSON & PARTNER, PATENTANWAELTE, DE

Representative=s name: KAI KOHLMANN, DE

Representative=s name: KAI KOHLMANN, 52078 AACHEN, DE

R082 Change of representative

Representative=s name: SAMSON & PARTNER PATENTANWAELTE MBB, DE

Representative=s name: SAMSON & PARTNER, PATENTANWAELTE, DE

R082 Change of representative

Representative=s name: SAMSON & PARTNER PATENTANWAELTE MBB, DE

Representative=s name: SAMSON & PARTNER, PATENTANWAELTE, DE

R071 Expiry of right