DE102009017082A1 - Verfahren und Vorrichtung zum Generieren einer Datenbank für eine Datenbankabfrage, sowie ein Suchverfahren und eine Suchvorrichtung zur Datenbankabfrage - Google Patents

Verfahren und Vorrichtung zum Generieren einer Datenbank für eine Datenbankabfrage, sowie ein Suchverfahren und eine Suchvorrichtung zur Datenbankabfrage Download PDF

Info

Publication number
DE102009017082A1
DE102009017082A1 DE102009017082A DE102009017082A DE102009017082A1 DE 102009017082 A1 DE102009017082 A1 DE 102009017082A1 DE 102009017082 A DE102009017082 A DE 102009017082A DE 102009017082 A DE102009017082 A DE 102009017082A DE 102009017082 A1 DE102009017082 A1 DE 102009017082A1
Authority
DE
Germany
Prior art keywords
database
path distance
search
node
nodes
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.)
Ceased
Application number
DE102009017082A
Other languages
English (en)
Inventor
Gero BÄSE
Mario Dr. Döller
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.)
Siemens AG
Original Assignee
Siemens 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 Siemens AG filed Critical Siemens AG
Priority to DE102009017082A priority Critical patent/DE102009017082A1/de
Priority to KR1020117027210A priority patent/KR101662561B1/ko
Priority to US13/264,676 priority patent/US9213738B2/en
Priority to PCT/EP2010/053752 priority patent/WO2010118931A1/de
Priority to EP10712921A priority patent/EP2419840A1/de
Priority to CN201080016904.3A priority patent/CN102395968B/zh
Publication of DE102009017082A1 publication Critical patent/DE102009017082A1/de
Ceased 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/242Query formulation
    • G06F16/2433Query languages
    • G06F16/2448Query languages for particular applications; for extensibility, e.g. user defined types
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists

Abstract

Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum Generieren einer Datenbank. Hierbei werden Informationswerte mit Hilfe von Knoten und gerichteten Kanten, die Abhängigkeiten zwischen zwei Knoten bzw. Informationswerten beschreiben, in Form eines gerichteten Graphen zur Datenbankabfrage aufgebaut. Durch Verwendung einer Pfaddistanz, die eine Anzahl an gerichteten Kanten zwischen einem ausgewählten Knoten und einem Zieltupel, bestehend aus zwei mit einer gerichteten Kante verbundenen Knoten und der dazugehörigen gerichteten Kante, beschreibt, kann eine Reduktion einer Komplexität bei einer Datenbankabfrage und somit eine Beschleunigung der Datenbankabfrage erzielt werden. Die Erfindung umfasst ferner ein Suchverfahren und eine Suchvorrichtung zur Abfrage der beschriebenen Datenbank. Die Erfindung ist beispielsweise einsetzbar bei Überwachungseinrichtungen oder in medizinischen Datenbanken. Ferner kann die Erfindung für Datenbanken eingesetzt werden, die dynamisch erweitert werden, beispielsweise durch neue Ereignisse in der Überwachungseinrichtung.

