DE112021003273T5 - Direktes datenladen von durch middleware generierten datensätzen - Google Patents

Direktes datenladen von durch middleware generierten datensätzen Download PDF

Info

Publication number
DE112021003273T5
DE112021003273T5 DE112021003273.9T DE112021003273T DE112021003273T5 DE 112021003273 T5 DE112021003273 T5 DE 112021003273T5 DE 112021003273 T DE112021003273 T DE 112021003273T DE 112021003273 T5 DE112021003273 T5 DE 112021003273T5
Authority
DE
Germany
Prior art keywords
dbms
writes
memory
internal
middleware
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.)
Pending
Application number
DE112021003273.9T
Other languages
English (en)
Inventor
Hiroshi Horii
Mikio Takeuchi
Rina Inque
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112021003273T5 publication Critical patent/DE112021003273T5/de
Pending legal-status Critical Current

Links

Images

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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/288Entity relationship models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • G06F16/152File search processing using file content signatures, e.g. hash values
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • 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/21Design, administration or maintenance of databases
    • G06F16/217Database tuning
    • 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/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24549Run-time optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Ein durch einen Computer umgesetztes Verfahren wird zum Reduzieren eines Datenlade-Overheads von Middleware dargestellt, um direktes Datenladen in ein Datenbankverwaltungssystem (DBMS) zu erleichtern. Das Verfahren umfasst während des Datenladens ein Senden von externen Schreibvorgängen an ein DBMS auf Arbeitsspeichergrundlage, wenn entsprechende interne Schreibvorgänge für Knoten bestimmt sind, ein Exportieren aller externen Schreibvorgänge in ein DBMS auf Datenträgergrundlage als eine Exportdatei, und ein Senden eines externen Lesevorgangs für Knoten zu einem DBMS im Arbeitsspeicher, wenn die Middleware Daten anfordert. Das Verfahren umfasst ferner am Ende des Datenladens ein Generieren von Dateien für Rohdaten des DBMS auf Datenträgergrundlage aus der Exportdatei und ein Senden der generierten Rohdateien an das DBMS auf Datenträgergrundlage.