Description

  • Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum Generieren einer Datenbank für eine Datenbankabfrage. Ferner betrifft die Erfindung ein Suchverfahren und eine Suchvorrichtung zum Abfragen einer Datenbank.
  • Informationswerte, wie Flugdaten oder Börsenkurse, werden heute mittels Datenbanken einem Benutzer zur Verfügung gestellt. Hierzu gibt es eine Vielzahl von Datenbanksprachen, mit denen die jeweilige Datenbank strukturiert beschrieben und abgefragt werden kann. Ein Vertreter zur Beschreibung von Datenbanken mit semantischen Relationen ist beispielsweise RDF/OWL (RDF – Resource Description Framework, OWL – Web Ontology Language) [1, 2]. Hierbei werden Informationswerte in Form von Knoten beschrieben, wobei jeweils zwei Knoten und eine gerichtete Kante zwischen den zwei Knoten als RDF-Tripel bezeichnet werden. Dabei repräsentieren die zwei Knoten ein Subjekt und ein Objekt und die gerichtete Kante ein Prädikat. Hierbei definiert das Prädikat im Allgemeinen eine semantische Relation zwischen dem Subjekt und dem Objekt. Dies soll an einem Beispiel gemäß 1 näher erläutert werden. Dabei repräsentiert der Knoten B das Subjekt ”Person”, der Knoten A das Objekt ”Mario” und die gerichtet Kante a das Prädikat ”hat Namen”. Somit liest sich das RDF-Tripel ”BaA” zu ”Person hat Namen Mario”. Eine Verkettung solcher RDF-Tripels führt zu einer Graphenstruktur, die einen gerichteten Graphen wiedergibt, siehe bspw. 1. Triples sind in 1 fett umrandet.
  • Zur Abfrage eines Informationswertes der Datenbank gemäß RDF/OWL kann eine Abfragesprache SPARQL (SPARQL – SPARQL Protocol and RDF Query Language) [3] dienen. Hierzu wird ausgehend von einem vorgebbaren Knoten, also einem bestimmten In formationswert, ein oder mehrere RDF-Tripels der Datenbank gesucht, siehe bspw. in 1 die fett umrandeten RDF-Tripels (BaA, HjJ, IkK). Zur Abfrage dieser RDF-Tripels, also einer semantischen Anfrage, wird ein gesuchter subgraph durch Angabe aller involvierten RDF-Tripels realisiert. Um die oben genannten drei RDF-Tripels anzugeben müssen daher Ketten von RDF-Tripels umfassend die in 2 umrandeten RDF-Tripels spezifiziert werden. Diese Vorgehensweise bedingt, dass eine derartige semantische Datenbankabfrage komplex und zeitaufwendig ist, da bereits bei Stellen der Datenbankabfrage eine umfangreiche Kenntnis der Struktur der Datenbank von Nöten ist.
  • Daher ist es eine Aufgabe der Erfindung ein Verfahren und eine Vorrichtung zum Generieren einer Datenbank für eine Datenbankabfrage, sowie ein Suchverfahren und eine Suchvorrichtung zum Abfragen einer Datenbank anzugeben, die eine Reduktion der Komplexität bei der Datenbankabfrage ermöglichen.
  • Diese Aufgabe wird durch die unabhängigen Ansprüche gelöst. Weiterbildungen der Erfindung sind den abhängigen Ansprüchen zu entnehmen.
  • Die Erfindung betrifft ein Verfahren zum Generieren einer Datenbank zum Bereitstellen von Informationswerten mittels Knoten und von Abhängigkeiten der Informationswerte mittels gerichteter Kanten für eine Datenbankabfrage, wobei durch die Knoten und durch die gerichteten Kanten die Datenbank in Form eines gerichteten Graphen gebildet wird,
    bei dem folgende Schritte durchgeführt werden:
    • a) Einlesen einer Beschreibungsvorschrift, die die Zuordnung von jeweils zwei Informationswerten mit der dazugehörigen Abhängigkeit angibt;
    • b) Erstellen des jeweiligen Knotens für den jeweiligen Informationswert und der jeweiligen gerichteten Kante für die jeweilige Abhängigkeit;
    • c) Erzeugen des gerichteten Graphen ausgehend von einem vorgebbaren Knoten der Knoten auf Grundlage der Beschreibungsvorschrift, wobei jeweils zwei der Knoten und der die jeweiligen Knoten verbindende gerichtete Kante als Tripel gekennzeichnet werden;
    • d) Bestimmen von zumindest einem Pfad von dem vorgebbaren Knoten zu einem in der Datenbankabfrage zu ermittelnden Tripel;
    • e) Generieren einer jeweiligen Pfaddistanz des jeweiligen Pfades, wobei die jeweilige Pfaddistanz eine Anzahl an gerichteten Kanten von dem vorgebbaren Knoten zu dem zu ermittelnden Tripel angibt, wobei die jeweilige Pfaddistanz bei der Datenbankabfrage ausgehend von dem vorgebbaren Knoten ausgewertet werden kann.
  • Durch das Verfahren wird eine Reduktion der Rechenleistung bei der Suche nach bestimmten Tripel erreicht, da durch die Angabe der Pfaddistanz eine Reduktion der zu untersuchenden Knoten erreicht wird.
  • Ferner ist eine Vorrichtung zum Generieren einer Datenbank zum Bereitstellen von Informationswerten mittels Knoten und von Abhängigkeiten der Informationswerte mittels gerichteter Kanten für eine Datenbankabfrage Teil der Erfindung, wobei durch die Knoten und durch die gerichteten Kanten die Datenbank in Form eines gerichteten Graphen gebildet wird, bei dem die Vorrichtung folgende Mittel umfasst:
    • a) Erstes Mittel zum Einlesen einer Beschreibungsvorschrift, die die Zuordnung von jeweils zwei Informationswerten mit der dazugehörigen Abhängigkeit angibt;
    • b) Zweites Mittel zum Erstellen des jeweiligen Knotens für den jeweiligen Informationswert und der jeweiligen gerichteten Kante für die jeweilige Abhängigkeit;
    • c) Drittes Mittel zum Erzeugen des gerichteten Graphen ausgehend von einem vorgebbaren Knoten der Knoten auf Grundlage der Beschreibungsvorschrift, wobei jeweils zwei der Knoten und der die jeweiligen Knoten verbindende gerichtete Kante als Tripel gekennzeichnet werden;
    • d) Viertes Mittel zum Bestimmen von zumindest einem Pfad von dem vorgebbaren Knoten zu einem in der Datenbankabfrage zu ermittelnden Tripel;
    • d) Fünftes Mittel zum Generieren einer jeweiligen Pfaddistanz des jeweiligen Pfades, wobei die jeweilige Pfaddistanz eine Anzahl an gerichteten Kanten von dem vorgebbaren Knoten zu dem zu ermittelnden Tripel angibt, wobei die jeweilige Pfaddistanz bei der Datenbankabfrage ausgehend von dem vorgebbaren Knoten ausgewertet werden kann.
  • Mit Hilfe der Vorrichtung ist das Verfahren zum Generieren einer Datenbank implementierbar.
  • Des Weiteren ist Teil der Erfindung ein Suchverfahren zur Ermittlung eines Informationswertes in einer Datenbank, wobei die Datenbank gemäß Verfahren zum Generieren einer Datenbank generiert werden kann, bei dem folgende Schritte durchgeführt werden:
    Erzeugen einer Datenbankabfrage mittels eines Suchmusters umfassend eine Angabe des vorgebbaren Knotens, der Pfaddistanz und des zu ermittelnden Tripels;
    Durchsuchen der Datenbank zur Ermittlung der Datenbankabfrage, wobei die in dem Suchmuster angegebene Pfaddistanz bei der Durchsuche berücksichtigt wird;
    Bereitstellen zumindest einer der Informationswerte zumindest eines der Tripel, das die Vorgabe des Suchmusters erfüllt.
  • Durch das Suchverfahren wird eine Reduktion der Rechenleistung bei der Suche nach bestimmten Tripel in der Datenbank erreicht, da durch die Angabe der Pfaddistanz eine Reduktion der zu untersuchenden Knoten erreicht wird.
  • In einer Weiterbildung des Suchverfahrens werden bei dem Durchsuchen der Datenbank zur Ermittlung der Datenbankabfrage diejenigen Tripel berücksichtigt, die eine Pfaddistanz von maximal der in dem Suchmuster angegebenen Pfaddistanz zu dem in dem Suchmuster vorgegebenen Knoten aufweisen. Hierdurch kann eine weitere Reduktion der Rechenleistung zum Durchführen der Datenbankabfrage erzielt werden, da eine Anzahl an zur Suche zu berücksichtigenden Tripel weiter reduziert wird.
  • Zudem kann die Rechenleistung zum Durchführen der Datenbankabfrage noch weiter reduziert werden, wenn bei dem Durchsuchen der Datenbank zur Ermittlung der Datenbankabfrage diejenigen Tripel berücksichtigt werden, die eine Pfaddistanz von genau der in dem Suchmuster angegebenen Pfaddistanz zu dem in dem Suchmuster vorgegebenen Knoten aufweisen.
  • In einer vorteilhaften Weiterbildung des Suchverfahrens wird ein Wert Null für die Pfaddistanz in dem Suchmuster derart verarbeitet wird, dass diese Pfaddistanz auf zumindest eine maximale in der Datenbank vorkommende Pfaddistanz gesetzt. Dies ermöglicht eine Vollsuche aller Knoten und Tripel der Datenbank unabhängig von der maximalen vorkommenden Pfaddistanz.
  • Schließlich ist Teil der Erfindung eine Suchvorrichtung zur Ermittlung eines Informationswertes in einer Datenbank, wobei die Datenbank gemäß der Vorrichtung zum Generieren einer Datenbank generiert ist, die folgende Einheiten aufweist:
    Erste Einheit zum Erzeugen einer Datenbankabfrage mittels eines Suchmusters umfassend eine Angabe des vorgebbaren Knotens, der Pfaddistanz und des zu ermittelnden Tripels;
    Zweite Einheit zum Durchsuchen der Datenbank zur Ermittlung der Datenbankabfrage, wobei die in dem Suchmuster angegebene Pfaddistanz bei der Durchsuche berücksichtigbar ist;
    Dritte Einheit zum Bereitstellen zumindest einer der Informationswerte zumindest eines der Tripel, das die Vorgabe des Suchmusters erfüllt.
  • Mit Hilfe der Suchvorrichtung ist das Suchverfahren implementierbar. Weitere Vorteile, auch für Weiterbildungen der Suchvorrichtung sind den jeweils korrespondierenden Merkmalen des Suchverfahrens entnehmbar.
  • In einer Weiterbildung der Suchvorrichtung ist ferner die zweite Einheit derart ausgebildet, bei dem Durchsuchen der Datenbank zur Ermittlung der Datenbankabfrage diejenigen Tripel zu berücksichtigen, die eine Pfaddistanz von maximal der in dem Suchmuster angegebenen Pfaddistanz zu dem in dem Suchmuster vorgegebenen Knoten aufweisen.
  • Zusätzlich oder alternativ dazu kann die zweite Einheit ferner derart ausgebildet sein, bei dem Durchsuchen der Datenbank zur Ermittlung der Datenbankabfrage diejenigen Tripel zu berücksichtigen, die eine Pfaddistanz von genau der in dem Suchmuster angegebenen Pfaddistanz zu dem in dem Suchmuster vorgegebenen Knoten aufweisen.
  • In einer vorteilhaften Weiterbildung der Suchvorrichtung ist ferner die zweite Einheit derart ausgebildet, dass ein Wert Null für die Pfaddistanz in dem Suchmuster derart verarbeitbar ist, dass diese Pfaddistanz zumindest auf eine maximale in der Datenbank vorkommende Pfaddistanz einstellbar ist.
  • Die Erfindung und ihre Weiterbildungen werden anhand von Figuren näher erläutert.
  • Es zeigen:
  • 1 Eine Struktur einer Datenbank mit Kanten und Knoten gemäß einem Standard RDF/OWL (Stand der Technik);
  • 2 Eine Anzahl von RDF-Tripels der Datenbank, die bei der Abfrage dreier RDF-Tripels zu berücksichtigen sind (Stand der Technik);
  • 3 Eine Struktur einer Datenbank gemäß einem Ausführungsbeispiel der Erfindung;
  • 4 Ablaufdiagramm zur Erstellung der Datenbank gemäß 3;
  • 5 Ablaufdiagramm zur Abfragen der Datenbank.
  • Elemente mit gleicher Funktion und Wirkung sind in den Figuren mit denselben Bezugszeichen versehen.
  • 3 und 4 zeigen ein Ausführungsbeispiel der Erfindung. Dabei soll im Rahmen einer Überwachungsanwendung in einem Gebäude eine Datenbank für eine semantische Annotierung von zeitlichen und räumlichen Zuordnungen einer Person zu einem oder mehreren Räumen erstellt werden. 3 zeigt dabei Knoten und gerichtete Kanten, die jeweils bestimmte Informationswerte bzw. Abhängigkeiten aufnehmen können. In 3 werden dabei folgende Bezugszeichen verwendet:
  • A:
    Knoten für den Informationswert IA = Name
    B:
    Knoten für den Informationswert IB = Person
    C:
    Knoten für den Informationswert IC = Position
    D:
    Knoten für den Informationswert ID = Zeitlich
    E:
    Knoten für den Informationswert IE = Örtlich
    F
    : Knoten für den Informationswert IF = Ort
    G:
    Knoten für den Informationswert IG = Name
    a:
    gerichtete Kante für Abhängigkeit aa = ”hat Name”
    b:
    gerichtete Kante für Abhängigkeit bb = ”hat Position”
    c:
    gerichtete Kante für Abhängigkeit cc = ”hat zeitliche Position”
    d:
    gerichtete Kante für Abhängigkeit dd = ”hat örtliche Position”
    e:
    gerichtete Kante für Abhängigkeit ee = ”hat befindet sich”
    f:
    gerichtete Kante für Abhängigkeit ff = ”hat örtliche Region”
    g:
    gerichtete Kante für Abhängigkeit gg = ”hat Name”
  • In einem Schritt STA wird das Verfahren mit den Schritten S1 bis S5 gestartet, um eine Datenbank DB zu erstellen.
  • Im Schritt S1 wird eine Beschreibungsvorschrift DEF, die die Zuordnung von jeweils zwei Informationswerten IA, IB mit der dazugehörigen Abhängigkeit aa eingelesen. Die Beschreibungsvorschrift DEF kann in Form eines Papierblatts oder als elektronische Datei ausgestaltet sein und beispielsweise mittels einer Beschreibungssprache XML (XML – eXtensible Markup Language) die jeweiligen Zuordnung darstellen. In diesem Beispiel beschreibt die Beschreibungsvorschrift die Zuordnungen wie sie bildhaft in 3 dargestellt sind.
  • Im Schritt S2 werden die jeweiligen Knoten A, G für den jeweiligen Infomationswert IA, ..., IG und die jeweiligen gerichteten Kanten a, ..., g für die Abhängigkeiten aa, ..., gg gebildet. Die Kanten sind gerichtet, da der Knoten, an dem die gerichtete Kante entspringt bspw. einem Subjekt, und der Knoten, an dem die gerichtete Kante endet einem Objekt entspricht, wobei die gerichtete Kante eine semantische Relation beider Kanten repräsentiert. Zwei Knoten, die mit einer gerichteten Kante verbunden sind, und die dazugehörige gerichtete Kante werden Tripel TA, TF bezeichnet.
  • In einem nächsten Schritt S3 wird dann ausgehend ein einem vorgebbaren Knoten AA = B ein gerichteter Graph TR aus den Knoten und gerichtete Kanten auf Basis der Beschreibungsvorschrift gebildet. Der vorgebbare Knoten AA stammt aus der Menge der Knoten und ist ein Ausgangspunkt für eine Datenbankabfrage.
  • Dabei kann das Ausführungsbeispiel in einer konkreten Ausprägung, also in einer Instanz, folgendermaßen lauten:
    • – Person = erste Person ”hat Name” Name = Werner
    • – Person = erste Person ”hat Position” Position = 15
    • – Position = 15 ”hat zeitliche Position” Zeitlich = 12:05 Uhr
    • – Position = 15 ”hat örtliche Position” Örtlich = 48°8' NB, 11°34' ÖL (NB = nördliche Breite, ÖL = östliche Länge)
    • – Örtlich = 48°8' NB, 11°34' ÖL ”hat örtliche Region” Ort = erster Raumabschnitt
    • – Zeitlich = 12:05 Uhr ”befindet sich” Ort = erster Raumabschnitt
    • – Ort = erster Raumabschnitt ”hat Name” Name = Eingangsbereich
  • Hierbei geht es um die Überwachung von großen Räumen in mehreren zu überwachenden Orten, d. h. Regionen. Jedes Mal wenn eine Person in eine Region tritt kann eine Instanz in der Datenbank angelegt werden. Allgemein existiert zumindest eine konkrete Ausprägung in der Datenbank DB.
  • In einem nächsten Schritt S4 wird ein Pfad PF1 von dem vorgebbaren Knoten AA zu dem bei der Datenbankabfrage zu ermittelnden Tripel TF gebildet. Im vorliegenden Ausführungsbeispiel gibt es von dem vorgebbaren Knoten AA zu dem Knoten F des Tripels TF folgende Pfade PF1, PF2:
    PF1 = AA-b-C-c-D-e-F
    PF2 = AA-b-C-d-E-f-F
  • Eine Länge der Pfade, d. h. eine Pfaddistanz, wird durch eine Anzahl an gerichteten Kanten in dem jeweiligen Pfad bestimmt. Im vorliegenden Beispiel ist die Pfaddistanz DIS des Pfads PF1 DIS1 = 3 und des Pfades PF2 DIS2 = 3.
  • In einer optionalen Erweiterung kann im Schritt S4 bei vorliegen mehrere Pfade der kürzeste Pfad bestimmt werden, der nachfolgend verwendet werden soll. In dem vorliegenden Beispiel sind jedoch beide Pfade gleich lang.
  • In einem nachfolgenden Schritt S5 wird den Tripeln TF die Pfaddistanz DIS hinzugefügt. Das Ablaufdiagramm gemäß 4 wird im Schritt END beendet.
  • Die Erfindung betrifft auch ein Suchverfahren zur Ermittlung eines Informationswertes in der Datenbank DB. Gemäß 5 wird diese Abfrage im Zustand STA gestartet.
  • In einem Schritt S6 wird eine Datenbankabfrage mittels eines Suchmusters erzeugt. Hierbei wird bei der Datenbankabfrage als Suchmuster QY anstelle eines vorgebbaren Pfades, wie es im Stand der Technik bei der Abfragesprache SPARQL der Fall ist, der vorgebbare Knoten, d. h. der dazugehörige Informationswert, die in der Suche zu berücksichtigende Distanz und das zu ermittelnde Tripel beschrieben, wie beispielsweise:
    QY = ”(Person) [3] (Ort ”hat Name” Name)”
  • Das bedeutet, wie im Schritt S7 dargestellt, dass ausgehend von dem Informationswert (Person) mit einer Pfaddistanz von 3 das Tripel (Ort ”hat Name” Name) gesucht wird. Bei der Suche werden somit nur noch die Tripel berücksichtigt, die eine Pfaddistanz von drei aufweisen. Im Allgemeinen wird bei der Suche in der Datenbank die Pfaddistanz berücksichtigt. Ferner kann das Suchverfahren denjenigen Pfad bestimmen, der für die Suche am wenigsten komplex ist.
  • Als Ergebnis der Suche wird im Schritt S8 zumindest der eine Informationswert der durch die Suche ermittelten Tripels ausgegeben. Ferner können auch weitere Informationswerte des ermittelten Tripels und/oder die Abhängigkeit dargestellt werden.
  • Zudem können in dem Suchmuster spezielle Werteausprägungen für zumindest eines der Elemente des Tripels abgefragt werden. So lautet das Suchmuster QY bspw.
    QY = ”(Person) [3] (Ort ”hat Name” Name = ”Eingangsbereich”)”
  • Hierbei werden diejenigen Orte in der Datenbank gesucht, die als spezifische Werteausprägung des Namens „Eingangsbereich” aufweisen.
  • Ferner können bei der Durchsuchung der Datenbank diejenigen Tripel berücksichtigt werden, die genau oder maximal der in dem Suchmuster angegebenen Pfaddistanz DIST von dem in dem Suchmuster angegebenen vorgebbaren Knoten AA Distanz aufweisen. Des Weiteren kann mit Hilfe eines Wertes Null in der in dem Suchmuster angegebenen Pfaddistanz DIST = 0 dem Suchverfahren mitgeteilt werden, dass alle Knoten der Datenbank zu durchsuchen sind.
  • Das Ablaufdiagramm gemäß 5 wird im Schritt END beendet.
  • Im Stand der Technik können die Tripel der einzelnen Typen mittels Tabellen abgelegt werden. Bei der Auswertung von Suchmustern, also von vorgebbaren Pfaden, müssen involvierte Tabellen miteinander verknüpft werden. Die Effizienz der Suche hängt im Wesentlichen von der Größe der Tabellen und der jeweiligen Selektivität ab.
  • Im Gegensatz dazu kann bei einer Implementierung der vorliegenden Erfindung eine Suche auf denjenigen Pfad begrenzt werden, der wenige Rechenschritte benötigt. Dies kann dann der Pfad sein, der am kürzesten ist, also die kleinste Pfaddistanz aufweist. In diesem Fall müssen weniger Tripel bearbeitet werden, um von dem vorgebbaren Knoten zur dem zu ermittelnden Tripel TF zu gelangen. Ferner kann sich ein Vorteil dadurch ergeben, dass bei der Bearbeitung der Tripel mittels Tabellen derjenige Pfad ausgewählt wird, der möglichst kleine Tabellen aufweist. In vorliegen Beispiel gemäß 3 ist bspw. eine Tabelle für den Knoten D und eine weitere Tabelle für den Knoten E erstellt werden. Die Tabelle für den Knoten D enthält eine große Anzahl von Einträgen und die Tabelle für den Knoten E nur eine dazu kleine Anzahl von Einträgen. Daher ist es bei der Verwendung von Tabellen zur Realisierung der Datenbank zweckmäßig den Pfad PF2 zu wählen, der über den Knoten E verläuft und den Knoten D nicht einschließt. Hierdurch wird eine Rechenkomplexität verringert.
  • Bei einer Abfrage gemäß dem Stand der Technik mittels SPARQL muss der das Suchmuster, also der vorgebbare Pfad vollständig angegeben werden. In diesem Fall ist eine Auswahl von Pfaden, die von dem vorgebbaren Knoten zu dem zu ermittelnden Tripel TF führen nicht möglich. Somit wird durch die Erfindung ermöglicht, dass das Suchmuster nur die zur Suche wesentlichen Elemente aufweist und das Suchverfahren auf Basis dieses Suchmustern den optimalen Pfad zur Auswertung der Suche bestimmen kann.
  • Ein weiterer Vorteil der Erfindung ist darin zu sehen, dass durch Angabe der Distanz in dem Suchmuster ein Detaillierungsgrad bei der Datenbankabfrage eingestellt werden kann. Je größer die Distanz von dem vorgebbaren Knoten ist, desto detaillierter ist der Informationsgrad. Somit kann mit Hilfe der Erfindung auch eine Qualität des zu ermittelnden Tripel TF bei der Datenbankabfrage angegeben werden.
  • In einer Erweiterung kann ein Wert Null für die Pfaddistanz angeben, dass die Suche ohne Beschränkung auf die Distanz durchzuführen ist. Dies ist vorteilhaft, da hierdurch die Möglichkeit eröffnet wird unabhängig von der Mächtigkeit der Datenbank, also ohne Kenntnis der maximal vorkommenden Pfaddistanz in der Datenbank, alle Tripel bei der Datenbankabfrage zu berücksichtigen.
  • Das Verfahren zum Generieren der Datenbank kann mit Hilfe von fünf Mittel M1, M2, M3, M4, M5 mit der Vorrichtung VOR durchgeführt werden. Ferner kann das Suchverfahren zur Ermittlung eines Informationswertes in der Datenbank mittels der Einheiten E1, E2 und E4 mit der Suchvorrichtung SVOR realisiert werden. Diese Mittel und/oder Einheiten sind in Hardware, Software oder in einer Kombination aus Hard- und Software durchführbar. Zudem können die Mittel und/oder die Einheiten mittels einer Rechnereinheit ausgeführt werden.
  • Literatur:
    • [1] „Resource Description Framework", http://en.wikipedia.org/wiki/Resource_Description_Framework, Stand 15.04.2009
    • [2] „Web Ontology Language", http://en.wikipedia.org/wiki/Web_Ontology_Language, Stand 15.04.2009
    • [3] „SPARQL Protocol and RDF Query Language", http://en.wikipedia.org/wiki/SPARQL, Stand 15.04.2009
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • - Standard RDF/OWL [0022]

Claims (10)

  1. Verfahren zum Generieren einer Datenbank (DB) zum Bereitstellen von Informationswerten (IA, ..., IG) mittels Knoten (A, ..., G) und von Abhängigkeiten (aa, ..., gg) der Informationswerte (IA, ..., IG) mittels gerichteter Kanten (a, ..., g) für eine Datenbankabfrage, wobei durch die Knoten (A, ..., G) und durch die gerichteten Kanten (a, ..., g) die Datenbank (DB) in Form eines gerichteten Graphen (TRE) gebildet wird, bei dem folgende Schritte durchgeführt werden: a) Einlesen einer Beschreibungsvorschrift (DEF), die die Zuordnung von jeweils zwei Informationswerten (IA, IB) mit der dazugehörigen Abhängigkeit (aa) angibt; b) Erstellen des jeweiligen Knotens (A, ..., G) für den jeweiligen Informationswert (IA, ..., IG) und der jeweiligen gerichteten Kante (a, ..., g) für die jeweilige Abhängigkeit (aa, ..., gg); c) Erzeugen des gerichteten Graphen (TRE) ausgehend von einem vorgebbaren Knoten (AA) der Knoten (A, ..., G) auf Grundlage der Beschreibungsvorschrift (DEF), wobei jeweils zwei der Knoten ((A, B), (F, G)) und der die jeweiligen Knoten ((A, B), (F, G)) verbindende gerichtete Kante (a, g) als Tripel (TA, TG) gekennzeichnet werden; d) Bestimmen von zumindest einem Pfad (PF1, PF2) von dem vorgebbaren Knoten (AA) zu einem in der Datenbankabfrage zu ermittelnden Tripel (TG); e) Generieren einer jeweiligen Pfaddistanz (DIS1, DIS2) des jeweiligen Pfades (PF1, PF2), wobei die jeweilige Pfaddistanz (DPF1, DPF2) eine Anzahl an gerichteten Kanten (a, ..., k) von dem vorgebbaren Knoten (AA) zu dem zu ermittelnden Tripel (TG) angibt, wobei die jeweilige Pfaddistanz (DPF1, DPF2) bei der Datenbankabfrage ausgehend von dem vorgebbaren Knoten (AA) ausgewertet werden kann.
  2. Vorrichtung (VOR) zum Generieren einer Datenbank (DB) zum Bereitstellen von Informationswerten (IA, ..., IG) mittels Knoten (A, ..., G) und von Abhängigkeiten (aa, gg) der Informationswerte (IA, ..., IG) mittels gerichteter Kanten (a, ..., g) für eine Datenbankabfrage, wobei durch die Knoten (A, ..., G) und durch die gerichteten Kanten (a, ..., g) die Datenbank (DB) in Form eines gerichteten Graphen (TRE) gebildet wird, bei dem die Vorrichtung folgende Mittel umfasst: a) Erstes Mittel (M1) zum Einlesen einer Beschreibungsvorschrift (DEF), die die Zuordnung von jeweils zwei Informationswerten (IA, IB) mit der dazugehörigen Abhängigkeit (aa) angibt; b) Zweites Mittel (M2) zum Erstellen des jeweiligen Knotens (A, ..., G) für den jeweiligen Informationswert (IA, ..., IG) und der jeweiligen gerichteten Kante (a, ..., g) für die jeweilige Abhängigkeit (aa, ..., gg); c) Drittes Mittel (M3) zum Erzeugen des gerichteten Graphen (TRE) ausgehend von einem vorgebbaren Knoten (AA) der Knoten (A, ..., G) auf Grundlage der Beschreibungsvorschrift (DEF), wobei jeweils zwei der Knoten ((A, B), (F, G)) und der die jeweiligen Knoten ((A, B), (F, G)) verbindende gerichtete Kante (a, g) als Tripel (TA, TG) gekennzeichnet werden; d) Viertes Mittel (M4) zum Bestimmen von zumindest einem Pfad (PF1, PF2) von dem vorgebbaren Knoten (AA) zu einem in der Datenbankabfrage zu ermittelnden Tripel (TG); d) Fünftes Mittel (M5) zum Generieren einer jeweiligen Pfaddistanz (DIS1, DIS2) des jeweiligen Pfades (PF1, PF2), wobei die jeweilige Pfaddistanz (DPF1, DPF2) eine Anzahl an gerichteten Kanten (a, ..., k) von dem vorgebbaren Knoten (AA) zu dem zu ermittelnden Tripel (TG) angibt, wobei die jeweilige Pfaddistanz (DPF1, DPF2) bei der Datenbankabfrage ausgehend von dem vorgebbaren Knoten (AA) ausgewertet werden kann.
  3. Suchverfahren zur Ermittlung eines Informationswertes (IF) in einer Datenbank (DB), wobei die Datenbank (DB) gemäß Anspruch 1 generiert werden kann, bei dem folgende Schritte durchgeführt werden: Erzeugen einer Datenbankabfrage mittels eines Suchmusters (QY) umfassend eine Angabe des vorgebbaren Knotens (AA), der Pfaddistanz (DIST) und des zu ermittelnden Tripels (TG); Durchsuchen der Datenbank (DB) zur Ermittlung der Datenbankabfrage, wobei die in dem Suchmuster (QY) angegebene Pfaddistanz (DIST) bei der Durchsuche berücksichtigt wird; Bereitstellen zumindest einer der Informationswerte (IF) zumindest eines der Tripel (TR), das die Vorgabe des Suchmusters (QY) erfüllt.
  4. Suchverfahren nach Anspruch 3, wobei bei dem Durchsuchen der Datenbank (DB) zur Ermittlung der Datenbankabfrage diejenigen Tripel berücksichtigt werden, die eine Pfaddistanz von maximal der in dem Suchmuster (QY) angegebenen Pfaddistanz (DIST) zu dem in dem Suchmuster (QY) vorgegebenen Knoten (AA) aufweisen.
  5. Suchverfahren nach Anspruch 3 oder 4, wobei bei dem Durchsuchen der Datenbank (DB) zur Ermittlung der Datenbankabfrage diejenigen Tripel berücksichtigt werden, die eine Pfaddistanz von genau der in dem Suchmuster (QY) angegebenen Pfaddistanz (DIST) zu dem in dem Suchmuster (QY) vorgegebenen Knoten (AA) aufweisen.
  6. Suchverfahren nach einem der Ansprüche 3 bis 5, bei dem ein Wert Null für die Pfaddistanz (DIST) in dem Suchmuster (QY) derart verarbeitet wird, dass diese Pfaddistanz (DIST) auf zumindest eine maximale in der Datenbank (DB) vorkommende Pfaddistanz (DISmax) gesetzt wird.
  7. Suchvorrichtung (SVOR) zur Ermittlung eines Informationswertes (IF) in einer Datenbank (DB), wobei die Datenbank (DB) gemäß Anspruch 2 generiert ist, die folgende Einheiten umfasst: Erste Einheit (E1) zum Erzeugen einer Datenbankabfrage mittels eines Suchmusters (QY) umfassend eine Angabe des vorgebbaren Knotens (AA), der Pfaddistanz (DIST) und des zu ermittelnden Tripels (TG); Zweite Einheit (E2) zum Durchsuchen der Datenbank (DB) zur Ermittlung der Datenbankabfrage, wobei die in dem Suchmuster (QY) angegebene Pfaddistanz (DIST) bei dem Durchsuchen berücksichtigbar ist; Dritte Einheit (E3) zum Bereitstellen zumindest einer der Informationswerte (IF) zumindest eines der Tripel (TR), das die Vorgabe des Suchmusters (QY) erfüllt.
  8. Suchvorrichtung (SVOR) gemäß Anspruch 7, das ferner die zweite Einheit (E2) derart ausgebildet ist, bei dem Durchsuchen der Datenbank (DB) zur Ermittlung der Datenbankabfrage diejenigen Tripel zu berücksichtigen, die eine Pfaddistanz von maximal der in dem Suchmuster (QY) angegebenen Pfaddistanz (DIST) zu dem in dem Suchmuster (QY) vorgegebenen Knoten (AA) aufweisen.
  9. Suchvorrichtung (SVOR) gemäß Anspruch 7 oder 8, das ferner die zweite Einheit (E2) derart ausgebildet ist, bei dem Durchsuchen der Datenbank (DB) zur Ermittlung der Datenbankabfrage diejenigen Tripel zu berücksichtigen, die eine Pfaddistanz von genau der in dem Suchmuster (QY) angegebenen Pfaddistanz (DIST) zu dem in dem Suchmuster (QY) vorgegebenen Knoten (AA) aufweisen.
  10. Suchvorrichtung (SVOR) gemäß einem der Ansprüche 7 bis 9, das ferner die zweite Einheit (E4) derart ausgebildet ist, dass ein Wert Null für die Pfaddistanz (DIST) in dem Suchmuster (QY) derart verarbeitbar ist, dass diese Pfaddistanz (DIST) zumindest auf eine maximale in der Datenbank (DB) vorkommende Pfaddistanz (DISmax) einstellbar ist.