Description

  • HINTERGRUND
  • Die vorliegende Erfindung betrifft allgemein Datenbankverwaltungssysteme und insbesondere direktes Datenladen von durch Middleware generierten Datensätzen in Datenbankverwaltungssysteme.
  • Die Fähigkeit, auf dem heute zunehmend wettbewerbsorientierteren Markt schnell und entschieden zu handeln, ist für den Erfolg von Organisationen wichtig. Das Volumen an Informationen, das Unternehmen zur Verfügung steht, nimmt schnell zu und ist häufig erdrückend. Diejenigen Organisationen, die diese massiven Datenmengen effektiv und effizient verwalten und die Informationen verwenden, um geschäftliche Entscheidungen zu treffen, verschaffen sich auf dem Markt einen Wettbewerbsvorteil. Ein derartiger Wettbewerbsvorteil kann durch Verwenden eines Datenbankverwaltungssystems (DBMS) erzielt werden, das große Datenvolumen zum Unterstützen von verschiedenen Arbeitslasten und heterogenen Anwendungen speichert. Das DBMS ist für geschäftliche Transaktionsverarbeitung und Entscheidungsfindung von Vorteil und kann Strategien enthalten, die eine hohe Verfügbarkeit der Daten unterstützen.
  • Das DBMS ist ein Datenbankprogramm, das ein Standardverfahren zum Katalogisieren, Abrufen und Ausführen von Abfragen von Daten verwendet. Das DBMS verwaltet eingehende Daten, organisiert die Daten und stellt Möglichkeiten für ein Modifizieren oder Extrahieren von Daten durch Benutzer oder andere Programme bereit. Das DBMS stellt eine Abfragesprache und einen Report Writer bereit, der Benutzern ein interaktives Abfragen der relationalen Datenbank ermöglicht. Diese wesentlichen Komponenten bieten Benutzern nach Bedarf Zugriff auf alle Verwaltungsinformationen. Das DBMS wendet eingegebenen Text auf die Datenbank als Kriterien zum Identifizieren und Melden von Datensätzen in der Datenbank an, die den Kriterien entsprechen. Ein Eingeben des Texts in die Felder des DBMS erfordert, dass der Benutzer das DBMS selbst und wie das DBMS die Daten in der Datenbank darstellt versteht. Zum Beispiel muss der Benutzer für einen bestimmten Suchbegriff wissen, welches Feld in dem DBMS für ein Suchen nach diesem Begriff geeignet ist. Für eine Suchabfrage mit mehreren Suchbegriffen muss der Benutzer mit mehreren Feldern in dem DBMS vertraut sein und wissen, wie diese Felder interagieren, um die Suche zu begrenzen oder anderweitig zu definieren. Außerdem muss der Benutzer die hierarchische Struktur zwischen Datenbanktabellen und den Schlüsseln zum Verknüpfen der Tabellen kennen.
  • Ein gemeinsames Ziel von Datenbankverwaltungssystemen besteht darin, in Bezug auf Transaktionsdurchsatz und Transaktionslatenz eine hohe Leistung bereitzustellen, um Hardware-Kosten und Wartezeit zu minimieren und die Anzahl von Transaktionen pro Zeiteinheit zu erhöhen. Selbst mit großen Investitionen in Hardware ist ein Erzielen der gewünschten Leistung oft kostspielig und manchmal nicht möglich. Ein weiteres gemeinsames Ziel von Datenbankverwaltungssystemen besteht darin, die Komplexität in Bezug auf den Entwicklungsprozess von Anwendungen zu reduzieren und somit Zeit und Geld zu sparen sowie das Fehlerrisiko zu reduzieren.
  • Allerdings werden herkömmliche Datenbankverwaltungssysteme auf Grundlage der Annahme aufgebaut, dass Datenladen eine „einmalige Aktion“ ist. Datenladen wird als ein Offline-Prozess außerhalb des kritischen Pfads betrachtet, wobei der Benutzer ein Schema definiert und den Großteil der Daten in „einem Durchgang“ lädt, bevor irgendwelche Abfragen weitergeleitet werden. Wenn diese architekturgebundene Auslegungsannahme mit dem explosionsartigen Datenwachstum zusammentrifft, ist das Ergebnis das Aufkommen von Datenladen als Engpass in der Datenanalyse-Pipeline von Datenbankverwaltungssystemen.
  • Dennoch müssen für einige Analysen Daten vorab in das DBMS geladen werden. Middleware kann von Vorteil sein, wenn ein DBMS eine einfache Anwendungsprogrammierschnittstelle (API) für Analysen bereitstellt. Allerdings kann Middleware auch Overheads darstellen, wenn ein Datenladen stattfindet. Somit kann ein Datenladen in Datenbankverwaltungssystemen zu Engpässen führen. Daher sind Ansätze notwendig, um ein Datenladen in ein DBMS zu reduzieren.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Gemäß einer Ausführungsform wird ein Verfahren zum Reduzieren eines Datenlade-Overheads von Middleware bereitgestellt, um direktes Datenladen in ein Datenbankverwaltungssystem (DBMS) zu erleichtern. Das Verfahren umfasst während des Datenladens ein Senden von externen Schreibvorgängen an ein DBMS auf Arbeitsspeichergrundlage, wenn entsprechende interne Schreibvorgänge für Knoten bestimmt sind, ein Exportieren aller externen Schreibvorgänge in ein DBMS auf Datenträgergrundlage als eine Exportdatei, und ein Senden eines externen Lesevorgangs für Knoten zu einem DBMS im Arbeitsspeicher, wenn für die Middleware Daten erforderlich sind. Das Verfahren umfasst ferner am Ende des Datenladens ein Generieren von Dateien für Rohdaten des DBMS auf Datenträgergrundlage aus der Exportdatei und ein Senden der generierten Rohdateien an das DBMS auf Datenträgergrundlage.
  • Gemäß einer weiteren Ausführungsform wird ein System zum Reduzieren eines Datenlade-Overheads von Middleware bereitgestellt, um direktes Datenladen in ein Datenbankverwaltungssystem (DBMS) zu erleichtern. Das System umfasst einen Arbeitsspeicher und einen oder mehrere Prozessoren, die in Datenaustausch mit dem Arbeitsspeicher stehen, der konfiguriert ist, während des Datenladens externe Schreibvorgänge an ein DBMS auf Arbeitsspeichergrundlage zu senden, wenn entsprechende interne Schreibvorgänge für Knoten bestimmt sind, alle externen Schreibvorgänge zu einem DBMS auf Datenträgergrundlage als eine Exportdatei zu exportieren, und einen externen Lesevorgang für Knoten an ein DBMS im Arbeitsspeicher zu senden, wenn für die Middleware Daten erforderlich sind. Das System generiert ferner am Ende des Datenladens Dateien für Rohdaten des DBMS auf Datenträgergrundlage aus der Exportdatei und sendet die generierten Rohdateien an das DBMS auf Datenträgergrundlage.
  • Gemäß noch einer weiteren Ausführungsform wird ein nicht flüchtiges, durch einen Computer lesbares Speichermedium bereitgestellt, das ein durch einen Computer lesbares Programm zum Reduzieren eines Datenlade-Overheads von Middleware aufweist, um direktes Datenladen in ein Datenbankverwaltungssystem (DBMS) zu erleichtern. Das nicht flüchtige, durch einen Computer lesbare Speichermedium führt während des Datenladens die Schritte zum Senden von externen Schreibvorgängen an ein DBMS auf Arbeitsspeichergrundlage durch, wenn entsprechende interne Schreibvorgänge für Knoten bestimmt sind, zum Exportieren aller externen Schreibvorgänge in ein DBMS auf Datenträgergrundlage als eine Exportdatei, und zum Senden eines externen Lesevorgangs für Knoten zu einem DBMS im Arbeitsspeicher, wenn für die Middleware Daten erforderlich sind. Das nicht flüchtige, durch einen Computer lesbare Speichermedium führt am Ende des Datenladens die Schritte zum Generieren von Dateien für Rohdaten des DBMS auf Datenträgergrundlage aus der Exportdatei und zum Senden der generierten Rohdateien an das DBMS auf Datenträgergrundlage durch.
  • Gemäß einer Ausführungsform wird ein Verfahren zum Reduzieren eines Datenlade-Overheads von Middleware bereitgestellt, um direktes Datenladen in ein Datenbankverwaltungssystem (DBMS) zu erleichtern. Das Verfahren umfasst Empfangen eines internen Schreibvorgangs in einer Exporterweiterung der Middleware, Bestimmen, ob der interne Schreibvorgang für Knoten bestimmt ist, Senden des internen Schreibvorgangs an ein DBMS im Arbeitsspeicher, wenn der interne Schreibvorgang für Knoten bestimmt ist, und Anhängen des internen Schreibvorgangs an eine Wiederherstellungsdatei.
  • Wenn in einem bevorzugten Aspekt der interne Schreibvorgang nicht für Knoten bestimmt ist, wird der interne Schreibvorgang an eine Exportdatei angehängt.
  • Gemäß einer weiteren Ausführungsform wird ein Verfahren zum Reduzieren eines Datenlade-Overheads von Middleware bereitgestellt, um direktes Datenladen in ein Datenbankverwaltungssystem (DBMS) zu erleichtern. Das Verfahren umfasst Empfangen eines internen Lesevorgangs in einer Exporterweiterung der Middleware, Senden des internen Schreibvorgangs an ein DBMS im Arbeitsspeicher, um ein Ergebnis zu empfangen, Bestimmen, ob das Ergebnis einen Datensatz umfasst, und wenn das Ergebnis frei von Datensätzen ist, Senden des internen Lesevorgangs zu einem DBMS auf Datenträgergrundlage.
  • Wenn in einem bevorzugten Aspekt das Ergebnis einen Datensatz umfasst, wird das Ergebnis an einen Anrufer zurückgegeben.
  • Die Vorteile der vorliegenden Erfindung umfassen ein Reduzieren von Datenladen durch Middleware. Die Vorteile der vorliegenden Erfindung umfassen ferner eine effizientere Nutzung der Zentraleinheit (CPU) und eine effizientere Nutzung der Eingabe/Ausgabe- (E/A) Bandbreite. Datenladen ist eine Vorabinvestition, die Datenbankverwaltungssysteme vornehmen müssen, um eine effiziente Abfrageausführung unterstützen zu können. In Anbetracht der Datenmenge, die heutzutage von Anwendungen gesammelt wird, ist es wichtig, den Datenlade-Overhead zu minimieren, um zu verhindern, dass Datenladen zu einem Engpass in der Datenanalyse-Pipeline wird. Dies führt zu einer höheren Speicherkapazität, einer schnelleren Verarbeitung und einer besseren Übertragungsgeschwindigkeit der unstrukturierten Daten. Weitere Vorteile umfassen höhere Qualität, reduzierte Kosten, deutlicheren Leistungsumfang, weniger Anwendungsfehler und weniger Datenfehler.
  • In einem bevorzugten Aspekt umfasst der Schritt des Sendens der externen Schreibvorhänge während des Datenladens ferner das Exportieren der internen Schreibvorgänge als eine Wiederherstellungsdatei.
  • In einem weiteren bevorzugten Aspekt werden an einem Beginn des Datenladens, wenn die Wiederherstellungsdatei vorhanden ist, die externen Schreibvorgänge in das DBMS im Arbeitsspeicher aus der Wiederherstellungsdatei generiert und die generierten externen Schreibvorgänge an das DBMS im Arbeitsspeicher gesendet.
  • In noch einem weiteren bevorzugten Aspekt umfasst der Schritt des Sendens des externen Lesevorgangs während des Datenladens ferner ein Senden des externen Lesevorgangs an das DBMS auf Datenträgergrundlage, wenn das DBMS im Arbeitsspeicher keinen abruft.
  • In noch einem weiteren bevorzugten Aspekt unterstützt eine Exporterweiterung der Middleware sowohl ein DBMS auf Datenträgergrundlage als auch ein DBMS auf Arbeitsspeichergrundlage.
  • In noch einem weiteren bevorzugten Aspekt verarbeitet eine Exporterweiterung der Middleware die internen Schreibvorgänge und die internen Lesevorgänge.
  • In noch einem weiteren bevorzugten Aspekt, wenn interne Schreibvorgänge nicht für Knoten bestimmt sind, werden die internen Schreibvorgänge an die Exportdatei angehängt.
  • Es ist anzumerken, dass die beispielhaften Ausführungsformen der vorliegenden Erfindung unter Bezugnahme auf verschiedene Anspruchsgegenstände beschrieben werden. Insbesondere werden einige Ausführungsformen unter Bezugnahme auf Ansprüche für einen Verfahrenstyp beschrieben, während andere Ausführungsformen unter Bezugnahme auf Ansprüche für einen Vorrichtungstyp beschrieben worden sind. Ein Fachmann wird jedoch dem Vorgenannten und der folgenden Beschreibung entnehmen, dass, sofern nichts anderes angegeben ist, zusätzlich zu jeder Kombination von Merkmalen, die zu einem Typ eines Anspruchsgegenstands gehören, auch jede Kombination zwischen Merkmalen, die sich auf verschiedene Anspruchsgegenstände beziehen, insbesondere zwischen Merkmalen der Ansprüche für einen Verfahrenstyp und Merkmalen der Ansprüche für einen Vorrichtungstyp, als in diesem Dokument zu beschreiben betrachtet werden.
  • Diese und weitere Merkmale und Vorteile werden aus der folgenden ausführlichen Beschreibung von entsprechenden veranschaulichenden Ausführungsformen offenkundig, die in Verbindung mit den begleitenden Zeichnungen gelesen werden sollte.
  • Figurenliste
  • Die Erfindung stellt in der folgenden Beschreibung von bevorzugten Ausführungsformen Details unter Bezugnahme auf die folgenden Figuren bereit, in denen:
    • 1 eine beispielhafte Middleware-Architektur für direktes Datenladen von durch Middleware generierten Datensätzen in Datenbankverwaltungssysteme (DBMS) gemäß einer Ausführungsform der vorliegenden Erfindung ist;
    • 2 ein beispielhafter Ablaufplan ist, der eine Methodik beim Empfangen eines internen Schreibvorgangs gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
    • 3 ein beispielhafter Ablaufplan ist, der eine Methodik beim Empfangen eines internen Lesevorgangs gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
    • 4 ein beispielhafter Ablaufplan ist, der eine Methodik zum Starten einer Initialisierung einer Exporterweiterung gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
    • 5 eine beispielhafte Middleware-Darstellung gemäß einer Ausführungsform der vorliegenden Erfindung ist;
    • 6 eine beispielhafte Darstellung ist, die einen Anforderungs-/Antwort-Zyklus gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
    • 7 eine beispielhafte JanusGraph-Architektur gemäß einer Ausführungsform der vorliegenden Erfindung ist;
    • 8 ist ein beispielhaftes Verarbeitungssystem gemäß einer Ausführungsform der vorliegenden Erfindung ist;
    • 9 ein Blockschaubild/Ablaufplan einer beispielhaften Cloud-Computing-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung ist;
    • 10 ein Blockschema von beispielhaften Abstraktionsmodellschichten gemäß einer Ausführungsform der vorliegenden Erfindung ist;
    • 11 ein Blockschaubild/Ablaufplan eines Verfahrens zum Anwenden der Middleware-Architektur von 1 mit Systemen/Einheiten/Infrastruktur des Internet Of Things (loT) gemäß einer Ausführungsform der vorliegenden Erfindung ist;
    • 12 ein Blockschaubild/Ablaufplan von beispielhaften loT-Sensoren ist, die zum Sammeln von Daten/Informationen in Bezug auf die Middleware-Architektur von 1 gemäß einer Ausführungsform der vorliegenden Erfindung verwendet werden; und
    • 13 ein Blockschaubild/Ablaufplan eines beispielhaften Verfahrens für direktes Datenladen von durch Middleware generierten Datensätzen in das DBMS gemäß einer Ausführungsform der vorliegenden Erfindung ist.
  • Gleiche oder ähnliche Bezugszeichen stellen in den Zeichnungen durchgängig dieselben oder ähnliche Elemente dar.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführungsformen gemäß der vorliegenden Erfindung stellen Verfahren und Einheiten zum Nutzen von direktem Datenladen von durch Middleware generierten Datensätzen in Datenbankverwaltungssysteme (DBMS) bereit. Ein DBMS ist eine Sammlung von untereinander verbundenen Daten und eines Satzes von Programmen zum Speichern und Zugreifen auf diese Daten auf eine einfache und effiziente Weise. Datenbanksysteme werden für große Datenmengen entwickelt. Beim Umgang mit großen Datenmengen müssen zwei Dinge optimiert werden, die Datenspeicherung und der Datenabruf. Unter Datenladen ist der Prozess zu verstehen, der transformierte Daten aufnimmt und die transformierten Daten lädt, wobei Benutzer auf derartige transformierte Daten zugreifen können. Datenladen wurde als eine „einmalige Aktion“ betrachtet, das heißt ein Offline-Prozess außerhalb des kritischen Pfads der Abfrageausführung. Die Architektur des DBMS ist auf diese Annahme ausgerichtet. Allerdings hat die Geschwindigkeit, in der Daten heutzutage erzeugt und gesammelt werden, die Annahme einer „einmaligen Aktion“ zunichte gemacht und hat Datenladen in einen Engpass der Datenanalyse-Pipeline verwandelt.
  • Die beispielhaften Ausführungsformen der vorliegenden Erfindung gehen vorteilhafterweise davon aus, dass Middleware eine interne Darstellung einer Aktualisierung (interner Schreibvorgang) in einen oder mehrere Aktualisierungsbefehle (externer Schreibvorgang) für ein DBMS konvertiert. Außerdem kann ein interner Schreibvorgang für Knoten vorteilhafterweise beim Datenladen identifiziert werden, Middleware kann vorteilhafterweise ein DBMS auf Datenträgergrundlage und Arbeitsspeichergrundlage unterstützen, und ein DBMS auf Datenträgergrundlage stellt vorteilhafterweise eine Möglichkeit bereit, Dateien für seine Rohdaten direkt hinzuzufügen.
  • Die beispielhaften Ausführungsformen der vorliegenden Erfindung nutzen vorteilhafterweise eine Middleware-Erweiterung, die ein DBMS sowohl auf Datenträgergrundlage als auch auf Arbeitsspeichergrundlage verwaltet. Während des Datenladens sendet die Erweiterung externe Schreibvorgängen an das DBMS auf Arbeitsspeichergrundlage, wenn entsprechende interne Schreibvorgänge für Knoten bestimmt sind, exportiert die internen Schreibvorgänge als eine Datei (Wiederherstellungsdatei), exportiert alle externen Schreibvorgänge in ein DBMS auf Datenträgergrundlage als eine Datei (Exportdatei), und sendet einen externen Lesevorgang für Knoten zu dem DBMS im Arbeitsspeicher, wenn für die Middleware Daten erforderlich sind/angefordert werden. In einer weiteren Option sendet die Erweiterung einen externen Lesevorgang an das DBMS auf Datenträgergrundlage, wenn das DBMS im Arbeitsspeicher keinen abruft. Am Ende des Datenladens generiert die Erweiterung oder die andere Komponente vorteilhafterweise Dateien für Rohdaten des DBMS auf Datenträgergrundlage aus der Exportdatei und senden sie an das DBMS auf Datenträgergrundlage. In einer weiteren Ausführungsform generiert die Erweiterung am Beginn des Datenladens, wenn eine Wiederherstellungsdatei vorhanden ist, vorteilhafterweise externe Schreibvorgänge für das DBMS auf Arbeitsspeichergrundlage aus der Datei und sendet sie an das DBMS auf Arbeitsspeichergrundlage.
  • Es sollte klar sein, dass die vorliegende Erfindung mit Begriffen einer bestimmten veranschaulichenden Architektur beschrieben wird; jedoch können andere Architekturen, Strukturen, Substratmaterialien und Prozessmerkmale und Schritte/Blöcke innerhalb des Schutzumfangs von Aspekten der vorliegenden Erfindung verändert werden. Es ist anzumerken, dass bestimmte Merkmale aus Übersichtlichkeitsgründen nicht in allen Figuren gezeigt werden können. Dies soll keinesfalls als Einschränkung einer bestimmten Ausführungsform oder Veranschaulichung oder des Schutzumfangs der Ansprüche ausgelegt werden.
  • 1 ist eine beispielhafte Middleware-Architektur für direktes Datenladen von durch Middleware generierten Datensätzen in Datenbankverwaltungssysteme (DBMS) gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Die Middleware-Architektur 10 umfasst eine Datenlade-Anwendung 12, in der Knoten und Kanten von Graphen einer TinkerPop™-API 13 zugeführt werden. Ein Graph ist eine Struktur, die sich aus Knoten und Kanten zusammensetzt. Sowohl Knoten als auch Kanten können eine beliebige Anzahl von Schlüssel/Wert-Paaren aufweisen, die als Properties bezeichnet werden. Knoten bezeichnen diskrete Objekte wie zum Beispiel eine Person, einen Ort oder ein Ereignis. Kanten bezeichnen Beziehungen zwischen Knoten. Zum Beispiel könnte eine Person eine weitere Person kennen, an einem Ereignis teilgenommen haben und/oder vor Kurzem an einem bestimmten Ort gewesen sein. Properties drücken nicht relationale Informationen über die Knoten und Kanten aus. Beispielhafte Properties umfassen einen Scheitelpunkt mit einem Namen und einem Alter und eine Kante mit einem Zeitstempel und/oder einer Gewichtung. Insgesamt ist der vorgenannte Graph als ein Property-Graph bekannt und ist die grundlegende Datenstruktur von Apache TinkerPop™. Apache TinkerPop™ ist ein Framework für Graph-Datenverarbeitung sowohl für Graph-Datenbanken (OLTP) als auch Graph-Analysesysteme (OLAP).
  • Die TinkerPop™-API 13 kann mit einem JanusGraph 20 integriert werden. Der JanusGraph 20 ist eine skalierbare Graph-Datenbank, die zum Speichern und Abfragen von Graphen mit Hunderten von Milliarden von Knoten und Kanten optimiert ist, die über ein Cluster mit mehreren Maschinen verteilt sind. Der JanusGraph 20 umfasst einen JanusGraph-Core 22, einen ersten Speichermanager SPI 23 und einen zweiten Speichermanager SPI 40. Der JanusGraph-Core 22 stellt interne Lesevorgänge und interne Schreibvorgänge für den Speichermanager SPI 23 bereit. Der Speichermanager 23 umfasst vorteilhafterweise eine Exporterweiterung 24. Die Exporterweiterung 24 empfängt interne Schreibvorgänge und interne Lesevorgänge und verarbeitet sie. Die Exporterweiterung 24 ist eine Komponente, die die SPIs 23, 40 unterstützt. Die Exporterweiterung 24 koordiniert mehrere Erweiterungen, die die SPIs 23, 40 mit Funktionen zum Vorabladen und Exportieren von Daten unterstützen. Da die Exporterweiterung 24 nur die SPIs 23, 40 für ein Zugreifen auf andere Erweiterungen nutzt, ist keine Modifizierung am JanusGraph 20 notwendig.
  • Die Exporterweiterung 24 empfängt Wiederherstellungsdateien 30, und sendet während des Datenladens der Erweiterung externe Schreibvorgänge an das DBMS 44 auf Arbeitsspeichergrundlage, wenn die entsprechenden internen Schreibvorgänge während des Datenladens für Knoten bestimmt sind. Wenn der interne Schreibvorgang für Knoten bestimmt ist, wird der interne Schreibvorgang an die Erweiterung des DBMS 44 im Arbeitsspeicher gesendet. Wenn in einer ersten Option der interne Schreibvorgang für Knoten bestimmt ist, wird der interne Schreibvorgang vorteilhafterweise als eine Wiederherstellungsdatei 32 exportiert. Wenn in einer zweiten Option der interne Schreibvorgang nicht für Knoten bestimmt ist, exportiert das Verfahren vorteilhafterweise alle externen Schreibvorgänge in die Erweiterung des DBMS 42 auf Datenträgergrundlage als eine Exportdatei 34 und sendet einen externen Lesevorgang über einen Treiber 46 eines DBMS auf Datenträgergrundlage für Knoten an das DBMS im Arbeitsspeicher, wenn die Middleware dies erfordert/anfordert.
  • Die Datenbank 44 im Arbeitsspeicher beruht auf einem Datenbankverwaltungssystem, das seine Datensammlungen direkt in dem Arbeitsspeicher von einem oder mehreren Computern speichert. Das Verwenden eines Direktzugriffsspeichers (RAM) weist insofern einen entscheidenden Vorteil auf, als Datenbanken im Arbeitsspeicher bedeutend schnellere Zugriffsgeschwindigkeiten haben. Gespeicherte Daten sind somit sehr schnell verfügbar, wenn sie gebraucht werden. Der größte Verteil eines Verwendens von Datenbanken im Arbeitsspeicher sind die signifikant höheren Zugriffsgeschwindigkeiten, die sich aus der Verwendung des RAM ergeben. Dies führt auch zu einer schnelleren Datenanalyse. Allerdings ist die Optimierung der Datenanalyse nicht allein auf die reduzierte Abrufzeit zurückzuführen. DBs im Arbeitsspeicher ermöglichen vorteilhafterweise die Auswertung von strukturierten und unstrukturierten Daten von jedem System aus.
  • Am Ende des Datenladens generiert die Erweiterung 24 vorteilhafterweise Dateien 52 für Rohdaten des DBMS 56 auf Datenträgergrundlage aus der Exportdatei 34. Die Erweiterung 24 sendet vorteilhafterweise die Rohdateien 53 an das DBMS 56 auf Datenträgergrundlage über das DBMS-Werkzeug 54 auf Datenträgergrundlage, und stellt damit eine Möglichkeit zum direkten Hinzufügen von Dateien für seine Rohdaten durch Verwenden des DBMS auf Datenträgergrundlage bereit. Der Konverter 50 konvertiert vorteilhafterweise die Exportdatei 34 in Rohdateien 52.
  • 2 ist ein beispielhafter Ablaufplan, der eine Methodik beim Empfangen eines internen Schreibvorgangs gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht.
  • An einem Block 102 wird ein interner Schreibvorgang empfangen.
  • An einem Block 104 wird bestimmt, ob der interne Schreibvorgang mit Knoten in Beziehung steht.
  • Falls NEIN, fährt der Prozess mit einem Block 110 fort. Falls JA, fährt der Prozess mit einem Block 106 fort.
  • Am Block 106 wird der interne Schreibvorgang an die Erweiterung des DBMS im Arbeitsspeicher gesendet.
  • An einem Block 108 wird der interne Schreibvorgang an die Wiederherstellungsdatei angehängt, wenn der interne Schreibvorhang für Knoten bestimmt ist.
  • Am Block 110 wird der interne Schreibvorgang an die Exportdatei angehängt, wenn der interne Schreibvorhang nicht für Knoten bestimmt ist.
  • 3 ist ein beispielhafter Ablaufplan, der eine Methodik beim Empfangen eines internen Lesevorgangs gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht.
  • An einem Block 152 wird ein interner Lesevorgang empfangen.
  • An einem Block 154 wird der interne Lesevorgang an die Erweiterung des DBMS im Arbeitsspeicher gesendet und das Ergebnis wird empfangen.
  • An einem Block 156 wird bestimmt, ob das Ergebnis einen Datensatz umfasst.
  • Falls JA, fährt der Prozess mit einem Block 160 fort. Falls NEIN, fährt der Prozess mit einem Block 158 fort.
  • Am Block 158 wird der interne Lesevorgang an die Erweiterung des DBMS auf Datenträgergrundlage gesendet, und das Ergebnis wird empfangen.
  • Am Block 160 wird das Ergebnis an den Anrufer zurückgegeben.
  • 4 ist ein beispielhafter Ablaufplan, der eine Methodik beim Starten einer Initialisierung einer Exporterweiterung gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht.
  • In Bezug auf das Anhängen des internen Schreibvorgangs an die Wiederherstellungsdatei oder den Block 108 findet Folgendes statt.
  • An einem Block 182 wird mit der Initialisierung der Exporterweiterung begonnen.
  • An einem Block 184 wird bestimmt, ob die Wiederherstellungsdatei vorhanden ist.
  • Falls JA, fährt der Prozess mit einem Block 190 fort. Falls NEIN, fährt der Prozess mit einem Block 186 fort.
  • Am Block 186 werden alle internen Schreibvorgänge an die Erweiterung des DBMS im Arbeitsspeicher gesendet.
  • An einem Block 188 werden alle internen Schreibvorgänge in die neue Wiederherstellungsdatei kopiert.
  • Am Block 190 wird die Initialisierung der Exporterweiterung beendet.
  • 5 ist eine beispielhafte Middleware-Darstellung gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Middleware kann als der „Kitt“ beschrieben werden, der zwei separate, bereits vorhandene Software-Programme vereint. Im Allgemeinen kann Middleware eine Vielfalt von verschiedener, speziell konzipierter Software sein. Middleware ist ein Typ von Software, der es Software-Entwicklern leichter macht, Datenübertragung und Eingabe/Ausgabe zwischen zwei Programmen umzusetzen, sodass sich Software-Entwickler auf den spezifischen Zweck ihrer Anwendung konzentrieren können. Middleware agiert fast wie eine Erweiterung von vorhandenen Betriebssystemen und unterstützt die Integration von Software zwischen Anwendungen und Diensten.
  • Middleware kann zum Verbinden zweier beliebiger Teile von Software verwendet werden. Middleware funktioniert, indem eine Datenübergabe zwischen den beiden ermöglicht wird. Ein Beispiel für die Verwendung von Middleware ist die Verwendung von Middleware zum Verbinden eines Datenbanksystems mit einem Web-Server. Dies ermöglicht dem Benutzer, Daten von der Datenbank durch Verwenden von Masken anzufordern, die auf einem Web-Browser angezeigt werden. Middleware ist Software, die allgemeine Dienste und Funktionen für Anwendungen außerhalb dessen bereitstellt, was durch das Betriebssystem angeboten wird. Datenverwaltung, Anwendungsdienste, Nachrichtenübermittlung, Authentifizierung und API-Verwaltung werden durch Middleware gemeinsam bearbeitet. Außerdem hilft Middleware Entwicklern dabei, Anwendungen effizienter zu erstellen. Middleware agiert als verbindende Struktur zwischen Anwendungen, Daten und Benutzern. Für Organisationen mit Multi-Cloud- und containerisierten Umgebungen ermöglicht Middleware eine kosteneffektive Entwicklung und Ausführung von Anwendungen nach Maß.
  • In einer Middleware-Darstellung 200 verbindet eine Middleware 210 vorteilhafterweise Systems of Engagement 220 mit Systems of Record 240. Die Systems of Engagement 220 können öffentliche Cloud-Systeme 222, mobile Systeme 224, Systeme des Internet of Things (loT) 226, Social-Media-Systeme 228, verbundene Unternehmen 230 und Websites 232 umfassen, sie sind aber nicht darauf beschränkt. Die Systems of Record können Dienste von privaten Clouds 242, Kundenbeziehungs-Management (CRM) 244, Servern 246, Datenbanken 248, Backoffice-Prozessen 250 und Anwendungsprogrammierschnittstellen (API) 252 umfassen, sie sind aber nicht darauf beschränkt.
  • 11 und 12 im Folgenden veranschaulichen eine praktische Anwendung in Bezug auf loT-Systeme 226, die vorteilhafterweise die Middleware 210 zum Verbinden mit Systems of Record 240 nutzen.
  • 6 ist eine beispielhafte Darstellung, die einen Anforderungs-/Antwort-Zyklus gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht.
  • In einer Darstellung 260 werden die Anforderungen 262 und die Antworten für die Anwendung 270 durch die Middleware 272 bearbeitet. Eine „Middleware“ 272 ist eine Funktion, die mit jeder Anforderung 262, bevor sie durch irgendeine Operation eines spezifischen Pfads verarbeitet wird, und ebenfalls mit jeder Antwort arbeitet, bevor sie zurückgegeben wird. Die Middleware 272 übernimmt jede Anforderung 262 im Zusammenhang mit der Anwendung 270. Die Middleware 272 kann anschließend etwas an diese Anforderung 262 ändern oder jeden erforderlichen Code ausführen. Anschließend übergibt die Middleware 272 die Anforderung 262, die durch den Rest der Anwendung 270 (durch einen Pfad-Vorgang) verarbeitet werden soll. Die Middleware 272 übernimmt anschließend die Antwort 264, die durch die Anwendung 270 (durch einen Pfad-Vorgang) generiert wurde. Die Middleware 272 kann etwas an dieser Antwort 264 ändern oder jeden erforderlichen Code ausführen. Anschließend gibt die Middleware 272 die Antwort 264 zurück.
  • 7 ist eine beispielhafte JanusGraph-Architektur gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Der JanusGraph ist eine skalierbare Datenbank eines Transaktions-Property-Graphen. Ein Property-Graph ist eine Zuordnung zwischen Entitäten (die als Knoten bezeichnet werden) nach ihren Beziehungen (die als Kanten bezeichnet werden). Property-Graph-Abfragen können mehrere Kanten und Knoten durchqueren, um die Verdeutlichung der Beziehungen zwischen Entitäten zu unterstützen. Der JanusGraph 20 ist somit eine skalierbare Graph-Datenbank, die den Vorteil aufweist, dass sie zum Speichern und Abfragen von Graphen mit Hunderten von Milliarden von Knoten und Kanten optimiert ist, die über ein Cluster mit mehreren Maschinen verteilt sind.
  • Die JanusGraph-Architektur 300 umfasst dem JanusGraph 310 zugeführte Anwendungen 302 und den Gremlin-Graph-Computer 330. Der Gremlin-Graph-Computer 330 tauscht Daten mit einer Big-Data-Plattform 335 aus.
  • Das Speicher-Backend 340 ist steckbar und unterstützt mindestens Cassandra, HBase, BerkeleyDB, Google BigTable und eine arbeitsspeicherinterne Speicheroption. Das Speicher-Backend 340 ist der Ort, an dem die Daten tatsächlich gespeichert sind. Aufgrund seiner Flexibilität, mit zahlreichen Datenbank-Engines zu arbeiten, weist das Speicher-Backend 340 den Vorteil auf, einem Benutzer die Auswahl einer Option zu ermöglichen, die von dem Benutzer bereits genutzt worden ist oder für die er das Fachwissen besitzt. Es gibt nur ein Speicher-Backend 340.
  • Als Nächstes werden für das externe Index-Backend 350 mindestens Elasticsearch, Solr, und Lucene unterstützt. Das externe Index-Backend 350 ist optional, aber notwendig für ein Indexieren auf mehreren Properties, vollständigen Text- und Zeichenketten-Suchen und Geo-Mapping. Wiederum gibt es nur ein externes Index-Backend 350.
  • Nach den Speicher-Backends 340, 350 stellt die TinkerPop™-API 321 im Gremlin-Feld 310 dar, wie ein Benutzer mit dem Graphen interagieren kann. Er ist als die Gremlin-Konsole bekannt und ist ein Beispiel für eine Anwendung, die die TinkerPop™-API 321 aufruft. Dabei handelt es sich um die Befehlszeilen-Schnittstelle, die für ein Interagieren mit JanusGraph verwendet wird.
  • Abschließend stellt 310 den JanusGraph-Server dar. Dieses Element wird mit einem Skript mit der Bezeichnung gremlin_server.sh ausgeführt. Der Gremlin-Server ist ein Teil des Apache TinkerPop™-Projekts. JanusGraph weist im Wesentlichen den Vorteil auf, als Plugin für den Gremlin-Server zu arbeiten und gibt für den Gremlin-Server an, wie und wo Graph-Daten gespeichert werden sollen. Der JanusGraph-Server 310 umfasst vorteilhafterweise eine Verwaltungs-API 320, eine interne API-Schicht 322, eine Datenbankschicht 324, eine Speicher- und Index-Schnittstellenschicht 326 sowie eine OLAP-Eingabe/Ausgabe- (E/A) Schnittstelle 328.
  • Gremlin ist die Abfragesprache für Titan, die zum Abrufen von Daten aus dem und Modifizieren von Daten in dem Graph verwendet wird. Gremlin ist eine pfadorientierte Sprache, die kurz und prägnant komplexe Graph-Durchquerungen und Mutationsoperationen ausdrückt. Gremlin ist eine funktionale Sprache, in der traversale Operatoren miteinander verkettet sind, um pfadähnliche Ausdrücke zu bilden. Gremlin funktioniert sowohl für Online-Transaktionsverarbeitung (OLTP) auf Grundlage von Graph-Datenbanken als auch Online-Analyseverarbeitung (OLAP) auf Grundlage von Prozessoren auf Graph-Grundlage. Die Grundlage der Automaten- und funktionalen Sprache ermöglicht es Gremlin, imperatives und deklaratives Abfragen, Host-Sprachen-Agnostizismus, benutzerdefinierte domänenspezifische Sprachen, erweiterbare Compiler/Optimierer, Einzel- und Multimaschinen-Ausführungsmodelle und hybride Tiefen und Breiten-Auswertung selbstverständlich zu unterstützen.
  • Zusammengefasst gehen die beispielhaften Ausführungsformen der vorliegenden Erfindung vorteilhafterweise davon aus, dass Middleware eine interne Darstellung einer Aktualisierung (interner Schreibvorgang) in einen oder mehrere Aktualisierungsbefehle (externer Schreibvorgang) für ein DBMS konvertiert. Außerdem kann ein interner Schreibvorgang für Knoten vorteilhafterweise beim Datenladen identifiziert werden, Middleware kann vorteilhafterweise ein DBMS auf Datenträger-Grundlage und Arbeitsspeichergrundlage unterstützen, und ein DBMS auf Datenträgergrundlage stellt vorteilhafterweise eine Möglichkeit bereit, Dateien für seine Rohdaten direkt hinzuzufügen. Die beispielhaften Ausführungsformen der vorliegenden Erfindung nutzen vorteilhafterweise eine Middleware-Erweiterung, die ein DBMS sowohl auf Datenträgergrundlage als auch auf Arbeitsspeichergrundlage verwaltet. Während des Datenladens sendet die Erweiterung externe Schreibvorgängen an das DBMS auf Arbeitsspeichergrundlage, wenn ihre entsprechenden internen Schreibvorgänge für Knoten bestimmt sind, exportiert die internen Schreibvorgänge als eine Datei (Wiederherstellungsdatei), exportiert alle externen Schreibvorgänge auf ein DBMS auf Datenträgergrundlage als eine Datei (Exportdatei), und sendet einen externen Lesevorgang für Knoten zu einem DBMS im Arbeitsspeicher, wenn für die Middleware Daten erforderlich sind. In einer weiteren Option sendet die Erweiterung einen externen Lesevorgang an das DBMS auf Datenträgergrundlage, wenn das DBMS im Arbeitsspeicher keinen abruft. Am Ende des Datenladens generiert die Erweiterung oder die andere Komponente Dateien für Rohdaten des DBMS auf Datenträgergrundlage aus der Exportdatei und sendet sie an das DBMS auf Datenträgergrundlage. In einer weiteren Ausführungsform generiert die Erweiterung am Beginn des Datenladens, wenn eine Wiederherstellungsdatei vorhanden ist, externe Schreibvorgänge in das DBMS auf Arbeitsspeichergrundlage aus der Datei und sendet sie an das DBMS auf Arbeitsspeichergrundlage.
  • Die Vorteile der vorliegenden Erfindung umfassen ein Reduzieren von Datenladen durch Middleware. Die Vorteile der vorliegenden Erfindung umfassen ferner eine effizientere CPU-Nutzung und eine effizientere Nutzung der E/A-Bandbreite. Datenladen ist eine Vorabinvestition, die Datenbankverwaltungssysteme vornehmen müssen, um eine effiziente Abfrageausführung unterstützen zu können. In Anbetracht der Datenmenge, die von Anwendungen gesammelt wird, ist es wichtig, den Datenlade-Overhead zu minimieren, um zu verhindern, dass Datenladen zu einem Engpass in der Datenanalyse-Pipeline wird. Dies führt zu einer höheren Speicherkapazität, einer schnelleren Verarbeitung und einer besseren Übertragungsgeschwindigkeit der unstrukturierten Daten. Weitere Vorteile umfassen höhere Qualität, reduzierte Kosten, deutlicheren Leistungsumfang, weniger Anwendungsfehler und weniger Datenfehler.
  • 8 ist ein beispielhaftes Verarbeitungssystem zum Bearbeiten von Streaming-Algorithmen gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Unter folgender Bezugnahme auf 8 zeigt diese Figur eine Hardware-Konfiguration eines Datenverarbeitungssystems 600 gemäß einer Ausführungsform der vorliegenden Erfindung. Wie zu sehen ist, hat diese Hardware-Konfiguration mindestens einen Prozessor oder eine Zentraleinheit (CPU) 611. Die CPUs 611 sind über einen Systembus 612 mit einem Direktzugriffsspeicher (RAM) 614, einem Nur-Lese-Speicher (ROM) 616, einem Eingabe/Ausgabe- (E/A) Adapter 618 (zum Verbinden von Peripherie-Einheiten wie Festplatteneinheiten 621 und Bandlaufwerken 640 mit dem Bus 612), einem Benutzerschnittstellen-Adapter 622 (zum Verbinden einer Tastatur 624, einer Maus 626, einem Lautsprecher 628, einem Mikrofon 632 und/oder einer anderen Benutzerschnittstelleneinheit mit dem Bus 612), einem Datenübertragungsadapter 634 zum Verbinden des Systems 600 mit einem Datenverarbeitungsnetzwerk, dem Internet, einem Intranet, einem lokalen Netzwerk (LAN) usw. und einem Anzeigeadapter 636 zum Verbinden des Busses 612 mit einer Anzeigeeinheit 638 und/oder einem Drucker 639 (z.B. einem digitalen Drucker oder dergleichen) untereinander verbunden.
  • 9 ist ein Blockschaubild/Ablaufplan einer beispielhaften Cloud-Computing-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 9 ist ein Blockschaubild/Ablaufplan einer beispielhaften Cloud-Computing-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Obwohl diese Erfindung eine ausführliche Beschreibung von Cloud Computing enthält, sollte klar sein, dass die Umsetzung der hierin angeführten Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt ist. Vielmehr können Ausführungsformen der vorliegenden Erfindung gemeinsam mit jedem beliebigen Typ von jetzt bekannter oder später entwickelter Datenverarbeitungsumgebung umgesetzt werden.
  • Cloud Computing ist ein Dienstbereitstellungsmodell zum Ermöglichen eines problemlosen bedarfsgesteuerten Netzwerkzugriffs auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Arbeitsspeicher, Speicher, Anwendungen, virtuelle Maschinen und Dienste), die mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Dienstes schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Eigenschaften, mindestens drei Dienstmodelle und mindestens vier Nutzungsmodelle umfassen.
  • Die Eigenschaften sind wie folgt:
    • On-Demand Self-Service: Ein Cloud-Nutzer kann einseitig automatisch nach Bedarf für Datenverarbeitungsfunktionen wie Serverzeit und Netzwerkspeicher sorgen, ohne dass eine menschliche Interaktion mit dem Anbieter des Dienstes erforderlich ist.
    • Broad Network Access: Es sind Funktionen über ein Netzwerk verfügbar, auf die durch Standardmechanismen zugegriffen wird, welche die Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z.B. Mobiltelefone, Laptops und PDAs) unterstützen.
    • Resource Pooling: Die Datenverarbeitungsressourcen des Anbieters werden zusammengeschlossen, um mehreren Nutzern unter Verwendung eines Multi-Tenant-Modells zu dienen, wobei verschiedene physische und virtuelle Ressourcen dynamisch nach Bedarf zugewiesen und neu zugewiesen werden. Es gibt eine gefühlte Standortunabhängigkeit, da der Nutzer allgemein keine Kontrolle bzw. Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber in der Lage sein kann, einen Standort auf einer höheren Abstraktionsebene festzulegen (z.B. Land, Staat oder Rechenzentrum).
    • Rapid Elasticity: Funktionen können für eine schnelle horizontale Skalierung (scale out) schnell und elastisch bereitgestellt werden, in einigen Fällen auch automatisch, und für ein schnelles Scale-in schnell freigegeben werden. Für den Nutzer erscheinen die für das Bereitstellen verfügbaren Funktionen häufig unbegrenzt, und sie können jederzeit in jeder beliebigen Menge gekauft werden.
    • Measured Service: Cloud-Systeme steuern und optimieren die Verwendung von Ressourcen automatisch, indem sie eine Messfunktion auf einer gewissen Abstraktionsebene nutzen, die für die Art von Dienst geeignet ist (z.B. Speicher, Verarbeitung, Bandbreite sowie aktive Benutzerkonten). Der Ressourcen-Verbrauch kann überwacht, gesteuert und gemeldet werden, wodurch sowohl für den Anbieter als auch für den Nutzer des verwendeten Dienstes Transparenz geschaffen wird.
  • Die Dienstmodelle sind wie folgt:
    • Software as a Service (SaaS): Die für den Nutzer bereitgestellte Funktion besteht darin, die in einer Cloud-Infrastruktur ausgeführten Anwendungen des Anbieters zu verwenden. Die Anwendungen sind über eine Thin-Client-Schnittstelle wie einen Web-Browser (z.B. eine auf dem Web beruhende eMail) von verschiedenen Client-Einheiten her zugänglich. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter das Netzwerk, Server, Betriebssysteme, Speicher bzw. sogar einzelne Anwendungsfunktionen, mit der möglichen Ausnahme von eingeschränkten benutzerspezifischen Anwendungskonfigurationseinstellungen.
    • Platform as a Service (PaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, durch einen Nutzer erstellte bzw. erhaltene Anwendungen, die unter Verwendung von durch den Anbieter unterstützten Programmiersprachen und Tools erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter Netzwerke, Server, Betriebssysteme bzw. Speicher, hat aber die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen des Application Hosting Environment.
    • Infrastructure as a Service (laaS): Die dem Nutzer bereitgestellte Funktion besteht darin, Verarbeitung, Speicher, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Nutzer in der Lage ist, beliebige Software einzusetzen und auszuführen, zu der Betriebssysteme und Anwendungen gehören können. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, hat aber die Kontrolle über Betriebssysteme, Speicher, eingesetzte Anwendungen und möglicherweise eingeschränkte Kontrolle über ausgewählte Netzwerkkomponenten (z.B. Host-Firewalls).
  • Die Nutzungsmodelle sind wie folgt:
    • Private Cloud: Die Cloud-Infrastruktur wird ausschließlich für eine Organisation betrieben. kann von der Organisation oder einer Drittpartei verwaltet werden und kann innerhalb oder außerhalb von Geschäftsräumen vorhanden sein.
    • Community Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine bestimmte Community, die gemeinsame Problemstellungen hat (z.B. Berücksichtigung von Zielsetzung, Sicherheitsanforderungen, Richtlinien und Konformität). Sie kann von den Organisationen oder einer Drittpartei verwaltet werden und kann innerhalb oder außerhalb von Geschäftsräumen vorhanden sein.
    • Public Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Industriegruppe zur Verfügung gestellt und gehört einer Organisation, die Cloud-Dienste verkauft.
    • Hybrid Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren Clouds (privat, Benutzergemeinschaft oder öffentlich), die zwar einzelne Einheiten bleiben, aber durch eine standardisierte oder proprietäre Technologie miteinander verbunden sind, die eine Daten- und Anwendungsportierbarkeit ermöglicht (z.B. Cloud-Zielgruppenverteilung für den Lastausgleich zwischen Clouds).
  • Eine Cloud-Computing-Umgebung ist dienstorientiert, wobei der Schwerpunkt auf Statusunabhängigkeit, geringer Kopplung, Modularität und semantischer Interoperabilität liegt. Im Mittelpunkt von Cloud Computing steht eine Infrastruktur, die ein Netzwerk von miteinander verbundenen Knoten enthält.
  • Unter folgender Bezugnahme auf 9 wird eine veranschaulichende Cloud-Computing-Umgebung 750 dargestellt, um Anwendungsfälle der vorliegenden Erfindung zu ermöglichen. Wie gezeigt, enthält die Cloud-Computing-Umgebung 750 einen oder mehrere Cloud-Computing-Knoten 710, mit denen lokale Datenverarbeitungseinheiten, die von Nutzern der Cloud verwendet werden, wie beispielsweise Personal Digital Assistant (PDA) oder Mobiltelefon 754A, Desktop-Computer 754B, Laptop-Computer 754C und/oder Fahrzeug-Computersystem 754N, Daten austauschen können. Die Knoten 710 können untereinander Daten austauschen. Sie können physisch oder virtuell in einem oder mehreren Netzwerken gruppiert sein (nicht gezeigt), wie beispielsweise Private, Community, Public oder Hybrid Clouds, wie hierin oben beschrieben, oder in einer Kombination davon. Damit hat die Cloud-Computing-Umgebung 750 die Möglichkeit, eine Infrastruktur, Plattformen und/oder Software als Dienste anzubieten, für die ein Cloud-Nutzer keinerlei Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Es sollte klar sein, dass die in 9 gezeigten Typen von Datenverarbeitungseinheiten 754A bis N nur zur Veranschaulichung dienen sollen, und dass die Datenverarbeitungsknoten 710 und die Cloud-Computing-Umgebung 750 mit jedem Typ einer computerisierten Einheit über jeden Typ von Netzwerk und/oder eine über ein Netzwerk adressierbare Verbindung (z.B. unter Verwendung eines Web-Browsers) Daten austauschen können.
  • 10 ein Blockschema von beispielhaften Abstraktionsmodellschichten gemäß einer Ausführungsform der vorliegenden Erfindung. Dabei sollte von Anfang an klar sein, dass die in 10 gezeigten Komponenten, Schichten und Funktionen lediglich zur Veranschaulichung dienen sollen und Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie dargestellt, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
  • Eine Hardware- und Software-Schicht 860 enthält Hardware- und Software-Komponenten. Zu Beispielen für Hardware-Komponenten zählen: Mainframes 861; Server auf Grundlage einer RISC- (Reduced Instruction Set Computer) Architektur 862; Server 863; Blade-Server 864; Speichereinheiten 865; und Netzwerke und vernetzte Komponenten 866. In einigen Ausführungsformen enthalten Software-Komponenten Software für Netzwerkanwendungsserver 867 und Datenbank-Software 868.
  • Eine Virtualisierungsschicht 870 stellt eine Abstraktionsschicht bereit, von der aus die folgenden beispielhaften virtuellen Entitäten bereitgestellt werden können: virtuelle Server 871; virtueller Speicher 872; virtuelle Netzwerke 873, einschließlich virtuelle private Netzwerke; virtuelle Anwendungen und Betriebssysteme 874; und virtuelle Clients 875.
  • In einem Beispiel kann eine Verwaltungsschicht 880 die im Folgenden beschriebenen Funktionen bereitstellen. Eine Ressourcenbereitstellung 881 sorgt für eine dynamische Beschaffung von Datenverarbeitungsressourcen und weiteren Ressourcen, die zum Ausführen von Aufgaben innerhalb der Cloud-Computing-Umgebung eingesetzt werden. Messung und Preisbestimmung 882 ermöglichen beim Einsatz von Ressourcen innerhalb der Cloud-Computing-Umgebung eine Kostenverfolgung und eine Abrechnung oder Rechnungsstellung für die Inanspruchnahme dieser Ressourcen. In einem Beispiel können diese Ressourcen Lizenzen für Anwendungssoftware umfassen. Eine Sicherheitsfunktion stellt eine Identitätsprüfung für Cloud-Nutzer und -Aufgaben sowie einen Schutz für Daten und andere Ressourcen bereit. Ein Benutzerportal 883 stellt den Zugang zur Cloud-Computing-Umgebung für Nutzer und Systemadministratoren bereit. Eine Service-Level- (Dienstgüte) Verwaltung 884 sorgt für Zuweisung und Verwaltung von Cloud-Computing-Ressourcen, sodass erforderliche Service-Levels eingehalten werden. Planung und Vertragserfüllung des Service Level Agreement (SLA) (Dienstgütevereinbarung) 885 stellen eine Vorab-Vereinbarung für und Beschaffung von Cloud-Computing-Ressourcen bereit, für die gemäß eines SLA eine zukünftige Anforderung erwartet wird.
  • Eine Arbeitslastenschicht 890 stellt Beispiele für eine Funktionalität bereit, für welche die Cloud-Computing-Umgebung genutzt werden kann. Zu Beispielen von Arbeitslasten und Funktionen, die von dieser Schicht aus bereitgestellt werden können, zählen: Zuordnung und Navigation 891; Software-Entwicklung und Lifecycle-Management 892; Bereitstellung von virtuellen Schulungen 893; Datenanalyseverarbeitung 894; Transaktionsverarbeitung 895; und direktes Datenladen 896.
  • 11 ist ein Blockschaubild/Ablaufplan eines Verfahrens zum Anwenden der Middleware-Architektur von 1 mit Systemen/Einheiten/Infrastruktur des Internet of Things (loT) gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Gemäß einigen Ausführungsformen der Erfindung wird ein Netzwerk durch Verwenden einer loT-Methodik umgesetzt. Zum Beispiel kann ein direktes Datenladen 902 beispielweise in tragbare, implantierbare oder aufnehmbare elektronische Einheiten und Sensoren des Internet of Things (loT) integriert werden. Die tragbaren, implantierbaren oder aufnehmbaren Einheiten können mindestens Gesundheits- oder Wellness-Überwachungseinheiten sowie Fitness-Einheiten umfassen. Die tragbaren, implantierbaren oder aufnehmbaren Einheiten können ferner mindestens implantierbare Einheiten, Smart-Uhren, Head-Mounted-Einheiten, Sicherheits- und Verhinderungseinheiten sowie Spiel- und Lifestyle-Einheiten umfassen. Die loT-Sensoren können mindestens in Hausautomatisierungs-Anwendungen, Automobilanwendungen, Benutzerschnittstellen-Anwendungen, Lifestyle- und/oder Unterhaltungsanwendungen, städtische und/oder Infrastrukturanwendungen, Spielzeuge, Gesundheitswesen-, Fitness-, Einzelhandel-Tags und/oder -Tracker, Plattformen und Komponenten usw. integriert werden. Das hierin beschriebene direkte Datenladen 902 kann in jeden Typ von elektronischen Einheiten für jeden Typ von Verwendung oder Anwendung oder Bedienung integriert werden.
  • loT-Systeme ermöglichen Benutzern, eine tiefgreifendere Automatisierung, Analyse und Integration in einem System zu erreichen. Das loT verbessert die Reichweite dieser Bereiche und ihre Genauigkeit. Das loT verwendet vorhandene und aufkommende Technologie zum Erfassen, Vernetzen und für Robotertechnik. Zu Merkmalen des loT zählen künstliche Intelligenz, Konnektivität, Sensoren, aktiver Umgang und Verwendung von kleinen Einheiten. In verschiedenen Ausführungsformen kann das direkte Datenladen 902 der vorliegenden Erfindung in eine Vielfalt von verschiedenen Einheiten und/oder Systemen integriert werden. Zum Beispiel kann das direkte Datenladen 902 in tragbare oder transportable elektronische Einheiten 904 integriert werden. Tragbare/transportable elektronische Einheiten 904 können implantierbare Einheiten 940 umfassen, wie zum Beispiel Smart Clothing 943. Tragbare/transportable Einheiten 904 können Smart-Uhren 942 sowie Smart-Schmuck 945 umfassen. Tragbare/transportable Einheiten 904 können ferner Fitness-Überwachungseinheiten 944, Gesundheits- und Wellness-Überwachungseinheiten 946, Head-Mounted-Einheiten 948 (z.B. Smart-Brillen 949), Sicherheits- und Vorbeugungssysteme 950, Spiel- und Lifestyle-Einheiten 952, Smartphones/Tablets 954, Mediaplayer 956 und/oder Computer/Datenverarbeitungseinheiten 958 umfassen.
  • Das direkte Datenladen 902 der vorliegenden Erfindung kann ferner in Sensoren 906 des Internet of Things (loT) für verschiedene Anwendungen integriert werden, wie zum Beispiel Hausautomatisierung 920, Automobile 922, Benutzerschnittstellen 924, Lifestyle und/oder Unterhaltung 926, städtische und/oder Infrastruktur 928, Einzelhandel 910, Tags und/oder Tracker 912, Plattformen und Komponenten 914, Spielzeuge 930 und/oder für Gesundheitswesen 932 sowie Fitness 934 integriert werden. Die loT-Sensoren 906 können das direkte Datenladen 902 nutzen. Selbstverständlich kann ein Fachmann auch ein Integrieren eines derartigen direkten Datenladens 902 in jeden Typ von elektronischen Einheiten für jeden Typ von Anwendungen in Betracht ziehen, die nicht auf die hierin beschriebenen beschränkt sind.
  • 12 ist ein Blockschaubild/Ablaufplan von beispielhaften IoT-Sensoren, die zum Sammeln von Daten/Informationen in Bezug auf die Middleware-Architektur von 1 gemäß einer Ausführungsform der vorliegenden Erfindung verwendet werden.
  • Das loT verliert seine Besonderheit ohne Sensoren. loT-Sensoren wirken als definierende Instrumente, die das loT von einem standardmäßigen passiven Netzwerk von Einheiten in ein aktives System umwandeln, das zu einer Integration der realen Welt fähig ist.
  • Die loT-Sensoren 906 können das direkte Datenladen 902 nutzen, um Informationen/Daten kontinuierlich und in Echtzeit über ein Netzwerk 908 zu jedem Typ von verteiltem System zu übertragen. Beispielhafte loT-Sensoren 906 können Positions-/ Anwesenheits-/Näherungssensoren 1002, Bewegungs-/Geschwindigkeitssensoren 1004, Verschiebungssensoren 1006, wie zum Beispiel Beschleunigungs-/Neigungssensoren 1007, Temperatursensoren 1008, Feuchte-/Feuchtigkeitssensoren 1010 sowie Durchflusssensoren 1011, Akustik-/Schall-/Vibrationssensoren 1012, Chemo-/Gassensoren 1014, Kraft-/Last-/ Drehmoment-/Dehnungs-/Drucksensoren 1016 und/oder elektrische/magnetische Sensoren 1018 umfassen, sie sind aber nicht darauf beschränkt. Ein Fachmann kann ein Verwenden jeder Kombination von derartigen Sensoren in Betracht ziehen, um Daten/Informationen des verteilten Systems zur weiteren Verarbeitung zu sammeln. Ein Fachmann kann ein Verwenden anderer Typen von loT-Sensoren in Betracht ziehen, wie zum Beispiel Magnetometer, Gyroskope, Bildsensoren, Lichtsensoren, Funkfrequenzidentifizierungs-(RFID) Sensoren und/oder Mikro-Durchflusssensoren, sie sind aber nicht darauf beschränkt. loT-Sensoren können außerdem Energiemodule, Leistungsmessklemmen, HF-Module und Sensormodule umfassen. HF-Module verwalten Datenübertragungen durch ihre Signalverarbeitung, WLAN, ZigBee®, Bluetooth®, Funksendeempfänger, Duplexeinheiten usw.
  • 13 ist ein Blockschaubild/Ablaufplan eines beispielhaften Verfahrens für ein Erlernen von Beziehungen zwischen mehreren Ereignistypen gemäß einer Ausführungsform der vorliegenden Erfindung.
  • An einem Block 1302 werden während des Datenladens externe Schreibvorgängen an ein Datenbankverwaltungssystem (DBMS) auf Arbeitsspeichergrundlage gesendet, wenn entsprechende interne Schreibvorgänge für Knoten bestimmt, alle externen Schreibvorgänge auf ein DBMS auf Datenträgergrundlage als eine Datei (Exportdatei) exportiert und ein externer Lesevorgang für Knoten zu einem DBMS im Arbeitsspeicher übertragen sind, wenn für die Middleware Daten erforderlich sind.
  • An einem Block 1304 am Ende des Datenladens werden Dateien für Rohdaten des DBMS auf Datenträgergrundlage aus der Exportdatei generiert und die generierten Dateien werden an das DBMS auf Datenträgergrundlage übertragen.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann ein durch einen Computer lesbares Speichermedium (oder -medien) enthalten, auf dem durch einen Computer lesbare Programmanweisungen gespeichert sind, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Einheit zum Ausführen von Anweisungen beibehalten und speichern kann. Das durch einen Computer lesbare Speichermedium kann zum Beispiel eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiter-Speichereinheit oder jede geeignete Kombination aus dem Vorgenannten sein, es ist aber nicht darauf beschränkt. Zu einer nicht erschöpfenden Liste von spezifischeren Beispielen des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer CD-ROM, eine DVD, ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination des Vorgenannten. Ein durch einen Computer lesbares Speichermedium soll, wie hierin verwendet, nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder andere Übertragungsmedien ausbreiten (z.B. durch ein Lichtwellenleiterkabel geleitete Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetzwerk und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server enthalten. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination von einer oder mehreren Programmiersprachen geschrieben sind, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ oder dergleichen, sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernt angeordneten Computer oder vollständig auf dem entfernt angeordneten Computer oder Server ausgeführt werden. In dem letzteren Szenario kann der entfernt angeordnete Computer mit dem Computer des Benutzers über jeden Typ von Netzwerk verbunden werden, einschließlich ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann zu einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Nutzung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, feldprogrammierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die computerlesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der computerlesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung werden hierin unter Bezugnahme auf Veranschaulichungen von Ablaufplänen und/oder Blockschaubildern von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es sollte klar sein, dass jeder Block der Ablaufplanveranschaulichungen und/oder der Blockschaubilder und Kombinationen von Blöcken in den Ablaufplanveranschaulichungen und/oder den Blockschaubildern mittels durch einen Computer lesbare Programmanweisungen umgesetzt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können für mindestens einen Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, sodass die über den Prozessor des Computers bzw. eine andere programmierbare Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder oder Module angegebenen Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, sodass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt enthält, darunter Anweisungen, die Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaubilder oder Module angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Operationsschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen durch einen Computer umgesetzten Prozess zu erzeugen, sodass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder oder Module angegebenen Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und Blockschaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder den Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zum Umsetzen der bestimmten logischen Funktion(en) enthalten. In einigen alternativen Umsetzungen können die in den Blöcken angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt auftreten. Zum Beispiel können zwei nacheinander gezeigte Blöcke tatsächlich im Wesentlichen parallel ausgeführt werden, oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden, was von der beteiligten Funktionalität abhängt. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufplandarstellungen sowie Kombinationen von Blöcken in den Blockschaubildern und/oder der Ablaufplandarstellung durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die angegebenen Funktionen oder Handlungen durchführen oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Ein Verweis in der Patentschrift auf „die eine Ausführungsform“ oder „eine Ausführungsform“ der vorliegenden Grundgedanken sowie andere Variationen davon bedeutet, dass ein bestimmtes Merkmal, eine bestimmte Struktur, eine bestimmte Eigenschaft und so weiter, die in Verbindung mit der Ausführung beschrieben wurden, in mindestens einer Ausführungsform der vorliegenden Grundgedanken enthalten sind. Somit verweist das Auftreten des Ausdrucks „in der einen Ausführungsform“, „in einer Ausführungsform“ sowie irgendwelchen Variationen davon, die an verschiedenen Stellen in der gesamten Patentschrift auftreten, nicht notwendigerweise insgesamt auf dieselbe Ausführungsform.
  • Man sollte sich bewusst sein, dass die Verwendung von jedem der nachfolgenden „/“, „und/oder“ und „mindestens ein/e/s von“ zum Beispiel in den Fällen von „A/B“, „A und/oder B“ und „mindestens eines von A und B“ nur die Auswahl der ersten aufgeführten Option (A) oder nur die Auswahl der zweiten aufgeführten Option (B) oder die Auswahl beider Optionen (A und B) einschließen soll. Als weiteres Beispiel soll in den Fällen von „A, B und/oder C“ und „mindestens eines von A, B und C“ eine derartige Formulierung nur die Auswahl der ersten aufgeführten Option (A) oder nur die Auswahl der zweiten aufgeführten Option (B) oder nur die Auswahl der dritten aufgeführten Option (C) oder nur die Auswahl der ersten und der zweiten aufgeführten Optionen (A und B) oder nur die Auswahl der ersten und dritten aufgeführten Optionen (A und C) oder nur die Auswahl der zweiten und dritten aufgeführten Optionen (B und C) oder die Auswahl aller drei Optionen (A und B und C) einschließen. Dies kann, wie einem Fachmann dieser und zugehöriger Gebiete problemlos klar sein wird, so oft wie aufgeführt erweitert werden.
  • Nach der Beschreibung von bevorzugten Ausführungsformen eines Systems und Verfahrens zum Reduzieren von Datenlade-Overhead von Middleware, um ein direktes Datenladen auf ein Datenbankverwaltungssystem (DBMS) zu erleichtern (wobei die Ausführungsformen zur Veranschaulichung dienen und keinesfalls einschränkend sein sollen), wird angemerkt, dass Modifizierungen und Variationen von Fachleuten in Anbetracht der obigen Lehren vorgenommen werden können. Es sollte daher klar sein, dass Änderungen an den bestimmten beschriebenen Ausführungsformen vorgenommen werden können, die innerhalb des Schutzumfangs der Erfindung liegen, wie durch die Ansprüche im Anhang dargelegt. Nach der Beschreibung von Aspekten der Erfindung mit den Details und der durch die Patentgesetze erforderlichen Besonderheit wird in den Ansprüchen im Anhang dargelegt, was beansprucht und als durch das Patent geschützt gewünscht wird.

Claims (25)

  1. Durch einen Computer umgesetztes Verfahren, das auf einem Prozessor zum Reduzieren eines Datenlade-Overheads von Middleware ausgeführt wird, um direktes Datenladen in ein Datenbankverwaltungssystem (DBMS) zu erleichtern, wobei das Verfahren aufweist: beim Datenladen: Senden von externen Schreibvorgängen an ein DBMS auf Arbeitsspeichergrundlage, wenn entsprechende interne Schreibvorgänge für Knoten bestimmt sind; Exportieren aller externen Schreibvorgänge in ein DBMS auf Datenträgergrundlage als eine Exportdatei; und Senden eines externen Lesevorgangs für Knoten zu einem DBMS im Arbeitsspeicher, wenn die Middleware Daten anfordert; und am Ende des Datenladens: Generieren von Dateien für Rohdaten des DBMS auf Datenträgergrundlage aus der Exportdatei; und Senden der generierten Rohdateien zu dem DBMS auf Datenträgergrundlage.
  2. Verfahren nach Anspruch 1, wobei während des Datenladens der Schritt des Sendens der externen Schreibvorgänge ferner ein Exportieren der internen Schreibvorgänge als eine Wiederherstellungsdatei umfasst.
  3. Verfahren nach Anspruch 2, wobei an einem Beginn eines Datenladens, wenn die Wiederherstellungsdatei vorhanden ist: die externen Schreibvorgänge in das DBMS auf Arbeitsspeichergrundlage aus der Wiederherstellungsdatei generiert; und generierten externen Schreibvorgänge zu dem DBMS auf Arbeitsspeichergrundlage gesendet werden.
  4. Verfahren nach Anspruch 1, wobei während des Datenladens der Schritt des Sendens des externen Lesevorgangs ein Senden des externen Lesevorgangs an das DBMS auf Datenträgergrundlage umfasst, wenn das DBMS im Arbeitsspeicher keinen abruft.
  5. Verfahren nach Anspruch 1, wobei eine Exporterweiterung der Middleware sowohl ein DBMS auf Datenträgergrundlage als auch ein DBMS auf Arbeitsspeichergrundlage unterstützt.
  6. Verfahren nach Anspruch 1, wobei eine Exporterweiterung der Middleware die internen Schreibvorgänge und die internen Lesevorgänge verarbeitet.
  7. Verfahren nach Anspruch 1, wobei, wenn die internen Schreibvorgänge nicht für Knoten bestimmt sind, die internen Schreibvorgänge an die Exportdatei angehängt werden.
  8. Nicht flüchtiges, durch einen Computer lesbares Speichermedium, das ein durch einen Computer lesbares Programm aufweist, das auf einem Prozessor zum Reduzieren eines Datenlade-Overheads von Middleware ausgeführt wird, um direktes Datenladen in ein Datenbankverwaltungssystem (DBMS) zu erleichtern, wobei das durch einen Computer lesbare Programm bei Ausführung auf dem Prozessor einen Computer veranlasst, die Schritte durchzuführen zum: beim Datenladen: Senden von externen Schreibvorgängen an ein DBMS auf Arbeitsspeichergrundlage, wenn entsprechende interne Schreibvorgänge für Knoten bestimmt sind; Exportieren aller externen Schreibvorgänge in ein DBMS auf Datenträgergrundlage als eine Exportdatei; und Senden eines externen Lesevorgangs für Knoten zu einem DBMS im Arbeitsspeicher, wenn die Middleware Daten anfordert; und am Ende des Datenladens: Generieren von Dateien für Rohdaten des DBMS auf Datenträgergrundlage aus der Exportdatei; und Senden der generierten Rohdateien zu dem DBMS auf Datenträgergrundlage.
  9. Nicht flüchtiges, durch einen Computer lesbares Speichermedium nach Anspruch 8, wobei während des Datenladens der Schritt des Sendens der externen Schreibvorhänge ferner ein Exportieren der internen Schreibvorgänge als eine Wiederherstellungsdatei umfasst.
  10. Nicht flüchtiges, durch einen Computer lesbares Speichermedium nach Anspruch 9, wobei an einem Beginn eines Datenladens, wenn die Wiederherstellungsdatei vorhanden ist: die externen Schreibvorgänge in das DBMS auf Arbeitsspeichergrundlage aus der Wiederherstellungsdatei generiert werden; und die generierten externen Schreibvorgänge zu dem DBMS auf Arbeitsspeichergrundlage gesendet werden.
  11. Nicht flüchtiges, durch einen Computer lesbares Speichermedium nach Anspruch 8, wobei während des Datenladens der Schritt des Sendens des externen Lesevorgangs ferner ein Senden des externen Lesevorgangs an das DBMS auf Datenträgergrundlage umfasst, wenn das DBMS im Arbeitsspeicher keinen abruft.
  12. Nicht flüchtiges, durch einen Computer lesbares Speichermedium nach Anspruch 8, wobei eine Exporterweiterung der Middleware sowohl ein DBMS auf Datenträgergrundlage als auch ein DBMS auf Arbeitsspeichergrundlage unterstützt.
  13. Nicht flüchtiges, durch einen Computer lesbares Speichermedium nach Anspruch 8, wobei eine Exporterweiterung der Middleware die internen Schreibvorgänge und die internen Lesevorgänge verarbeitet.
  14. Nicht flüchtiges, durch einen Computer lesbares Speichermedium nach Anspruch 8, wobei, wenn interne Schreibvorgänge nicht für Knoten bestimmt sind, die internen Schreibvorgänge an die Exportdatei angehängt werden.
  15. System zum Reduzieren eines Datenlade-Overheads von Middleware, um direktes Datenladen in ein Datenbankverwaltungssystem (DBMS) zu erleichtern, wobei das System aufweist: einen Arbeitsspeicher; und einen oder mehrere Prozessoren in Datenaustausch mit dem Arbeitsspeicher, der konfiguriert ist zum: beim Datenladen Senden von externen Schreibvorgängen an ein DBMS auf Arbeitsspeichergrundlage, wenn entsprechende interne Schreibvorgänge für Knoten bestimmt sind; Exportieren aller externen Schreibvorgänge in ein DBMS auf Datenträgergrundlage als eine Exportdatei; und Senden eines externen Lesevorgangs für Knoten zu einem DBMS im Arbeitsspeicher, wenn die Middleware Daten anfordert; und am Ende des Datenladens: Generieren von Dateien für Rohdaten des DBMS auf Datenträgergrundlage aus der Exportdatei; und Senden der generierten Rohdateien zu dem DBMS auf Datenträgergrundlage.
  16. System nach Anspruch 15, wobei während des Datenladens der Schritt des Sendens der externen Schreibvorhänge ferner ein Exportieren der internen Schreibvorgänge als eine Wiederherstellungsdatei umfasst.
  17. System nach Anspruch 16, wobei an einem Beginn eines Datenladens, wenn die Wiederherstellungsdatei vorhanden ist: die externen Schreibvorgänge in das DBMS auf Arbeitsspeichergrundlage aus der Wiederherstellungsdatei generiert werden; und die generierten externen Schreibvorgänge zu dem DBMS auf Arbeitsspeichergrundlage gesendet werden.
  18. System nach Anspruch 15, wobei während des Datenladens der Schritt des Sendens des externen Lesevorgangs ferner ein Senden des externen Lesevorgangs an das DBMS auf Datenträgergrundlage umfasst, wenn das DBMS im Arbeitsspeicher keinen abruft.
  19. System nach Anspruch 15, wobei eine Exporterweiterung der Middleware sowohl ein DBMS auf Datenträgergrundlage als auch ein DBMS auf Arbeitsspeichergrundlage unterstützt.
  20. System nach Anspruch 15, wobei eine Exporterweiterung der Middleware die internen Schreibvorgänge und die internen Lesevorgänge verarbeitet.
  21. System nach Anspruch 15, wobei, wenn interne Schreibvorgänge nicht für Knoten bestimmt sind, die internen Schreibvorgänge an die Exportdatei angehängt werden.
  22. Durch einen Computer umgesetztes Verfahren, das auf einem Prozessor zum Reduzieren eines Datenlade-Overheads von Middleware ausgeführt wird, um direktes Datenladen in ein Datenbankverwaltungssystem (DBMS) zu erleichtern, wobei das Verfahren aufweist: Empfangen eines internen Schreibvorgangs in einer Exporterweiterung der Middleware; Bestimmen, ob der interne Schreibvorgang für Knoten bestimmt ist; Senden des internen Schreibvorgangs zu einem DBMS im Arbeitsspeicher, wenn der interne Schreibvorhang für Knoten bestimmt ist; und Anhängen des internen Schreibvorgangs an eine Wiederherstellungsdatei.
  23. Verfahren nach Anspruch 22, wobei, wenn der interne Schreibvorgang nicht für Knoten bestimmt ist, der interne Schreibvorgang an eine Exportdatei angehängt wird.
  24. Durch einen Computer umgesetztes Verfahren, das auf einem Prozessor zum Reduzieren eines Datenlade-Overheads von Middleware ausgeführt wird, um direktes Datenladen in ein Datenbankverwaltungssystem (DBMS) zu erleichtern, wobei das Verfahren aufweist: Empfangen eines internen Lesevorgangs in einer Exporterweiterung der Middleware; Senden des internen Lesevorgangs zu einem DBMS im Arbeitsspeicher, um ein Ergebnis zu empfangen; Bestimmen, ob das Ergebnis einen Datensatz umfasst; und wenn das Ergebnis frei von Datensätzen ist, Senden des internen Lesevorgangs zu einem DBMS auf Datenträgergrundlage.
  25. Verfahren nach Anspruch 24, wobei, wenn das Ergebnis einen Datensatz umfasst, das Ergebnis an einen Anrufer zurückgegeben wird.
DE112021003273.9T 2020-07-27 2021-07-19 Direktes datenladen von durch middleware generierten datensätzen Pending DE112021003273T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/939,149 2020-07-27
US16/939,149 US11423025B2 (en) 2020-07-27 2020-07-27 Direct data loading of middleware-generated records
PCT/IB2021/056489 WO2022023867A1 (en) 2020-07-27 2021-07-19 Direct data loading of middleware-generated records

Publications (1)

Publication Number Publication Date
DE112021003273T5 true DE112021003273T5 (de) 2023-06-29

Family

ID=79688261

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021003273.9T Pending DE112021003273T5 (de) 2020-07-27 2021-07-19 Direktes datenladen von durch middleware generierten datensätzen

Country Status (6)

Country Link
US (1) US11423025B2 (de)
JP (1) JP2023535608A (de)
CN (1) CN115803729A (de)
DE (1) DE112021003273T5 (de)
GB (1) GB2612727B (de)
WO (1) WO2022023867A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11423025B2 (en) * 2020-07-27 2022-08-23 International Business Machines Corporation Direct data loading of middleware-generated records

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5768577A (en) * 1994-09-29 1998-06-16 International Business Machines Corporation Performance optimization in a heterogeneous, distributed database environment
US6321374B1 (en) * 1997-11-07 2001-11-20 International Business Machines Corporation Application-independent generator to generate a database transaction manager in heterogeneous information systems
US6167405A (en) * 1998-04-27 2000-12-26 Bull Hn Information Systems Inc. Method and apparatus for automatically populating a data warehouse system
GB2339036A (en) * 1998-07-03 2000-01-12 Ibm Set of objects for extracting data from a database, and visual builder
US6285997B1 (en) * 1998-11-16 2001-09-04 International Business Machines Corporation Query optimization with deferred update and autonomous sources
US7209921B2 (en) * 2000-09-01 2007-04-24 Op40, Inc. Method and system for deploying an asset over a multi-tiered network
WO2002019131A1 (en) * 2000-09-01 2002-03-07 Op40, Inc. System and method for collaboration using web browsers
US7136857B2 (en) * 2000-09-01 2006-11-14 Op40, Inc. Server system and method for distributing and scheduling modules to be executed on different tiers of a network
US7685577B2 (en) * 2000-09-01 2010-03-23 Op40, Inc. System and method for translating an asset for distribution over multi-tiered networks
US20030050932A1 (en) * 2000-09-01 2003-03-13 Pace Charles P. System and method for transactional deployment of J2EE web components, enterprise java bean components, and application data over multi-tiered computer networks
US20030074207A1 (en) * 2000-09-01 2003-04-17 Pace Charles P. Method and system for deploying an asset over a multi-tiered network
US20030084134A1 (en) * 2000-09-01 2003-05-01 Pace Charles P. System and method for bridging assets to network nodes on multi-tiered networks
WO2002071260A1 (en) * 2001-03-01 2002-09-12 Aalborg Universitet Adaptable query optimization and evaluation in temporal middleware
US20030158937A1 (en) * 2002-02-20 2003-08-21 Johal Sumer Singh Methods and systems for using distributed business data using observation technology to avoid the need to integrate servers and clients
JP2004178035A (ja) * 2002-11-25 2004-06-24 Hitachi Ltd データベース運用管理方法
TWI337310B (en) 2003-08-21 2011-02-11 Microsoft Corp Systems and methods for extensions and inheritance for units of information manageable by a hardware/software interface system
US7197496B2 (en) * 2004-01-20 2007-03-27 International Business Machines Corporation Macro-based dynamic discovery of data shape
US7774298B2 (en) * 2004-06-30 2010-08-10 Sap Ag Method and system for data extraction from a transaction system to an analytics system
US8103624B2 (en) * 2005-01-13 2012-01-24 International Business Machines Corporation Apparatus and method for automating the logging of table changes in a database
JP4615344B2 (ja) * 2005-03-24 2011-01-19 株式会社日立製作所 データ処理システム及びデータベースの管理方法
US8250027B2 (en) * 2006-11-06 2012-08-21 Nec Corporation Computer system, database access method, application server, and program
US8244747B2 (en) * 2006-12-05 2012-08-14 International Business Machines Corporation Middleware for query processing across a network of RFID databases
US8812458B2 (en) * 2008-04-30 2014-08-19 International Business Machines Corporation Adaptive methodology for updating solution building block architectures and associated tooling
US8805895B2 (en) * 2008-04-30 2014-08-12 International Business Machines Corporation Adaptive methodology for updating solution building block architectures and designs
US9336263B2 (en) 2010-06-04 2016-05-10 Yale University Data loading systems and methods
EP2641190A1 (de) * 2010-10-01 2013-09-25 Telefonaktiebolaget L M Ericsson (PUBL) Erzeugung eines abfrageplans für den zugang zu einer datenbank
US8938480B2 (en) 2011-12-29 2015-01-20 Teradata Us, Inc. Techniques for fast loading of data from an external distributed file system to a database management system
US20160154812A1 (en) 2014-12-02 2016-06-02 Altibase Corp. Hybrid database management system
US10606833B2 (en) * 2014-11-18 2020-03-31 Oracle International Corporation Context sensitive indexes
US10152558B2 (en) 2014-12-23 2018-12-11 Intel Corporation Graph operations
CN106130759B (zh) * 2016-06-22 2021-02-09 白杨 面向服务的模块化系统体系架构
US10963512B2 (en) 2017-01-20 2021-03-30 Amazon Technologies, Inc. Query language interoperability in a graph database
US10909097B2 (en) 2017-02-05 2021-02-02 Veritas Technologies Llc Method and system for dependency analysis of workloads for orchestration
US11675761B2 (en) * 2017-09-30 2023-06-13 Oracle International Corporation Performing in-memory columnar analytic queries on externally resident data
US10691658B2 (en) 2018-05-09 2020-06-23 International Business Machines Corporation Automatically optimizing resource usage on a target database management system to increase workload performance
CN111427901B (zh) 2020-03-23 2023-10-31 浪潮通用软件有限公司 交互式知识图谱数据编辑方法、计算机设备和存储介质
US11423025B2 (en) * 2020-07-27 2022-08-23 International Business Machines Corporation Direct data loading of middleware-generated records

Also Published As

Publication number Publication date
JP2023535608A (ja) 2023-08-18
GB2612727B (en) 2023-08-23
WO2022023867A1 (en) 2022-02-03
CN115803729A (zh) 2023-03-14
GB2612727A (en) 2023-05-10
GB202301419D0 (en) 2023-03-15
US20220027370A1 (en) 2022-01-27
US11423025B2 (en) 2022-08-23

Similar Documents

Publication Publication Date Title
DE112017007510T5 (de) Blockchain für offene wissenschaftliche forschung
DE112021002572T5 (de) Multikriterielles optimieren von anwendungen
DE112018005167T5 (de) Aktualisieren von trainingsdaten
DE112013001308T5 (de) Verwalten von mandantenspezifischen Datensätzen in einer mandantenfähigen Umgebung
DE112020005323T5 (de) Elastische ausführung von machine-learning-arbeitslasten unter verwendung einer anwendungsbasierten profilierung
DE102013205572A1 (de) Verwenden von softwarekomponenten-metadaten zum bereitstellen von virtuellen maschinen in einer vernetzten datenverarbeitungsumgebung
DE102014103279A1 (de) Pivot-Facets für Text-Mining und Suche
DE112019001433T5 (de) Datenanonymisierung
DE112019000421B4 (de) Arbeitslastverwaltung mit datenzugriffserkennung in einem datenverarbeitungscluster
DE102013204186A1 (de) Ermitteln von Prioritäten für zwischengespeicherte Objekte zum Ordnen des Übertragens von Änderungen an zwischengespeicherten Objekten beruhend auf gemessener Netzwerkbandbreite
DE112021005422T5 (de) Auf lernen beruhende arbeitslast-ressourcenoptimierung für datenbank-managementsysteme
DE112021003401T5 (de) Schattenexperimente für serverlose multi-tenant-cloud-dienste
DE102016105062A1 (de) Nähengestützte Berechtigungsprüfung für einheitenübergreifend verteilte Daten
DE112020006449T5 (de) Verteilen von arbeitslasten bei berechnungen auf der grundlage einer berechneten berechnungsschwerkraft innerhalb unterschiedlicher datenverarbeitungsparadigmen
DE112018002955T5 (de) Kognitive datei- und objektverwaltung für verteilte speicherumgebungen
DE112021000338T5 (de) Auslagern der statistikerfassung
DE112020003596T5 (de) Datenbank-Tuning unter Verwendung eines föderierten maschinellen Lernsystems eines Centerless-Netzwerks
DE102021130396A1 (de) Datenzugriffsüberwachung und -steuerung
DE112021003943T5 (de) Sprachantwortsysteme auf Grundlage eines personalisierten Wortschatzes und einer Benutzerprofilerstellung - Personalisierte linguistische KI-Engines
DE102021123058A1 (de) Maskieren von sensiblen informationen in einem dokument
DE112021003668T5 (de) Zuteilen von aufgaben und daten unter verwendung von multi-access edge computing
DE112017005512T5 (de) Datenübertragung innerhalb von geschäftsräumen und ausserhalb von geschäftsräumen
DE112021003273T5 (de) Direktes datenladen von durch middleware generierten datensätzen
DE102021122508A1 (de) Ausgleichen von grossrechner- und verteilten arbeitslasten auf der grundlage von leistung und kosten
DE112021005927T5 (de) Patchen von arbeitsabläufen

Legal Events

Date Code Title Description
R012 Request for examination validly filed