DE102009017082A 2009-04-15 2009-04-15 Verfahren und Vorrichtung zum Generieren einer Datenbank für eine Datenbankabfrage, sowie ein Suchverfahren und eine Suchvorrichtung zur Datenbankabfrage Ceased DE102009017082A1 (de)

Priority Applications (6)

Application Number Priority Date Filing Date Title
DE102009017082A DE102009017082A1 (de) 2009-04-15 2009-04-15 Verfahren und Vorrichtung zum Generieren einer Datenbank für eine Datenbankabfrage, sowie ein Suchverfahren und eine Suchvorrichtung zur Datenbankabfrage
KR1020117027210A KR101662561B1 (ko) 2009-04-15 2010-03-23 Rdf 데이터베이스 질의를 위한 rdf 데이터베이스를 생성하기 위한 방법 및 디바이스, 및 rdf 데이터베이스 질의를 위한 검색 방법 및 검색 디바이스
US13/264,676 US9213738B2 (en) 2009-04-15 2010-03-23 Method and device for generating an RDF database for an RDF database query and a search method and a search device for the RDF database query
PCT/EP2010/053752 WO2010118931A1 (de) 2009-04-15 2010-03-23 Verfahren und vorrichtung zum generieren einer rdf-datenbank für eine rdf-datenbankabfrage, sowie ein suchverfahren und eine suchvorrichtung zur rdf-datenbankabfrage
EP10712921A EP2419840A1 (de) 2009-04-15 2010-03-23 Verfahren und vorrichtung zum generieren einer rdf-datenbank für eine rdf-datenbankabfrage, sowie ein suchverfahren und eine suchvorrichtung zur rdf-datenbankabfrage
CN201080016904.3A CN102395968B (zh) 2009-04-15 2010-03-23 用于为rdf数据库查询生成rdf数据库的方法和设备以及用于rdf数据库查询的检索方法和检索设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102009017082A DE102009017082A1 (de) 2009-04-15 2009-04-15 Verfahren und Vorrichtung zum Generieren einer Datenbank für eine Datenbankabfrage, sowie ein Suchverfahren und eine Suchvorrichtung zur Datenbankabfrage

Publications (1)

Publication Number Publication Date
DE102009017082A1 true DE102009017082A1 (de) 2010-11-04

Family

ID=42124486

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102009017082A Ceased DE102009017082A1 (de) 2009-04-15 2009-04-15 Verfahren und Vorrichtung zum Generieren einer Datenbank für eine Datenbankabfrage, sowie ein Suchverfahren und eine Suchvorrichtung zur Datenbankabfrage

Country Status (6)

Country Link
US (1) US9213738B2 (de)
EP (1) EP2419840A1 (de)
KR (1) KR101662561B1 (de)
CN (1) CN102395968B (de)
DE (1) DE102009017082A1 (de)
WO (1) WO2010118931A1 (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8683370B2 (en) 2010-03-01 2014-03-25 Dundas Data Visualization, Inc. Systems and methods for generating data visualization dashboards
CA2754520A1 (en) 2010-10-07 2012-04-07 Dundas Data Visualization, Inc. Systems and methods for dashboard image generation
CA2737148A1 (en) 2011-01-06 2012-07-06 Dundas Data Visualization, Inc. Methods and systems for providing a discussion thread to key performance indicator information
KR102104496B1 (ko) * 2013-09-06 2020-04-24 삼성전자주식회사 데이터 검색 방법 및 장치
US10162855B2 (en) 2014-06-09 2018-12-25 Dundas Data Visualization, Inc. Systems and methods for optimizing data analysis
US9953065B2 (en) 2015-02-13 2018-04-24 International Business Machines Corporation Method for processing a database query
CN105955999B (zh) * 2016-04-20 2019-04-23 华中科技大学 一种大规模RDF图的ThetaJoin查询处理方法
US10360240B2 (en) 2016-08-08 2019-07-23 International Business Machines Corporation Providing multidimensional attribute value information
US10311057B2 (en) 2016-08-08 2019-06-04 International Business Machines Corporation Attribute value information for a data extent
EP3545434B1 (de) * 2016-11-23 2021-09-08 Carrier Corporation Gebäudeverwaltungssystem mit semantik-aktiviertem gebäudesystemdatenzugriff
KR101997491B1 (ko) * 2017-09-07 2019-07-08 호서대학교 산학협력단 모바일 기기로 구현되는 이미지 어노테이션 방법
KR20210033770A (ko) * 2019-09-19 2021-03-29 삼성전자주식회사 지식 그래프에 기초하여 콘텐트를 제공하는 방법 및 장치

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020059566A1 (en) * 2000-08-29 2002-05-16 Delcambre Lois M. Uni-level description of computer information and transformation of computer information between representation schemes
US20020174087A1 (en) * 2001-05-02 2002-11-21 Hao Ming C. Method and system for web-based visualization of directed association and frequent item sets in large volumes of transaction data
AU2002343740A1 (en) * 2001-11-16 2003-06-10 California Institute Of Technology Data compression method and system
US7702725B2 (en) * 2004-07-02 2010-04-20 Hewlett-Packard Development Company, L.P. Digital object repositories, models, protocol, apparatus, methods and software and data structures, relating thereto
EP1752919A1 (de) * 2005-07-29 2007-02-14 Amadeus s.a.s Verfahren und System zur Erzeugung von aktuellen Reisegebühren
US20080033993A1 (en) 2006-08-04 2008-02-07 International Business Machines Corporation Database Access Through Ontologies With Semi-Automatic Semantic Mapping
KR100820746B1 (ko) * 2007-01-22 2008-04-11 조선대학교산학협력단 온톨로지를 이용한 정보의 브라우징 시스템 및 방법
US7890518B2 (en) * 2007-03-29 2011-02-15 Franz Inc. Method for creating a scalable graph database
US8244772B2 (en) * 2007-03-29 2012-08-14 Franz, Inc. Method for creating a scalable graph database using coordinate data elements
US20100241644A1 (en) * 2009-03-19 2010-09-23 Microsoft Corporation Graph queries of information in relational database
US9031933B2 (en) * 2013-04-03 2015-05-12 International Business Machines Corporation Method and apparatus for optimizing the evaluation of semantic web queries

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
"Resource Description Framework", http://en.wikipedia.org/wiki/Resource_Description_Framework, Stand 15.04.2009
"SPARQL Protocol and RDF Query Language", http://en.wikipedia.org/wiki/SPARQL, Stand 15.04.2009
"Web Ontology Language", http://en.wikipedia.org/wiki/Web_Ontology_Language, Stand 15.04.2009
Standard RDF/OWL

Also Published As

Publication number Publication date
US9213738B2 (en) 2015-12-15
KR101662561B1 (ko) 2016-10-06
CN102395968A (zh) 2012-03-28
CN102395968B (zh) 2015-10-07
EP2419840A1 (de) 2012-02-22
KR20120022957A (ko) 2012-03-12
WO2010118931A1 (de) 2010-10-21
US20120041974A1 (en) 2012-02-16

Similar Documents

Publication Publication Date Title
DE102009017082A1 (de) Verfahren und Vorrichtung zum Generieren einer Datenbank für eine Datenbankabfrage, sowie ein Suchverfahren und eine Suchvorrichtung zur Datenbankabfrage
DE112015003406B4 (de) Datenherkunftssummierung
DE202014010893U1 (de) Rufwegsucher
DE112015005728B4 (de) Automatisches Auffinden von Konfigurationselementen
DE102016223193A1 (de) Verfahren und Vorrichtung zum Komplettieren eines Wissensgraphen
DE102017111438A1 (de) Api-lernen
DE102016125767A1 (de) Entdeckung einer verbundenen Entität
DE112018006345T5 (de) Abrufen von unterstützenden belegen für komplexe antworten
DE112018005725T5 (de) Daten-deidentifikation auf der grundlage eines erkennens von zulässigen konfigurationen für daten-deidentifikationsprozesse
DE112020000227T5 (de) Maschinelles lernen eines computermodells auf grundlage von korrelationenvon trainingsdaten mit leistungstrends
DE112018005616T5 (de) Blockweise extraktion von dokumentmetadaten
DE102014112983A1 (de) Aktive Wissenslenkung beruhend auf Dokumententiefenanalyse
DE202017107393U1 (de) Vorhersagen eines Suchmaschinen-Einordnungssignalwerts
KR101987915B1 (ko) 자연어 질의로부터 지식 베이스에 대한 쿼리의 생성에 사용되는 템플릿을 생성하는 시스템 및 이를 포함하는 질의 응답 시스템
DE112012003541T5 (de) Automatische Erkennung von Elementlisten innerhalb einer Webseite
DE112008004025T5 (de) Analysieren von Ereignissen
DE112020000927T5 (de) Verwalten sensibler daten
DE102016100696A1 (de) Datensuche und Operator zum Ausschließen ungewünschter Ergebnisse phonetischer Suchen
DE102005008803A1 (de) Verfahren und Computereinheit zum Ermitteln von Computer-Servicenamen
DE112016003235T5 (de) Ausgangseffizienzoptimierung in Produktionssystemen
DE112010004914T5 (de) Indexieren von Dokumenten
DE112021000338T5 (de) Auslagern der statistikerfassung
DE112018002626T5 (de) Verfahren und Systeme zur optimierten visuellen Zusammenfassung von Sequenzen mit zeitbezogenen Ereignisdaten
DE202013012665U1 (de) Methode zur Implementierung von strukturierten und unstrukturierten Daten in XML-Dokumenten
DE102017122489A1 (de) Knoten in einem gerichteten azyklischen Graphen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final