DE102018110138A1 - Arbeitsablaufmaschinen-Framework - Google Patents

Arbeitsablaufmaschinen-Framework Download PDF

Info

Publication number
DE102018110138A1
DE102018110138A1 DE102018110138.4A DE102018110138A DE102018110138A1 DE 102018110138 A1 DE102018110138 A1 DE 102018110138A1 DE 102018110138 A DE102018110138 A DE 102018110138A DE 102018110138 A1 DE102018110138 A1 DE 102018110138A1
Authority
DE
Germany
Prior art keywords
machine
workflow
domain
data
components
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
DE102018110138.4A
Other languages
English (en)
Inventor
Yeon Hee Lee
Hyun Jae Kim
Ho Sung Lee
Dae Won Kim
Hyun Joong KANG
Soon Hyun Kwon
Woong Shik YOU
Nae Soo Kim
Sun Jin Kim
Young Min Kim
Hoo Young AHN
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.)
Electronics and Telecommunications Research Institute ETRI
Original Assignee
Electronics and Telecommunications Research Institute ETRI
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
Priority claimed from KR1020180047370A external-priority patent/KR102259927B1/ko
Application filed by Electronics and Telecommunications Research Institute ETRI filed Critical Electronics and Telecommunications Research Institute ETRI
Publication of DE102018110138A1 publication Critical patent/DE102018110138A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • 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/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries

Abstract

Ein Arbeitsablaufmaschinen-Framework zum Erzeugen einer einzeldomänenadaptiven und einer domänenübergreifend adaptiven Arbeitsablaufdurchführungsplattform ist offenbart. Das Arbeitsablaufmaschinen-Framework enthält: eine Ressourcenmanagementeinheit, die konfiguriert ist, um Ressourcen zu managen, die Maschinenkomponenten und Arbeitsablaufeigenschaftsspezifikationskomponenten enthalten; eine Systemkonfigurationseinheit, die konfiguriert ist, um eine Maschine durch Zusammenbauen der Eigenschaftsspezifikationskomponenten zu erzeugen; und eine Systemsteuereinheit, die konfiguriert ist, um eine oder mehrere Maschinen anzutreiben und auszuführen. Weiterhin ist das Arbeitsablaufmaschinen-Framework zu jeder von zwei oder mehr unterschiedlichen Signaldomänen zugeteilt und bildet ein domänenübergreifend adaptives Arbeitsablaufmaschinen-Framework.

Description

  • QUERVERWEIS AUF ZUGEHÖRIGE ANMELDUNG
  • Diese Anmeldung beansprucht die Priorität und den Vorteil der koreanischen Patentanmeldung Nr. 2017-0135066 , eingereicht am 18. Oktober 2017, und auch der koreanischen Patentanmeldung Nr. 2018-0047370 , eingereicht am 28. April 2018, deren Offenbarungen hierin durch Bezugnahme in ihrer Gesamtheit enthalten sind.
  • HINTERGRUND
  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft Arbeitsablauf- und Framework- bzw. Rahmenstruktur-Technologie und insbesondere ein Arbeitsablaufmaschinen-Framework, das eine einzeldomänenadaptive und auch eine domänenübergreifend adaptive arbeitsablaufdurchführende Plattform durch eine systematische Konfiguration von dynamischen Maschinenkomponenten erzeugen kann, um Arbeitsabläufe verschiedener Arbeitsdomänen oder Zieldomänen zu verarbeiten.
  • Diskussion des Standes der Technik
  • Arbeitsablauftechnologie bezieht sich auf Automatisierungstechnologie für Geschäftsprozesse, bei welchen Dokumente, Information, Aufgaben, etc. von einem Anwender (einer Anwendung) zu einem anderen Anwender übertragen bzw. transferiert werden, um sie gemäß einer Reihe von Geschäftsprozedurregeln zu verarbeiten. Insbesondere ist eine datenbasierte Dienstarbeitsablauferzeugungsprozedur wie folgt. Zuerst werden eine Datenquelle und ein Verfahren zum Sammeln der Datenquelle bestimmt. Ein Verfahren zum Verarbeiten der gesammelten Daten und ein Verfahren zum Analysieren der verarbeiteten Daten (z.B. Analyse durch Maschinenlernen, Vorhersage, wissensbasierte Inferenz, etc.) werden bestimmt. Ein Verfahren zum Bedienen des Analyseergebnisses wird bestimmt. Eine Maschine (Maschinen), die zum Durchführen des entsprechenden Arbeitsablaufs nötig ist (sind), wird/werden konfiguriert, und dann wird ein Verfahren zum Verpflichten bzw. Verknüpfen der Maschinen definiert. Dadurch wird die Arbeitsablauferzeugungsprozedur beendet.
  • In letzter Zeit hat eine intelligente Technologie des Internets von Dingen (loT), die verschiedenen Objekten künstliche Intelligenz zuteilt, die Aufmerksamkeit auf sich gezogen. Insbesondere gibt es für intelligente Internetanwendungen (z.B. Smarte Stadt), die eine große Anzahl von heterogenen loT-Domänen begleiten, eine Notwendigkeit für ein System, das heterogene Objektintelligenzdomänen regeln, managen und steuern kann. Zusätzlich können Probleme entstehen, die eine intelligente Verarbeitung von verschiedenen Arbeitsdomänen erfordern (z.B. Energie, Gesundheit, Transportwesen, Erziehung, Energieversorgungsanlagen, etc.). Selbst innerhalb einer einzelnen Arbeitsdomäne kann es eine Vielfalt von Zieldomänen geben, und zwar im Bereich von einer Vorrichtung, die Daten erzeugt und Aktionen durchführt, bis zu einem Edge, das Daten verarbeitet, transferiert, sofort analysiert und bestimmt, und einer Cloud, die eine komplizierte Analyse und Anwendungen durchführt. Ebenso kann es innerhalb der Arbeitsdomäne oder der Zieldomäne eine räumliche Domäne gemäß einer Raumklassifizierung und eine Zeitdomäne gemäß einer Zeitklassifizierung geben. Zusätzlich kann es verschiedene Domänen geben, wie beispielsweise eine Datenverarbeitungsdomäne, eine Lerndomäne, eine Vorhersagedomäne oder eine Dienstdomäne. Daher gibt es eine Notwendigkeit nach einem vereinheitlichten Verfahren und System zum effektiven Regeln, Managen und Steuern von solchen komplizierten mehrschichtigen Domänen (die hierin nachfolgend „übergreifende Domänen“ genannt werden).
  • Andererseits sind verschiedene Technologien entwickelt worden, um Einsichten von loT-Daten zu extrahieren und zu analysieren und um ein schnelles und genaues Entscheiden zu unterstützen, um Erkenntnisse schnell zu extrahieren, die in Big Data (großen Daten) enthalten sind, die durch IoT gesammelt sind, und um die Erkenntnisse auf ein Geschäft anzuwenden. Dies muss notwendigerweise durch eine Stromverarbeitungstechnologie für Echtzeitanalytiken und Plattformtechnologie für Echtzeitvorhersage/Analyse unterstützt werden.
  • Ebenso gibt es, da es eine größer werdende Notwendigkeit gibt, einen Arbeitsablauf durch Verwenden von Maschinenlernen zu entwickeln, welches in letzter Zeit aufgetaucht ist, bei einer IoT-Big-Data-Analyse, und loT-Domänen von verschiedenen Grundsätzen bzw. Zielen entwickelt worden sind, eine Notwendigkeit für eine vereinheitliche Plattformtechnologie, die die Domänen systematisch integrieren kann, um eine erkenntnisreichere Analyse oder einen erkenntnisreicheren Dienst zu ermöglichen. Jedoch hat eine herkömmliche Arbeitsablauftechnologie Beschränkungen beim Kombinieren von Maschinenlernen mit loT-Big-Data, die unterschiedliche Charakteristiken haben, und zwar in Abhängigkeit von Vorrichtungen, Daten und Domänen.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Um die oben beschriebenen Beschränkungen und Probleme und überwinden, gibt eines Notwendigkeit für ein vereinheitlichtes System, das einen Arbeitsablauf gemäß dem Zweck jeder Domäne durch systematische Konfiguration von Maschinenkomponenten erzeugen und durchführen kann und auf einfache Weise auf eine andere Domäne angewendet werden kann, um einen (domänenadaptiven) Arbeitsablauf zu erzeugen und durchzuführen, der für die andere Domäne geeignet ist, und insbesondere eine integrierte Steuerung und ein integriertes Management durchführen kann, um mit einer übergreifenden Domäne fertig zu werden.
  • Demgemäß neigt die vorliegende Erfindung dazu, ein Arbeitsablaufmaschinen-Framework zum Erzeugen einer domänenadaptiven oder sogar domänenübergreifend adaptiven arbeitsablaufdurchführenden Plattform vorzuschlagen, die zu Zwecken durch systematische Konfiguration von dynamischen Maschinenkomponenten geeignet ist.
  • Gemäß einem Aspekt der vorliegenden Erfindung zum Adressieren der Aufgabe der vorliegenden Erfindung wird ein Arbeitsablaufmaschinen-Framework zur Verfügung gestellt, das enthält:
    • eine Ressourcenmanagementeinheit, die konfiguriert ist, um Ressourcen zu managen, die Maschinenkomponenten und Arbeitsablaufeigenschaftsspezifikationskomponenten, die nötig sind, um einen durch einen Anwender definierten Arbeitsablauf durchzuführen, enthalten;
    • eine Systemkonfigurationseinheit, die konfiguriert ist, um eine Maschine durch Aneinanderfügen der Eigenschaftsspezifikationskomponenten, dynamisches Kombinieren der Maschinenkomponenten, die nötig sind, um den Arbeitsablauf durchzuführen, und Konfigurieren nötiger Maschinenkomponentenbehälter gemäß einer Arbeitsablaufspezifikation zu erzeugen; und
    • eine Systemsteuereinheit, die konfiguriert ist, um gemäß einer Art, die in einer Arbeitsablaufeigenschaftsspezifikation definiert ist, die Ausführung von einer oder mehreren Maschinen anzutreiben und zu steuern, die durch die Systemkonfigurationseinheit erzeugt sind.
  • Ebenso wird gemäß einem weiteren Aspekt der vorliegenden Erfindung dann, wenn das Arbeitsablaufmaschinen-Framework zu jeder von zwei oder mehr unterschiedlichen einzelnen Domänen zugeteilt ist, ein domänenübergreifend adaptives Arbeitsablaufmaschinen-Framework zur Verfügung gestellt, das ein domänenübergreifendes Konvergenzsystem enthält, das mit den Einzeldomänen-Arbeitsablaufmaschinen-Frameworks über ein Netzwerk verbunden ist und das konfiguriert ist, um gemäß einem durch einen Anwender definierten domänenübergreifenden Arbeitsablauf eine einzelne Domäne zu bestimmen, für welche die Maschine zu nutzen ist, unter einzelnen Domänen, die in einer übergreifenden Domäne enthalten sind.
  • Figurenliste
  • Die obigen und andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden Fachleuten auf dem Gebiet durch detailliertes Beschreiben beispielhafter Ausführungsformen davon unter Bezugnahme auf die beigefügten Zeichnungen klarer werden, in welchen:
    • 1 ein schematisches Diagramm eines Arbeitsablaufmaschinen-Frameworks gemäß der vorliegenden Erfindung ist;
    • 2 ein detailliertes Blockdiagramm einer Systemkonfigurationseinheit 30 ist;
    • 3 ein beispielhaftes Diagramm eines GUI-Bildschirms zum Darstellen einer Konfiguration eines System-Definierers-Editors 70 ist;
    • 4 eine Prozedur zum Konfigurieren einer Maschine zeigt, die einen Arbeitsablauf konfiguriert, aus der Spezifikation der Maschine;
    • 5 ein Blockdiagramm einer Maschine als ein Beispiel eines Arbeitsablaufdurchführungsfalls ist, der durch eine Arbeitsablaufkonfigurationseinheit 36 der 1 konfigurierbar ist;
    • 6 ein Beispiel einer Maschinenkonfiguration zeigt, die mit einem Einheitenoperator ausgestattet ist;
    • 7 eine spezifische Ausführungsform einer Datenverarbeitungsmaschine zeigt, die in 6 gezeigt ist;
    • 8 ein weiteres Beispiel einer Maschinenkonfiguration zeigt, die mit einem Einheitenoperator ausgestattet ist;
    • 9 eine Konfiguration eines arbeitsablaufdurchführenden Systems zeigt, bei welchem eine oder mehrere Maschinen auf eine pipelineartige Weise verbunden sind;
    • 10 eine Konfiguration eines arbeitsablaufdurchführenden Systems zeigt, bei welchem eine oder mehrere Maschinen durch mehrere Typen von Datenpfaden laufen gelassen werden;
    • 11 ein Beleuchtungs-/Temperatur-Steuerungs-Arbeitsablaufdienstszenario basierend auf dem loT und künstlicher Intelligenz darstellt;
    • 12 einen Verkehrsgeschwindigkeitsüberwachungsdienst basierend auf tiefem Lernen darstellt;
    • 13 eine interne Konfiguration eines Arbeitsablaufmaschinen-Frameworks 10 der 11 zeigt;
    • 14 ein Beispiel einer Konfiguration einer dienenden Maschine bzw. Dienstmaschine zum Bereitstellen eines intelligenten Dienstes als eine Maschine zum Bereitstellen eines Dienstes zu einem Client oder einem Anwender zeigt;
    • 15 eine interne Konfiguration eines Arbeitsablaufmaschinen-Frameworks 10 der 12 zeigt;
    • 16 ein Beispiel einer Konfiguration eines domänenübergreifenden Arbeitsablaufmaschinen-Frameworks zeigt;
    • 17 eine Prozedur zum Durchführen eines domänenübergreifenden Arbeitsablaufs zeigt;
    • 18 ein Szenario zum Erreichen einer smarten Stadt darstellt;
    • 19 eine Ausführungsform eines Arbeitsablaufmaschinen-Frameworks zeigt, das konfiguriert ist, um die smarte Stadt der 18 zu erreichen; und
    • 20 eine Ausführungsform einer Konfiguration einer smarten Steuerungsempfehlungsmaschine für Straßenbeleuchtung eines Arbeitsablaufs 94 zeigt, der in 19 gezeigt ist.
  • DETAILLIERTE BESCHREIBUNG BEISPIELHAFTER AUSFÜHRUNGSFORMEN
  • 1 ist ein Blockdiagramm, das eine Ausführungsform eines Arbeitsablaufmaschinen-Frameworks gemäß der vorliegenden Erfindung zeigt. Ein Arbeitsablaufmaschinen-Framework 10 gemäß der vorliegenden Erfindung enthält grundsätzlich:
    • - einen System-Definierer-Editor 70, der konfiguriert ist, um eine Struktur und Spezifikationen von durchzuführender Arbeit (Arbeitsablauf) zu definieren und zu bearbeiten;
    • - eine Ressourcenmanagementeinheit 20, die konfiguriert ist, um Ressourcen zu managen, einschließlich: Eigenschaftsspezifikationskomponenten bezogen auf Eigenschaften zum Definieren von Maschinenkomponenten einer Arbeitsablaufspezifikation (einer Maschinenspezifikation d.h. einer Spezifikation, die aus einer oder mehreren Maschinen besteht, die den Arbeitsablauf bilden), um durch einen Anwender durch den System-Definierer-Editor 70 definiert zu werden, Maschinenkomponenten, die Maschinenzusammensetzungselemente sind, die eine Maschine bilden, um den Arbeitsablauf durchzuführen, vordefinierter Arbeitsablaufspezifikationsinstanzen, etc.;
    • - eine Systemkonfigurationseinheit 30, die konfiguriert ist, um Arbeitsablaufeigenschaftsspezifikationen aneinanderzufügen und Maschinenkomponenten dynamisch zu kombinieren, die nötig sind, um den Arbeitsablauf durchzuführen und um eine Maschineninstanz (Maschineninstanzen) 32 zu konfigurieren (der oder die hierin nachfolgend austauschbar Maschine genannt werden), der (oder die) den Arbeitsablauf durchführt (durchführen);
    • - eine Maschine (eine Instanz) 32, die durch die Systemkonfigurationseinheit 30 erzeugt ist; und
    • - eine Systemsteuereinheit 40, die konfiguriert ist, um die Ressourcenmanagementeinheit 20, die Systemkonfigurationseinheit 30 und die Maschine 32 zu steuern.
  • Im Arbeitsablaufmaschinen-Framework 10 definiert ein Anwender einen Arbeitsablauf, der aus einer oder mehreren Maschinen besteht, um ein erwünschtes System aufzubauen. Hier ist der Arbeitsablauf zusammengesetzt aus einer Definition von der einen oder den mehreren Maschinen. Die Definition der Maschinen bezieht sich auf eine Kombination eines Maschinenbehälters zum Enthalten von Maschinenkomponenten und auf Maschinenkomponenten, um im Maschinenbehälter enthalten zu sein.
  • Der Maschinenkomponentenbehälter wird als eine Kombination von einer oder mehreren Leserkomponenten, Schreiberkomponenten, Läuferkomponenten, Operatorkomponenten und Steuerungskomponenten erzeugt. Jede der Leserkomponenten, Schreiberkomponenten, Läuferkomponenten, Operatorkomponenten und Steuerungskomponenten wird als eine Kombination einer Eigenschaftsspezifikationskomponente zum Definieren von Eigenschaften zum Bestimmen von Charakteristiken von Komponenten und einer Ausführungskomponente entsprechend einer aktuellen Implementierung von Komponenten erzeugt. Als ein Beispiel entspricht die Ausführungskomponente einer Klasse, wie beispielsweise Java und C++, und entspricht die Eigenschaftsspezifikationskomponente einem Erzeugerparameter, der in einem Erzeuger einer Klasse enthalten sein kann, oder einer Klasse, die Erzeugerparameter enthält. Durch Definieren eines Arbeitsablaufs für eine oder mehrere Maschinen entsprechend einer Definition eines Ausführungssystems, das auf diese Weise erzeugt ist, ist es möglich, die ausführbare Maschine dynamisch zu konfigurieren und auch ein Arbeitsablaufsystem zu erzeugen, das für verschiedene Arbeitsdomänen nötig ist.
  • 2 zeigt eine detaillierte Konfiguration und zusätzliche Elemente des Systems der 1.
  • Das System kann weiterhin folgendes enthalten: eine Ausführungsinstanzeneinheit 50, in welcher Maschinen 32, die als eine Kombination von Maschinenkomponenten konfiguriert sind, die durch die Systemkonfigurationseinheit 30 dynamisch erzeugt sind, in der Form von Maschineninstanzen erzeugt und gemanagt werden (was als Ergebnis beendete und ausgeführte Maschinen anzeigt); eine Komponenteneinheit 60, die ein Raum ist, wo eine Maschinenkomponente 64 und eine Eigenschaftsspezifikationskomponente 62, gemanagt durch die Ressourcenmanagementeinheit 20, physikalisch oder virtuell gespeichert werden; und ein Frontend 77, das konfiguriert ist, um einen Arbeitsablauf vom System-Definierer-Editor 70 zu empfangen und den Arbeitsablauf zur Systemkonfigurationseinheit 30 zu transferieren.
  • Das Frontend 77 dient zum Herbeiführen bzw. Vermitteln einer Ausführung eines Prozesses zum Empfangen einer Anfrage von einem Client und zum Verarbeiten der empfangenen Anfrage und dient dazu, auf verschiedene Anfragen zu antworten, wie beispielsweise Anwendermanagement- oder Speicherungsmanagement-Anfragen. Beispiele des Frontends 77 können ein System enthalten, das ein allgemeines sockelkommunikationsbasiertes Hörermodul, einen allgemeinen Anwendungsserver oder einen Web-Anwendungsserver, der eine webbasierte REST-API zur Verfügung stellt, enthält. In Abhängigkeit vom Fall kann das Frontend 77 auf einem Netzwerk laufen, das unterschiedlich von demjenigen eines Backends ist, das den System-Definierer-Editor 70 oder das Framework 10 bildet.
  • Bevor das Arbeitsablaufmaschinen-Framework 10 der 1 und der 2 vollständig beschrieben wird, wird zuerst der System-Definierer-Editor 70 beschrieben werden, der dazu dient, einen Arbeitsablauf zu schreiben, der Spezifikationen für eine Reihe von Operationen definiert, um das Ausführungssystem im Framework 10 anzutreiben, und das Frontend 77 anzufragen, anzuweisen, dass das Ausführungssystem im Framework 10 betrieben wird.
  • Der System-Definierer-Editor 70 fungiert, um eine detaillierte Domäne für eine erwünschte Arbeit zu definieren, eine Arbeitsablaufstruktur zu definieren, um für jede Domäne durchgeführt zu werden, eine Maschinenkomponente (Maschinenkomponenten) gemäß der Struktur auszuwählen, um einen Arbeitsablauf zu definieren, der einen Ablauf durchführt, und eine detaillierte Spezifikation jeder Maschinenkomponente zu schreiben. Dafür kann sich der System-Definierer-Editor 70 beim Framework (insbesondere die Ressourcenmanagementeinheit 20) über Eigenschaftsspezifikationskomponenten und Maschinenkomponenten erkundigen.
  • Hier kann die Arbeitsablaufstruktur beispielsweise Prozesse anzeigen, wie beispielsweise ein Sammeln von Daten von einer spezifischen IoT-Plattform, eine Datenverarbeitung, ein Lernen, etc., und die sequentielle Handhabung von diesen Prozessen kann einem Arbeitsablauf entsprechen, der einen Ablauf durchführt. Die Spezifikation von Komponenten bezieht sich auf Details, die für jede Elementkomponente definiert sind, wie beispielsweise von welcher Vorrichtung Daten zu sammeln sind, welches Verbindungsverfahren zu verwenden ist, ob empfangene Daten in einem Arbeitsspeicher oder einem Speicher zu speichern sind, welche Speicherinformation zu verwenden ist, wo ein Speicher ist, etc., um eine Arbeit darüber durchzuführen, von welchen Daten zu bringen sind, wie die Daten zu verarbeiten sind und zu welchen die Daten zu senden sind.
  • Durch den System-Definierer-Editor 70 kann ein Anwender (z.B. ein Datenwissenschaftler, ein Modellentwickler, ein Geschäftsentwickler, etc.) Maschinenkomponenten 64 definieren, die einen Arbeitsablauf bilden, und Eigenschaftsspezifikationskomponenten 62 zum Definieren von Parametern zum Bestimmen von Charakteristiken der Maschinenkomponenten 64 gemäß einer bestimmten Regel, und kann auch ein Komponenten- und Eigenschaftsspezifikations-Paar definieren und bearbeiten.
  • 3 ist ein beispielhaftes Diagramm eines GUI-Bildschirms 71 zum Darstellen einer Konfiguration des System-Definierers-Editors 70. Die folgende Beschreibung des GUI-Bildschirms 71 wird zur Beschreibung der Konfiguration und der Operation des System-Definierer-Editors 70 eingesetzt werden.
  • Der GUI-Bildschirm 71 enthält ein Funktionsmenü 72, eine Maschinentyp-Auswahleinheit 73, eine Komponentenauswahleinheit 74, eine Komponenteneigenschaftsauswahl/Bearbeitungseinheit 75 und eine Arbeitsablaufinstanzenspeicher/Untersuchungseinheit 76.
  • Das Funktionsmenü 72 ist ein Menü zum Auswählen verschiedener Funktionen des System-Definierer-Editors 70 und kann zusammengesetzt sein aus beispielsweise Menüelementen zum Auswählen von Funktionen, wie beispielsweise Neu (Schreiben eines neuen Arbeitsablaufs), Offen (Laden eines gesicherten Arbeitsablaufs), Sichern (Sichern eines Arbeitsablaufs), Laufenlassen (Laufenlassen eines Arbeitsablaufs), Ergebnis (Anschauen laufengelassener Ergebnisse) und Hilfe.
  • Die Maschinentypauswahleinheit 73 stellt verschiedene Maschinentypen zur Verfügung und lässt zu, dass ein Anwender einen erwünschten unter einer Vielfalt von Maschinentypen auswählt. Die Typen von Maschinen enthalten beispielsweise eine Echtzeitstreaming-Verarbeitungsmaschine, eine Stapelverarbeitungsanalysemaschine, eine Maschine für eine Datenverarbeitung auf eine Aufforderung hin, eine Auswertungsmaschine, eine Stapelverarbeitungsdatenaufnahmemaschine, eine Streamingmaschinenlernvorhersagemaschine, eine Maschine zum Bedienen einer Konvergenz auf eine Aufforderung hin, etc.
  • Die Komponentenauswahleinheit 74 stellt eine Liste verschiedener Maschinenkomponenten für jeden Komponententyp zur Verfügung, um zuzulassen, dass ein Anwender einen Komponententyp und eine Maschinenkomponente für den Komponententyp auswählt. Die nachstehende Tabelle 1 ist ein Beispiel einer Liste von Komponententypen und Maschinenkomponenten, welche durch die Komponentenauswahleinheit 74 zur Verfügung gestellt wird. [Tabelle 1]
    Komponententyp Maschinenkomponente
    Datenleser
    HttpServerLeser
    Leser Kafka-Leser
    Mongodb-Leser
    ...
    Dateienschreiber
    Schreiber Kafka-Schreiber
    Mongodb-Leser
    ...
    Auslösesession-Steuerung
    Steuerung Auslösesessionstreamingsteuerung
    ...
    Auslöse-Läufer
    Läufer Tensorfluss-Läufer
    ...
    Operator MinMax-Skalierer
    Aggregator
    ...
  • Die Komponenteneigenschaftsauswahl/Bearbeitungseinheit 75 kann Eigenschaften der durch die Komponentenauswahleinheit 74 ausgewählten Maschinenkomponente zur Verfügung stellen, um zuzulassen, dass ein Anwender nach den Eigenschaften fragt, diese auswählt und bearbeitet.
  • Die Arbeitsablaufinstanzenauswahleinheit 76 zeigt eine Liste an, in welcher früh erzeugte Arbeitsabläufe gespeichert sind. Ein Arbeitsablauf, den ein Anwender wünscht, erneut zu verwenden, kann unter den Arbeitsabläufen ausgewählt werden. Der ausgewählte Arbeitsablauf kann erneut editiert bzw. bearbeitet werden, oder das Framework 10 kann angefragt werden, den ausgewählten Arbeitsablauf ohne ein erneutes Editieren durchzuführen. Die erneute Verwendung kann auf den gesamten Arbeitsablauf abzielen oder kann auf jede einzelne Maschine abzielen, die im Arbeitsablauf enthalten ist, um die Maschinen zu editieren oder auszuführen.
  • Wenn der System-Definierer-Editor 70 eine Arbeitsablaufspezifikationsdatei herstellt, wird die Datei zur Systemkonfigurationseinheit 30 des Frameworks 10 zur Verfügung gestellt, das in 1 gezeigt ist. In diesem Fall kann das Frontend 77 dazu dienen, die Arbeitsablaufspezifikation zu empfangen und sie zur Systemkonfigurationseinheit 30 zu transferieren.
  • Kehrt man zurück zu den 1 und 2, fungiert die Ressourcenmanagementeinheit 30, um Komponenten zu managen, die nötig sind, um den Arbeitsablauf durchzuführen. Wie es in 2 detailliert gezeigt ist, enthält die Ressourcenmanagementeinheit 20 folgendes:
    • - eine Eigenschaftsspezifikationskomponentenmanagementeinheit 20, die konfiguriert ist, um Eigenschaftsspezifikationskomponenten 62 zu managen (und auch upzudaten), in welchen Eigenschaftsspezifikationen zum Bestimmen von Charakteristiken oder Eigenschaften von Komponenten einer Arbeitsablaufinstanz enthalten sind, und eine Liste der Eigenschaftsspezifikationskomponenten 62; und
    • - eine Maschinenkomponentenmanagementeinheit 24, die konfiguriert ist, um Komponenten zur Ausführung (d.h. Maschinenkomponenten) zu managen (und auch upzudaten), um eine Liste der Komponenten hinzuzufügen.
  • Ebenso kann die Ressourcenmanagementeinheit 20 zusätzlich eine Arbeitsablaufspezifikationsinstanzenmanagementeinheit 26 enthalten, die konfiguriert ist, um Arbeitsablaufspezifikationsinstanzen zu managen, die zuvor erzeugt und gespeichert worden sind. Die Arbeitsablaufspezifikationsinstanzenmanagementeinheit 26 speichert und managt die Arbeitsablaufspezifikationsinstanzen so, dass die Arbeitsablaufspezifikationsinstanzen später gemäß einer Anfrage vom System-Definierer-Editor 70 über z.B. die Arbeitsablaufinstanzenauswahleinheit 76 der 3 verwendet werden können.
  • Zusätzlich fungiert die Systemkonfigurationseinheit 30 in 1, um eine Komponente zu erzeugen, die zum Durchführen des erzeugten Arbeitsablaufs nötig ist. Die Systemkonfigurationseinheit 30 konfiguriert nötige Maschinenkomponentenbehälter 32 gemäß einer Arbeitsablaufspezifikation, die durch das Frontend 77 durchgelaufen ist, um Maschineninstanzen zu erzeugen.
  • Spezifischer enthält unter Bezugnahme auf 2 die Systemkonfigurationseinheit 30 folgendes:
    • - eine Arbeitsablaufeigenschaftsspezifikationszusammenbaueinheit 34, die eine Leistungsfähigkeitsplattform, die Arbeitsablaufspezifikation konfiguriert, die vom System-Definierer-Editor 70 empfangen ist, zu den Eigenschaftsspezifikationskomponenten bindet, um eine Reihe von Eigenschaftsspezifikationskomponenten zu erzeugen, und
    • - eine Arbeitsablaufkonfigurationseinheit 36, die einen Arbeitsablauf konfiguriert, der eine Plattform durchführt, durch Extrahieren definierter Maschinenkomponenteninformation von den zusammengebauten Eigenschaftenspezifikationskomponenten 62, um die Eigenschaftsspezifikationskomponenten 62 und die Maschinenkomponenten 64 zu binden.
  • Die Arbeitsablaufeigenschaftsspezifikationszusammenbaueinheit 34 bindet die Arbeitsablaufspezifikationen zum Konfigurieren des Arbeitsablaufs, der eine Plattform durchführt, an die Eigenschaftsspezifikationskomponenten 62, um eine Reihe von Eigenschaftsspezifikationskomponenteninstanzen zu erzeugen. Beispiele der durch die Arbeitsablaufeigenschaftsspezifikationszusammenbaueinheit 34 erzeugten Eigenschaftsspezifikationskomponenten 62 enthalten Protobuf-Nachrichtenobjekt von Google, Fallklasse von Scala, Eigenschaftsobjekt von Java und Ähnliches.
  • Die Arbeitsablaufkonfigurationseinheit 36 konfiguriert eine Arbeitsablaufleistungsfähigkeitsinstanzeneinheit 50 dynamisch, die eine Reihe von Maschineninstanzen enthält, zum Durchführen des Arbeitsablaufs durch Binden der Maschinenkomponenten 64, die den Arbeitsablauf bilden, mit den Eigenschaftsspezifikationskomponenten, die Parameter zum Bestimmen der Charakteristiken der Maschinenkomponenten 64 definieren, und dann durch Binden von Instanzen der Maschinenkomponenten, die durch den ersten Bindungsprozess mit den Maschinenbehältem erzeugt sind. In der Arbeitsablaufleistungsfähigkeitsinstanzeneinheit 50 werden eine oder mehrere Maschinen 32 dynamisch erzeugt und ausgeführt durch die Arbeitsablaufkonfigurationseinheit 36. Diese Maschinen 32, die erzeugt werden, um einen Arbeitsablauf durchzuführen, können als ein unabhängiges Programmpaket auf derselben Computermaschine oder auf Computermaschinen, die miteinander über ein Netzwerk verbunden sind, genutzt und ausgeführt werden, oder können in Einheiten einer virtuellen Maschine gepackt werden und bei unterschiedlichen physikalischen Computermaschinen genutzt werden.
  • Die Systemsteuereinheit 40 der 1 und 2 ist ein Modul zum Spielen von Schlüsselrollen des Frameworks der vorliegenden Erfindung, wie beispielsweise zum Dienen, um die Maschineninstanzen 32 anzutreiben, die durch die Systemkonfigurationseinheit 30 erzeugt sind, gemäß der Verarbeitungsprozedur, oder zum Beenden des Antreibens der Maschineninstanzen 32. Ebenso steuert die Systemsteuereinheit 40 die Ausführung durch Antreiben von einer oder mehreren Maschinen 32, die in der Arbeitsablaufleistungsfähigkeitsinstanzeneinheit 50 erzeugt sind, auf eine Weise, die in den Arbeitsablaufeigenschaftsspezifikationen definiert ist. Anders ausgedrückt wird dann, wenn die Systemsteuereinheit 40 eine Arbeitsablaufleistungsfähigkeitsanfrage zu der Arbeitsablaufleistungsfähigkeitsinstanzeneinheit 50 durchführt, der Arbeitsablauf durchgeführt. Für selbst irgendeine erwünschte Domäne macht es dies möglich, ein Ziel eines durch einen Anwender erzeugten Arbeitsablaufs zu erreichen.
  • Beispielsweise kann die Systemsteuereinheit 40 eine oder mehrere Maschinen 32 steuern, die mehrere Typen von unterschiedlichen Datenquellen und Datenzielorten haben, so dass sie auf eine pipelinemäßige Weise ausgeführt werden. Alternativ kann die Systemsteuereinheit 40 eine oder mehrere Maschinen 32 steuern, die mehrere Typen von unterschiedlichen Datenquellen und Datenzielorten haben, so dass sie gleichzeitig ausgeführt werden. Verschiedene Typen von Maschinenkonfigurationen werden nachstehend detailliert beschrieben werden.
  • 4 zeigt eine Prozedur zum Konfigurieren einer Maschine 32 aus Arbeitsablaufspezifikationen, die durch den System-Definierer-Editor 70 erzeugt sind.
  • Zuerst empfängt die Arbeitsablaufkonfigurationseinheit 36 der Systemkonfigurationseinheit 30 Arbeitsablaufspezifikationen (340) und erzeugt eine Reihe von Eigenschaftsspezifikationskomponenteninstanzen, die Eigenschaftsspezifikationen von Maschinenkomponenten enthalten, um eine Maschine zu konfigurieren (342). Eine Eigenschaftsspezifikationskomponente 62, die in diesem Fall verwendet ist, kann das Protobuf-Nachrichtenobjekt von Google, die Fallklasse von Scala oder eine andere „Klasse“, die einen Wert in einer Programmsprache enthalten kann, sein.
  • Die Arbeitsablaufkonfigurationseinheit 36 spezifiziert die Eigenschaftsspezifikationskomponenteninstanzen als Erzeugerparameter der Maschinenkomponente 64 und erzeugt Maschinenkomponenteninstanzen (344).
  • Wenn Maschineninstanzen, die eine Steuerung, einen Leser, einen Läufer, einen Schreiber und einen Einheitenoperator enthalten, der die Maschine bildet, erzeugt ist, verbindet die Arbeitsablaufkonfigurationseinheit 36 die Maschineninstanzen dynamisch mit dem Maschinenkomponentenbehälter 31 durch Verwenden einer Maschinenkomponentenbehälterinstanz als ein Erzeugerparameter, um eine Maschineninstanz 32 zu erzeugen (346). Eine Maschineninstanz 32 wird für jede Maschinendefinition auf dem Arbeitsablauf erzeugt und dann durch die Arbeitsablaufleistungsfähigkeitsinstanzeneinheit 50 ausgeführt und gemanagt.
  • Durch die Prozedur der 4 wird die Arbeitsablaufleistungsfähigkeitsinstanz dynamisch konfiguriert. Hier kann eine Maschine in der Form einer virtuellen Maschine definiert und konfiguriert werden.
  • Die 5 bis 10 zeigen verschiedene Konfigurationsverfahren der Maschine 32 als Beispiele der Arbeitsablaufleistungsfähigkeitsinstanz, die durch die Arbeitsablaufkonfigurationseinheit 36 konfiguriert ist, die unter Bezugnahme auf 1 beschrieben ist.
  • Die in 5 gezeigte Basismaschine 32 enthält einen Leser 322, der konfiguriert ist, um Daten von einer oder mehreren Datenquellen zu bringen; einen oder mehrere Schreiber 324, die konfiguriert sind, um Daten, die intern verarbeitet sind, in einen oder mehrere Datenzielorte zu schreiben; einen Läufer 326, der konfiguriert ist, um ein separates Ausführungsprogramm oder eine Plattform zum Verarbeiten von Eingangsdaten auszuführen oder um eine Session zu managen; und eine Steuerung 328, die konfiguriert ist, um solche Daten durch den Leser einzugeben und um die Daten über den Läufer zu verarbeiten, und die verantwortlich für eine Reihe von Steuerungen zum Ausgeben der verarbeiteten Daten ist.
  • Die Steuerung 328 fungiert, um eine Reihe von Prozessen zu steuern, die mit dem Leser 322, dem Schreiber 324, dem Läufer 326 und einem Einheitenoperator 323, der nachstehend beschrieben werden wird, durchgeführt sind. Die Steuerung 328 führt eine eingegebene Anfrage durch, um den Leser 322 anzuweisen, Daten von einer Datenquelle zu lesen, führt eine Verarbeitungsanfrage durch, um den Läufer 326 anzuweisen, ein Verarbeitungs-Framework anzutreiben, um die durch den Leser 322 gelesenen Daten zu verarbeiten und die verarbeiteten Daten zum Schreiber 324 zu senden, und führt eine Ausgabeanfrage durch, um den Schreiber 324 anzuweisen, die verarbeiteten Daten in einen Datenzielort zu schreiben.
  • Der Leser 322 der Maschine 32 fungiert, um Daten von irgendeinem Typ von Datenspeicher (nicht gezeigt) unter einem internen Speicherpuffer oder Cache, einem Dateiensystem, einem Nachrichtensystem, einer Datenbank und einem Netzwerktreiber zu lesen. Gleichermaßen fungiert der Schreiber 324, um Daten in irgendeinem Typ von Datenspeicher (nicht gezeigt) unter einem internen Speicherpuffer oder Cache, einem Dateiensystem, einem Nachrichtensystem, einer Datenbank und einem Netzwerktreiber zu schreiben. Der Einheitenoperator 323 fungiert, um Daten zu empfangen, zu verarbeiten und auszugeben. Beispielsweise kann der Einheitenoperator 323 eine Implementierung von verschiedenen Datenverarbeitungsfunktionen sein, die in dem Filter/Integrations/Reduktions/Umwandlungs-Verfahren enthalten sind, auf das bei einer Technologie zur Auswertung größerer Datenmengen Bezug genommen ist. Der Läufer 326 kann irgendein Programm oder externe Plattformen/Frameworks sein, die nötig sind, um die Daten zu verarbeiten, und kann einen Verbinder, eine Steuerung einen Sessionmanager und Ähnliches enthalten, von welchen jeder mit einer Plattform für tiefes Lernen verbunden sein kann oder eine davon ausführen kann, wie beispielsweise Tensorfluss, Caffe für eine Analyse für tiefes Lernen und ein Auslösen für eine Verarbeitung von Big Data und eine wissensbasierte Verarbeitungsmaschine, wie beispielsweise Jena.
  • Andererseits kann dann, wenn Knoten in der Reihenfolge des Lesers 322, eines oder mehrerer Einheitenoperatoren 323a bis 323c und des Schreibers 324 konfiguriert sind, wie es in den 5 und 6 gezeigt ist, die Steuerung 328 eine Steuerung in einer sequentiellen Verarbeitungsweise durchführen, in welcher Daten sequentiell in eine Pipeline gebracht und zum nächsten Knoten transferiert werden, einer simultanen Verarbeitungsweise, in welcher jeder Knoten gleichzeitig ausgeführt wird, und einer gleichzeitigen/sequentiellen Verarbeitungsweise, die eine Kombination der zwei Arten ist.
  • 6 zeigt eine Maschine, die konfiguriert ist, um durch Verwenden von einem oder mehreren aufeinanderfolgenden Einheitenoperatoren 323a bis 323c auf eine pipelinemäßige Weise unter den Weisen zum Konfigurieren der Basismaschine 32 der 5 eine sequentielle Datenverarbeitung in einer Reihe von Prozessen zum Verarbeiten von Eingangsdaten durch die Steuerung 328 durchzuführen und dann die verarbeiteten Daten zum Schreiber 324 zu transferieren. Die Steuerung 328 führt eine Eingabeanfrage durch, um den Leser 322 anzuweisen, Daten von einer Datenquelle zu lesen, führt eine Operatorausführungsanfrage durch, um den Läufer 326 anzuweisen, ein Datenverarbeitungs-Framework anzutreiben und die durch den Leser 322 gelesenen Daten zu verarbeiten, führt eine pipelinemäßige Verarbeitungsausführungsanfrage zu jedem der Einheitenoperatoren 323a bis 323c durch und führt eine Ausgabeanfrage durch, um den Schreiber 324 anzuweisen, die verarbeiteten Daten in einen Datenzielort zu schreiben. Gemäß dem Konfigurationsverfahren der 6 ist es möglich, verschiedene Domänen gemäß ihren Aufgaben durch Verwenden einer Kombination von verschiedenen Einheitenoperatoren auf einfache Weise zu handhaben. Die Einheitenoperatoren 323a bis 323c können Implementierungen von Verfahren zum Filtern, zur Integration, zur Reduktion und zur Umwandlung entsprechend Techniken zur Auswertung größerer Datenmengen sein.
  • 7 zeigt eine spezifische Ausführungsform einer Datenverarbeitungsmaschine, die in 6 gezeigt ist. Die Datenverarbeitungsmaschine führt ein Auslöse-Framework zur Datenverarbeitung aus, liest Daten durch einen Leser, der konfiguriert ist, um Daten von einer Datei, JDBC, Kafka, etc. zu lesen, verarbeitet die Daten durch einen Einheitenoperator zum Entfernen einer spezifischen Spalte, einen Datenverknüpfungs-Einheitenoperator, einen Einheitenoperator zur Unterstellung eines fehlenden Werts, einen Skalierungs-Einheitenoperator, einen Filterungs-Einheitenoperator und einen Pivot-Einheitenoperator und gibt die verarbeiteten Daten zu der Datei, JDBC, Kafka, etc. durch einen Schreiber aus.
  • 8 zeigt eine Konfiguration einer Maschine mit einem Schema, bei welchem die Steuerung 328 der 6 die Einheitenoperatoren 323a bis 323c antreibt, d.h. einer Maschine mit einem Schema, bei welchem ein oder mehrere Einheitenoperatoren angetrieben werden, um Daten gleichzeitig zu verarbeiten, zusätzlich zu einem Schema, bei welchem Daten vom Leser 322 empfangen werden und durch eine Reihe von Einheitenoperatoren auf eine pipelinemäßige Weise sequentiell verarbeitet werden.
  • Als eine weitere Ausführungsform der Maschinen 32 mit den oben beschriebenen verschiedenen Konfigurationen kann der Läufer 326 verbunden sein mit verschiedenen Softwareprogrammen oder Verarbeitungs-Frameworks, wie beispielsweise einem Framework für tiefes Lernen, wie beispielsweise Caffe oder Tensorfluss, einem Framework zur Verarbeitung von Big Data, wie beispielsweise Spark bzw. Auslösen oder Hadoop MapReduce, und einem Analyse-Framework, wie beispielsweise R oder Python, oder diese enthalten.
  • Als noch eine weitere Ausführungsform kann die Maschine 32 ausgestattet sein mit einem Leser und einem Schreiber, die verschiedene Datenpfade in demselben System als Datenquellen und Datenzielorte verwenden. Das bedeutet, dass die Maschine einen Leser und einen Schreiber hat, die konfiguriert sind, um als Datenquellen und Datenzielorte Quellen (im selben System) mit verschiedenen Logiktreiberkonzepten, wie beispielsweise einem Puffer innerhalb eines Speichers oder einem Cache, einem Dateiensystem, einem Nachrichtensendesystem, einer Datenbank und einem Netzwerk definieren, um Daten von den Datenquellen zu empfangen und Daten zu den Datenzielorten auszugeben.
  • Als noch eine weitere Ausführungsform kann die oben beschriebene Maschine 32 als eine Maschine konfiguriert sein, die Datenpfade verwendet, die in unterschiedlichen Systemen oder Netzwerke vorhanden sind, als eine Datenquelle und ein Datenzielort. Dafür kann Netzwerkadresseninformation, Host-Information oder Information für entfernte Treiber in den Einstellungen des Lesers und des Schreibers enthalten sein. Durch getrenntes Verwenden unterschiedlicher Datenquellen und Datenzielorte für den Leser und den Schreiber ist es möglich, die Maschine als eine Streaming- bzw. Stromverarbeitungsmaschine zwischen der Zielortquelle und dem Datenzielort oder als ein Filter auf dem Datenpfad zu verwenden.
  • 9 zeigt eine Ausführungsform, bei welcher dann, wenn es eine Vielzahl von Arbeitsablaufdurchführungsmaschinen 32a bis 32c gibt, ein Datenübertragungspfad 338 auf eine pipelinemäßige Weise verwendet wird, wobei Daten von einem Datenzielort eines Schreibers von einer Maschine zu einer Datenquelle eines Lesers einer anderen Maschine ausgegeben werden. Hier kann der Datenübertragungspfad 338 beispielsweise Kafka sein. Durch Verwenden der in 9 gezeigten Konfiguration ist es möglich, einen komplizierten Arbeitsablauf durch Kooperation der Maschinen 32a bis 32c zum Verarbeiten unterschiedlicher Verwendungen eines Arbeitsablaufs durchzuführen.
  • In 9 kann oder können eine oder mehrere Maschinen 32a bis 32c auch unter unterschiedlichen physikalischen Umgebungen (z.B. Netzwerken, Clustern, etc.) sein und können unterschiedliche Typen von Läufern haben. Wenn beispielsweise die erste Maschine 32a mit einem Läufer zum Verarbeiten von Daten kooperiert und die zweite Maschine 32b mit einem Framework für tiefes Lernen kooperiert, ist es möglich, durch den Datenübertragungspfad 338 einen Arbeitsablauf zum Lösen eines komplizierten Problems in unterschiedlichen Umgebungen auszuführen. In diesem Fall können die Maschinen gleichzeitig, sequentiell oder individuell zu spezifischen Zeitpunkten ausgeführt werden.
  • 10 zeigt ein Beispiel, bei welchem ein Arbeitsablaufdurchführungssystem auf eine pipelinemäßige Weise konfiguriert ist, wobei eine oder mehrere Maschinen 32a bis 32c eine Verarbeitung unter Verwendung unterschiedlicher Typen von Datenübertragungspfaden durchführen (z.B. eines Dateiensystemübertragungspfads 340 und eines Netzwerkstromübertragungspfads 342), und zwar für jeweils eine Datenquelle und einen Datenzielort. In diesem Fall hat jede Maschine eine Vielzahl von Lesern und eine Vielzahl von Schreibern. Hier zeigt der Dateiensystemübertragungspfad 340 einen Stapelverarbeitungsübertragungspfad an und zeigt ein Netzwerkstrom-Übertragungspfad 342 einen Echtzeitübertragungspfad an. Gemäß dem Schema der 10 ist es möglich, ein Arbeitsablaufsystem mit einer Struktur, wie beispielsweise einer Lambda-Architektur, zu konfigurieren, wobei sowohl eine Echtzeitverarbeitung als auch eine Stapelverarbeitung durchgeführt werden kann.
  • Spezifische Arbeitsablaufdienstszenarien werden eingeführt werden, um beim Verstehen der Struktur und der Operation des oben beschriebenen Frameworks der vorliegenden Erfindung zu helfen.
  • 11 stellt ein Beleuchtungs-/Temperatur-Steuerungsarbeitsablaufdienstszenario basierend auf IoT und AI (künstlicher Intelligenz) dar. Ein Arbeitsablaufmaschinen-Framework 10 empfängt einen Temperaturerfassungswert von einem Temperatursensor 81 in einem Gebäude und führt einen vordefinierten Arbeitsablauf durch eine Maschine (Maschinen) durch, die im Framework 10 erzeugt ist (sind), um eine smarte Glühbirne 82 zu steuern, um eine optimale Beleuchtungssteuerung durchzuführen, und um einen smarte System-Klimaanlagen-/Heizeinheit 83 zu steuern, um eine optimale Temperatursteuerung durchzuführen.
  • Das Bezugszeichen 80 zeigt eine Beleuchtung mit künstlicher Intelligenz und einen Temperatursteuerungsdienst zum Vorhersagen einer Änderung bezüglich einer Temperatur in der Zukunft, beispielsweise nach einer Stunde, durch ein Vorhersagemodell durch Verwenden von Daten, die vom Temperatursensor 81 eingegeben sind, an; zum Schätzen eines Werts für eine Beleuchtungseinstellung und eine Klimaanlagentemperatureinstellung, die für die vorhergesagte Temperatur geeignet ist; und zum Senden von Beleuchtungseinstellungswerten für die Ssarte Glühbirne und von Temperatureinstellungswerten für die smarte System-Klimaanlagen-/Heizeinheit 83.
  • 12 stellt einen Verkehrsgeschwindigkeitsüberwachungsdienst basierend auf tiefem Lernen dar. Ein Arbeitsablaufmaschinen-Framework 10 kann Geschwindigkeitsinformation von Verkehrsgeschwindigkeitssensoren (Simulatoren) 84 empfangen, die an einer Verkehrsstelle in einem spezifischen Gebiet eingebaut sind, einen vordefinierten Arbeitsablauf durch eine Maschine (Maschinen) durchführen, die im Framework 10 erzeugt ist (sind), und Leistungsfähigkeitsdaten zu einem intelligenten Verkehrsgeschwindigkeitsvorhersagedienst 85 liefern, der in dem entsprechenden Gebiet eingebaut ist, so dass die Daten durch ein Auto-Armaturenbrett 87 oder einen Bildschirm eines Smartphones 88 überwacht werden können. Die durch das Auto 87 oder das Smartphone 88 überwachten Inhalte sind beispielsweise Verkehrsgeschwindigkeitsinformation, die auf einer Karte des spezifischen Gebiets angezeigt wird, wie es durch das Bezugszeichen 86 angezeigt ist.
  • 13 zeigt eine interne Konfiguration des Arbeitsablaufmaschinen-Frameworks 10 der 11. Die im Arbeitsablaufmaschinen-Framework 10 erzeugten Maschinen enthalten eine Aufnahme/Daten/Vorhersage-Maschine 52 und eine Bedienungsmaschine 53.
  • Elemente der Aufnahme/Daten/Vorhersage-Maschine 52 sind wie folgt:
    • 522: Ein Stromleser, der konfiguriert ist, um hereinkommende Daten durch Öffnen eines Web-Serviceports zu lesen;
    • 528: Eine Steuerung, die konfiguriert ist, um einen Leser 522, Operatoren 523a bis 523f und einen Schreiber 524 sequentiell zu steuern, wenn die Anzahl von Teilen von Stromdaten, die gelesen sind, größer als eine bestimmte Anzahl ist;
    • 523a: Ein Operator, der konfiguriert ist, um eine Spalte zu extrahieren, bei welcher ein Temperaturwert unter den Teilen von Daten angeordnet ist;
    • 523b: Ein Operator, der konfiguriert ist, um einen Wert auf innerhalb eines Bereichs eines spezifischen Werts zu normalisieren;
    • 523c: Ein Operator, der konfiguriert ist, um eine Spalte in eine Zeile umzuwandeln oder eine Zeile in eine Spalte umzuwandeln;
    • 523d: Ein Operator, der konfiguriert ist, um einen transferierten Wert durch Verwenden eines spezifizierten Maschinenlernmodells vorherzusagen/zu bestimmen;
    • 523e: Ein Operator, der konfiguriert ist, um einen Wert zu innerhalb eines Bereichs eines spezifischen Werts zur Entnormalisierung zurückzubringen;
    • 523f: Ein Operator, der konfiguriert ist, um eine spezifische Spalte, die einen Labelwert unter mehreren Werten enthält, die als ein Ergebnis einer Vorhersage erzeugt sind, zu extrahieren;
    • 524: Ein Schreiber, der konfiguriert ist, um einen Endwert in einer Strommaschine (z.B. Kafka) zu schreiben; und
    • 526: Ein Läufer, der konfiguriert ist, um eine Umgebung bereitzustellen, in welcher ein Operator ausgeführt werden kann.
  • Elemente der Bedienungsmaschine 53 sind wie folgt:
    • 532: Ein Leser, der konfiguriert ist, um Werte aus einer Strommaschine zu lesen, wann immer es nötig ist;
    • 536: Ein Web-Server, der konfiguriert ist, um ein spezifisches Web-Port zu öffnen und auf eine Anfrage von einem Endanwender (Rest-Läufer) zu warten; und
    • 538: Eine Steuerung, die konfiguriert ist, um eine Reihe von Abläufen zu steuern, um einen Verarbeitungsergebniswert der Aufnahme/Daten/Vorhersage-Maschine 52 durch den Leser 532 zu lesen, eine Datenbank nach einem optimalen Wert zu durchsuchen und eine Antwort zu senden, wenn eine Anfrage empfangen wird, und zwar durch das spezifische Web-Port auf dem Web-Server, der auf dem Rest-Läufer 536 läuft.
  • Ein Temperaturerfassungswert des Temperatursensors 81 wird zur Aufnahme/Daten/Vorhersage-Maschine 52 als ein REST-Signal eingegeben und durch eine Vielzahl von Operatoren verarbeitet, die durch den System-Definierer-Editor 70 entwickelt sind. Ein Vorhersageergebniswert wird aus einem Speicher gelesen und zur Bedienungsmaschine 53 transferiert. Gemäß dem Temperaturerfassungswert des Temperatursensors 81 wird die smarte Glühbirne 82 zur automatischen Beleuchtungssteuerung gesteuert.
  • 14 zeigt ein Beispiel einer Konfiguration einer Bedienungsmaschine zum Bereitstellen eines intelligenten Dienstes als eine Maschine zum Bereitstellen eines Dienstes zu einem Client oder einem Anwender. Ein Leser 322, eine Vielzahl von Pipeline-Operatoren 323a bis 323c, ein Schreiber 324, ein Läufer 326 und eine Steuerung 328 sind ähnlich denjenigen, die unter Bezugnahme auf 8 beschrieben sind. Jedoch ist die dienende Maschine bzw. Bedienungsmaschine der 14 konfiguriert, um zur Dienstausführung in den Arbeitsablaufdiensten der 11 und 13 zu dienen. In 14 sind Spark bzw. Auslösen, Tensorfluss, Jena (Zeit), REST-Server, Jena (Raum) und Jena (domänenspezifisch) gezeigt, die externe Systeme sind, die mit jeder der Maschinenkomponenten kooperieren.
  • Eine Steuerung der Bedienungsmaschine kann die Maschine durch Verwenden eines Lesers konfigurieren, der konfiguriert ist, um verarbeitete Daten von einer Maschine zu lesen, die einen Läufer hat, wie beispielsweise Spark, oder verarbeitete Daten von einer Maschine zu lesen, die ein Framework für tiefes Lernen hat, wie beispielsweise Tensorfluss als einen Läufer, einen Operator, der konfiguriert ist, um ontologiebasierte Inferenz unter Verwendung des Werts durchzuführen, und einen Läufer, der konfiguriert ist, um das Ergebnis durch die REST-Schnittstelle zu bedienen, um somit einen intelligenten Dienst bereitzustellen.
  • 15 zeigt einen internen Aufbau des Arbeitsablaufmaschinen-Frameworks 10 der 12. Die im Arbeitsablaufmaschinen-Framework 10 erzeugten Maschinen enthalten: eine Datenmaschine 54, die konfiguriert ist, um dann, wenn Zeit/Geschwindigkeit/TRV in Echtzeit alle 5 Minuten von einem Verkehrszentrum 84 mit 1382 Verbindungen übertragen sind, Zeit/Geschwindigkeit/TRV zu lesen, zeitserielle Daten für jede Verbindung zum Zwecke einer Tensorflow-RNN-Operator vorzuverarbeiten 24 und die vorverarbeiteten Daten zu übertragen bzw. zu senden; und eine Vorhersagemaschine 55, die konfiguriert ist, um zeitserielle Daten für jede Verbindung zum Zwecke einer Tensorfluss-RNN-Operation zu empfangen 24 und einen vorhergesagten Wert entsprechend 15 Minuten später auszugeben.
  • Gleich denjenigen, die unter Bezugnahme auf die 5 bis 8 beschrieben sind, enthält die Datenmaschine 54 einen Leser 542, eine Steuerung 548, einen Läufer 546 und Operatoren 543a bis 543f. Die Vorhersagemaschine 55 enthält auch einen Leser 552 und eine Steuerung 558, gleich denjenigen die unter Bezugnahme auf die 5 bis 8 beschrieben sind. Jedoch ist der Tensorflow 555, der konfiguriert ist, um eine auf einem rekurrenten neuronalen Netz (RNN) basierende Vorhersage durchzuführen, enthalten, anstelle eines Läufers.
  • 16 zeigt ein Verfahren zum dynamischen Konfigurieren eines domänenübergreifend adaptiven Arbeitsablaufmaschinen-Frameworksystems durch kooperatives Verbinden der oben beschriebenen Vielzahl von einzeldomänenadaptiven Arbeitsablaufmaschinen-Frameworks 10 miteinander über ein Netzwerk. Wenn die Arbeitsablaufkonfiguration der 1 für eine übergreifende Domäne beabsichtigt ist, ist ein domänenübergreifendes Konvergenzsystem 10' zum allgemeinen Managen und Steuern von einem oder mehreren einzeldomänenadaptiven Arbeitsablaufmaschinen-Frameworks 10 zusätzlich enthalten, um ein domänenübergreifend adaptives Arbeitsablaufmaschinen-Framework zu implementieren.
  • Das domänenübergreifende Konvergenzsystem 10' hat grundsätzlich eine Struktur und Funktionen gleich denjenigen des Einzeldomänen-Arbeitsablaufmaschinen-Frameworks 10 der 1 oder der 2 und dient dazu, verschiedenen Domänen zu integrieren und zu schichten. Das domänenübergreifende Konvergenzsystem 10' managt Ressourcen in Bezug auf eine domänenübergreifende Arbeitsablaufdurchführung, teilt einiges von dem domänenübergreifenden Arbeitsablauf zu jeder Domäne als ein Arbeitsablauf zu und führt den Arbeitsablauf auf einem Framework jeder Domäne durch. Demgemäß kann das domänenübergreifende Konvergenzsystem 10' eine domänenübergreifende Ressourcenmanagementeinheit 20', eine domänenübergreifende Systemkonfigurationseinheit 30' und eine domänenübergreifende Systemsteuereinheit 40' enthalten.
  • Wenn ein Anwender den System-Definierer-Editor 70' des oben beschriebenen Konzepts verwendet, um einen domänenübergreifend bezogenen Arbeitsablauf zu definieren und Arbeitsablaufspezifikationen zu erzeugen, die Anfragen dafür enthalten, welche Sensordaten gesammelt sein werden, welches Modell ausgewählt sein wird und wo eine erzeugte Maschine (erzeugte Maschinen) auf geeignete Weise genutzt sein werden, bestimmt das domänenübergreifende Konvergenzsystem 10' eine Domäne, zu welcher eine nötige Maschine (nötige Maschinen) gemäß dem Arbeitsablauf zu nutzen ist/sind, der im System-Definierer-Editor 70' definiert ist. In diesem Fall berücksichtigen Kriterien zum Bestimmen der Maschinennutzung beispielsweise eine Netzwerkbelastung, eine Leistungsfähigkeit, eine Entfernung innerhalb eines Netzwerks, welche Domäne optimal zur Verwendung einer spezifischen Maschine ist, und ob Komponenten zum Ausführen einer Maschine in einer entsprechenden Domäne vorhanden sind.
  • Die domänenübergreifende Ressourcenmanagementeinheit 20' empfängt periodisch einen Bericht für Arbeitsablaufressourcen von der Ressourcenmanagementeinheit 20 der Vielzahl von Einzeldomänen-Arbeitsablaufmaschinen-Frameworks 10 (siehe 1 oder 2) und updatet und managt die Arbeitsablaufressourcen. Beispielsweise können die Arbeitsablaufressourcen eines oder mehreres von Komponentenressourcen zum Durchführen des Arbeitsablaufs, Netzwerkverbindungsinformation, Hardwareressourceninformation, Spezifikationsinformation einer virtuellen Maschine, Konfigurationsinformation eines Systems, Information über eine verfügbare Vorrichtung eines Systems und verfügbare Zustände enthalten. Ebenso updatet die domänenübergreifende Ressourcenmanagementeinheit 20' verfügbare Komponenten, Hardware, Netzwerkinformation und Vorrichtungsinformation für jede Domäne durch Ressourceninformation, die von jeder Domäne empfangen ist, und behält sie bei. Die durch die Ressourcenmanagementeinheit 20' gemanagten Ressourcen können beispielsweise eine Liste von Maschinenkomponente für jede Domäne, Daten zur Kostenschätzung, Zuverlässigkeit zwischen Domänen, etc. enthalten.
  • Um eine vom System-Definierer-Editor 70' empfangene domänenübergreifende Arbeitsablaufinstanzenspezifikation zu handhaben, unterteilt die domänenübergreifende Systemkonfigurationseinheit 30' die einzelne domänenübergreifenden Arbeitsablaufinstanzenspezifikation in eine Vielzahl von Einzeldomänen-Arbeitsablaufspezifikationen unter Bezugnahme auf Lokalisierungen von und ein Verbindungsverfahren für verfügbaren Ressourcen, die von der domänenübergreifenden Ressourcenmanagementeinheit 20' empfangen sind, und nutzt die Einzeldomänen-Arbeitsablaufspezifikationen zu den Einzeldomänen-Arbeitsablaufmaschinen-Frameworks 10. Jedes der Einzeldomänen-Arbeitsablaufmaschinen-Frameworks 10 konfiguriert dynamisch die Maschine(n), die zu jeder Domäne zugeordnet ist (sind).
  • Um ein Starten, ein Beenden oder ähnliches einer Ausführung eines Arbeitsablaufdurchführungssystems zu steuern, das durch jedes der Einzeldomänen-Arbeitsablaufmaschinen-Frameworks 10 erzeugt ist, das heißt eine oder mehrere Maschinen, die zu den Domänen genutzt ist oder sind, fragt die domänenübergreifende Systemsteuereinheit 40' eine Systemsteuereinheit 40 von jedem der Einzeldomänen-Arbeitsablaufmaschinen-Frameworks 10 an, um die Ausführung zu steuern, so dass das Arbeitsablaufdurchführungssystem auf der übergreifenden Domäne betrieben und fertiggestellt werden kann.
  • Das Arbeitsablaufmaschinen-Framework 10 von jeder Domäne konfiguriert dynamisch eine Maschine, die zu jeder Domäne zugeteilt ist, und treibt dann die Maschine gemäß der Ausführungsanfrage von der domänenübergreifenden Systemsteuereinheit 40' an, um eine Ausführung durchzuführen. In diesem Fall kann ein Datentransfer zwischen Maschinen direkt durch einen Netzwerktreiber durchgeführt werden, wie es unter Bezugnahme auf 10 beschrieben ist, und kann durch Verwenden von einem oder mehreren von verschiedenen Datenpfaden durchgeführt werden, wie beispielsweise ein Nachrichtensendesystem, wie beispielsweise eine verteilte Nachrichtensendewarteschlange und andere verteilte Dateiensysteme.
  • Die Systemsteuereinheit 40 von jedem Einzeldomänen-Arbeitsablaufmaschinen-Framework 10 sendet Signale, die beispielsweise den Fortschritt oder die Beendigung der Maschinen zurück zur domänenübergreifenden Systemsteuereinheit 40' des domänenübergreifenden Konvergenzsystems 10' anzeigen.
  • Um die Ressourceninformation upgedatet zu halten, fragt die domänenübergreifende Ressourcenmanagementeinheit 20' jedes Einzeldomänen-Arbeitsablaufmaschinen-Framework 10 nach der Ressourceninformation, die von jeder Domäne empfangen ist, das heißt nach verfügbaren Komponenten und Hardware, Netzwerkinformation, Vorrichtungsinformation für jede Domäne, etc. Zusätzlich unterteilt die domänenübergreifende Systemkonfigurationseinheit 30', während sie beim Durchführen eines domänenübergreifenden Arbeitsablaufs ist, den domänenübergreifenden Arbeitsablauf in einen oder mehrere Domänenarbeitsabläufe, um einen optimalen Maschinenarbeitsablauf auf den Arbeitsablaufmaschinen-Frameworks 10 von einer oder mehreren Domänen zu platzieren. Dafür fragt die domänenübergreifende Systemkonfigurationseinheit 30' die domänenübergreifende Ressourcenmanagementeinheit 20' nach der letzten Ressourceninformation auf jedem Einzeldomänen-Arbeitsablaufmaschinen-Framework 10 und beendet die Aufgabe einer Aufteilung in einen oder mehrere Domänenarbeitsabläufe durch Verwenden eines Prozesses zur Bestimmung von Maschinen, um auf jedem Einzeldomänen-Arbeitsablaufmaschinen-Framework 10 gemäß der optimalen Maschinennutzungspolitik konfiguriert zu sein (siehe Schritt 260 in 17). Als nächstes sendet die domänenübergreifende Systemkonfigurationseinheit 30' jeden aufgeteilten Domänenarbeitsablauf zu jedem der Einzeldomänen-Arbeitsablaufmaschinen-Frameworks 10, um ein System dynamisch zu konfigurieren, das die Maschine(n) zum Durchführen des domänenübergreifenden Arbeitsablaufs auf einer oder mehreren Domänen ausführen kann.
  • Jedes Einzeldomänen-Arbeitsablaufmaschinen-Framework 10 registriert eine Liste von seinen eigenen Ressourcen im domänenübergreifenden Konvergenzsystem 10' und fragt periodisch nach einem Updaten der Liste. Hier kann die Ressourcenliste eine Liste von Komponentenressourcen zur Arbeitsablaufdurchführung sein und kann auch Netzwerkverbindungsinformation, Hardwareressourceninformation, Spezifikationsinformation einer virtuellen Maschine, Konfigurationsinformation eines Systems, verfügbarer Vorrichtungsinformation eines Systems, verfügbaren Zuständen und ähnlichem entsprechen.
  • 17 zeigt eine Prozedur, bei welcher das domänenübergreifende Konvergenzsystem 10' der 16 eine Arbeitsablaufspezifikation empfängt, effektiv nutzt und durchführt. In diesem Fall kann der Arbeitsablauf ein einzeldomänenadaptiver Arbeitsablauf oder ein domänenübergreifend adaptiver Arbeitsablauf in Abhängigkeit von Aufgaben, die anzusprechen sind, oder Anwendungen sein.
  • Zuerst bestimmt der System-Definierer-Editor 70' einen Arbeitsablauf durch eine Arbeitsablauferzeugungsprozedur und definiert Arbeitsablaufspezifikationen einschließlich einer Gruppe von Maschinenkomponentenbehältern zum Erzeugen von Maschinen, die den Arbeitsablauf bilden (100). Wenn die Arbeitsablaufspezifikationen vom System-Definierer-Editor 70' empfangen werden, bestimmt das domänenübergreifende Konvergenzsystem 10', zu welcher Domäne ein Maschinenkomponentenbehälter (Maschinenkomponentenbehälter), der (die) in den Arbeitsablaufspezifikationen eingestellt ist (sind) genutzt werden wird (werden), und geht weiter zu einem Nutzungsprozess (200). Wenn die Spezifikationen für eine Maschine(n), die für den Arbeitsablauf nötig ist (sind) zu einer Domäne (Domänen) genutzt wird, sind alle Vorbereitungen zum Durchführen des Arbeitsablaufs für eine einzelne Domäne oder eine übergreifende Domäne beendet und wird der Arbeitsablauf schließlich ausgeführt (300).
  • Der Prozess 200, bei welchem die domänenübergreifende Systemkonfigurationseinheit 30' des domänenübergreifenden Konvergenzsystems 10' eine Nutzungsstelle von jedem Maschinenkomponentenbehälter und eine Nutzung der Maschinenkomponentenbehälter bestimmt, wird detailliert beschrieben werden, wie es folgt.
  • Zuerst prüft das domänenübergreifende Konvergenzsystem 10', ob eine anfängliche Quelle (d.h. die Stelle von durch eine Maschine zu sammelnden Daten, beispielsweise eine spezifische DB, eine Sensorstelle, etc.) und ein Endzielort (z.B. eine Datenquelle für eine andere Maschine oder eine Speicherstelle) von Daten, die für jede Maschine nötig sind, in derselben Domäne vorhanden sind (210). In diesem Fall können die Datenquelle und der Datenzielort eine loT-Vorrichtung sein, ein strukturierter Datenspeicher, wie beispielsweise eine Datenbank, ein Dateiensystem, oder ähnliches, und können auch ein Web-Serviceterminal sein.
  • Wenn die Datenquelle und der Zielort in derselben Domäne vorhanden sind, erkundigt sich das domänenübergreifende Konvergenzsystem 10' bei der Ressourcenmanagementeinheit darüber und führt eine Bestimmung darüber durch, ob eine Reihe von Maschinen beginnend von einer anfänglichen Datenquelle bis zu einem Endzielort konfiguriert sein kann, durch Verwenden von Ressourcen in der entsprechenden Domäne (220). Wenn die Maschinenkonfiguration möglich ist (z.B. alle Maschinenkomponenten, die zu der Maschinenkonfiguration fähig sind, in einer Ressourcenregistratur der entsprechenden Domäne vorhanden sind), nutzt das domänenübergreifende Konvergenzsystem 10' eine Maschinenspezifikation so, dass die Maschine in der entsprechenden Domäne dynamisch konfiguriert wird (230), und lässt somit zu, dass der Arbeitsablauf durchgeführt wird.
  • Wenn die Datenquelle und der Datenzielort der Maschine nicht zur selben Domäne im Schritt 210 gehören oder wenn im Schritt 220 bestimmt wird, dass die Konfiguration des Maschinenkomponentenbehälters durch verwenden der Ressourcen in der entsprechenden Domäne möglich ist, geht der Prozess weiter zu einem Schritt 240 zum Suchen nach einer anderen Domäne, die zu derselben Komponentenkonfiguration fähig ist (d.h. Suchen der Ressourcenmanagementeinheit) und zum Bestimmen einer Gruppe von alternativen Kandidatendomänen.
  • Wenn die alternative Kandidatendomänengruppe bestimmt ist, führt das domänenübergreifende Konvergenzsystem 10' eine Kostenschätzung durch, um eine alternative Domäne aus der Kandidatendomänengruppe zu bestimmen (250). In diesem Fall können die Kosten durch Kombinieren von einem oder mehreren des Folgenden berechnet werden: Zuverlässigkeit zwischen Domänen, die Menge an verfügbaren Computerressourcen und Netzwerktransferkosten, wie beispielsweise eine Entfernung über eine Netzwerktopologie, einen Netzwerkdurchsatz, eine erwartete Latenz oder ähnliches.
  • Als nächstes wendet das domänenübergreifende Konvergenzsystem 10' eine Nutzungsdomänenauswahlpolitik (Nutzungsdomänenauswahlpolitiken) an, um eine optimale nutzbare Domäne auszuwählen (260). In diesem Fall kann die Domänenauswahlpolitik eine Prozesszuteilungspolitik sein, die dasselbe Ausmaß oder Verhältnis von Ressourcen zu jeder Domäne zuteilt, eine optimale Energiepolitik, die eine Energieeffizienz berücksichtigt, eine Prioritätenpolitik, die Domänen zur Zuteilung priorisiert, oder ähnliches. Der Schritt für die Kostenberechnung und der Schritt für eine Politikauswahl sind nicht sequentiell.
  • Wenn Spezifikationen für alle Maschinen, die für den Arbeitsablauf nötig sind, zu einer entsprechenden Domäne (zu entsprechenden Domänen) genutzt wird (230), sind alle Vorbereitungen zum Durchführen des Arbeitsablaufs für die entsprechende Domäne oder eine übergreifende Domäne beendet und der Arbeitsablauf wird schließlich durchgeführt (300). Ausführungsanweisungen der Systemsteuereinheit 40' im domänenübergreifenden Konvergenzsystem 10' werden zur Systemsteuereinheit 40 von jedem Einzeldomänen-Framework 10 über einen Steuerkanal gesendet, um den Arbeitsablauf auszuführen.
  • Um das domänenübergreifend adaptive Arbeitsablaufmaschinen-Framework der 16 und 17 weiter zu verstehen, wird ein spezifisches zugehöriges Szenario und eine Systemkonfiguration zusätzlich unter Bezugnahme auf die 18 bis 20 beschrieben werden.
  • 18 stellt ein Szenario zum Erreichen einer smarten Stadt. Zuerst kann eine smarte Stadt durch eine optimale (smarte) öffentliche Energieversorgung und eine Steuerung auf eine Anforderung hin, eine öffentliche Verkehrssteuerung und eine optimale Steuerung bezüglich anderer Anwendungen erreicht werden. Die optimale öffentliche Energieversorgung und eine Steuerung auf eine Anforderung hin können erreicht werden durch eine optimale öffentliche Energieanforderungssteuerung und eine Versorgungssteuerung gemäß einer öffentlichen Energieversorgung und eine Bedarfspolitik. Hier kann die smarte öffentliche Energiebedarfssteuerung erreicht werden durch eine optimale Straßenlichtsteuerung, eine optimale Nebelsteuerung (z.B. Steuerung einer Nebelentfernungsvorrichtung) und andere optimale öffentliche Vorrichtungssteuerung). Die optimale Straßenlichtsteuerung kann erreicht werden durch Bezugnehmen auf eine optimale Straßenverkehrssteuerungspolitik gemäß einem vorhergesagten Straßenverkehrsausmaß und vorhergesagten Wetterbedingungen. Die Straßenverkehrsausmaßvorhersage kann erreicht werden durch Bezugnehmen auf ein Ergebnis, das durch Überwachen eines Verkehrsausmaßes für jede Straße erhalten ist.
  • 19 zeigt eine Ausführungsform eines domänenübergreifenden Arbeitsablaufmaschinen-Frameworks, das konfiguriert ist, um die smarte Stadt der 18 zu erreichen.
  • Zuerst kann das Überwachen des Verkehrsausmaßes durchgeführt werden durch ein Maschinen-Framework durch einen Straßenverkehrsausmaßüberwachungsarbeitsablauf 91 einschließlich einer Maschine zum Sammeln erfasster Daten von verschiedenen Verkehrssensoren, eine Verkehrsausmaßstatistikverarbeitungsmaschine zum Lesen der erfassten Daten, die durch die Sammelmaschine gesammelt sind, und Durchführen einer Operation für Verkehrsausmaßstatistiken, wie beispielsweise ein Gesamtausmaß oder ein durchschnittliches Ausmaß, und eine Verkehrsausmaßstatistikbedienungsmaschine zum Ausgeben eines Verkehrsausmaßstatistikverarbeitungsergebnisses in Antwort auf eine externe Anfrage. Dies macht es somit möglich, ein erwünschtes Verkehrsausmaßüberwachungssystem zu konfigurieren.
  • Als nächstes kann die Straßenverkehrsausmaßvorhersage einen Straßenverkehrsausmaßvorhersagearbeitsablauf 92 definieren und durchführen, der eine Verkehrssensorinformationssammelmaschine des Straßenverkehrsausmaßüberwachungsarbeitsablaufs 91, eine Verkehrsausmaßvorhersagemaschine zum Verarbeiten der gesammelten erfassten Information in Eingangsdaten, die für die Vorhersage nötig sind, Leser der verarbeiteten Daten und Durchführen einer auf Maschinenlernen basierten Vorhersage, und eine Verkehrsausmaßvorhersagebedienungsmaschine zum Ausgeben des vorhergesagten Ergebnisses in Antwort auf eine externe Anfrage enthält. Dies macht es somit möglich, ein erwünschtes Straßenverkehrsausmaßvorhersagesystem dynamisch zu konfigurieren.
  • Die Wettervorhersage kann einen Wettervorhersagearbeitsablauf 93 definieren und durchführen, der eine Wetterinformationssammelmaschine enthält, die konfiguriert ist, um Wetterinformation zu sammeln und geeignet zu verarbeiten, eine Wettervorhersagemaschine, die konfiguriert ist, um Wetter auf der Basis eines Maschinenlernmodells vorherzusagen, und eine Wettervorhersagebedienungsmaschine, die konfiguriert ist, um ein Wettervorhersageergebnis zu bedienen. Dies macht es somit möglich, ein erwünschtes Wettervorhersagesystem zu konfigurieren.
  • Die Straßenverkehrssteuerpolitik kann einen Straßenverkehrssteuerarbeitsablauf 90 definieren und durchführen, der eine situationsbasierte Straßenverkehrssteuerungsempfehlungsmaschine enthält, die konfiguriert ist, um eine optimale Straßenverkehrssteuerungspolitik durch Verwenden einer Wissensbasis oder eines Maschinenlernens durch eine regelbasierte Inferenz oder eine Empfehlungsoperation unter Verwendung eines Kontextes entsprechend einer spezifischen Situation als eine Eingabe zu extrahieren. Dies macht es somit möglich, ein System zum Erreichen der Aufgabe bzw. des Ziels zu konfigurieren.
  • Die smarte Straßenlichtsteuerung kann einen smarten Straßenlichtsteuerungsarbeitsablauf 94 definieren und durchführen, der konfiguriert ist, um eine smarte Straßenlichtsteuerungsempfehlungsmaschine zu erzeugen, die auf eine externe Anfrage dadurch reagiert, dass sie eine Operation zum Erkundigen bei der oben beschriebenen Verkehrsausmaßvorhersagebedienungsmaschine und der Wettervorhersagebedienungsmaschine nach einem Straßenverkehrsausmaßvorhersageergebnis und nach einem Wettervorhersageergebnis enthält und dass sie eine Operation zum Bereitstellen der Ergebnisse zu der situationsbasierten Straßenverkehrssteuerungsempfehlungsmaschine enthält, um eine nötige Straßenverkehrssteuerung abzuleiten. Dies macht es somit möglich, ein System zum Erreichen der Aufgabe zu konfigurieren.
  • Andere Szenarien, die in 18 gezeigt sind, aber nicht beschrieben sind, können jeweilige Arbeitsabläufe auf eine ähnliche Weise konfigurieren, um dadurch ein System zum Erreichen ihrer eigenen Aufgaben dynamisch zu konfigurieren.
  • 20 stellt eine Ausführungsform einer Konfiguration der Maschine zur Empfehlung einer smarten Straßenlichtsteuerung des Arbeitsablaufs zur Steuerung von smartem Straßenlicht 94 unter den in 19 gezeigten Szenarien dar. Die Maschine zur Empfehlung einer smarten Straßenlichtsteuerung enthält eine Läuferkomponente 326, die konfiguriert ist, um einen REST-Server 325 zum Reagieren auf eine externe Anfrage anzutreiben; einen Operator 323a, der konfiguriert ist, um dann, wenn eine Anfrage durch den REST-Server 325 empfangen wird, sich bei einer Wettervorhersagemaschine 93' durch einen Operator zum Erkundigen über ein Wettervorhersageergebnis zu erkundigen und um das Vorhersageergebnis zu bringen; einen Operator 323c, der konfiguriert ist, um eine Verkehrsausmaßvorhersagemaschine 92' über ein zukünftiges Straßenverkehrsausmaßvorhersageergebnis zu fragen und es zu bringen; einen Operator 323b, der konfiguriert ist, um ein durch einen jeweiligen Operator erlangtes Ergebnis zu empfangen, Situationsinformation zu erzeugen, sich bei einer situationsbasierten Straßenverkehrssteuerungsempfehlungsmaschine 90' durch Verwenden der erzeugten Situationsinformation zu erkundigen, um Straßenverkehrssteuerung zu erhalten, die für die Situation geeignet ist, eine Straßenlichtsteuerungspolitik von der Straßenverkehrssteuerung zu extrahieren und die extrahierte Straßenlichtsteuerungspolitik zum REST-Server 325 zu transferieren; und eine Steuerung 328, die konfiguriert ist, um eine Logikablaufbeziehung zwischen dem Läufer 326 und jedem ihrer Operatoren zu steuern.
  • Kehrt man zurück zu der Durchführungsprozedur des domänenübergreifenden Arbeitsablaufs der 17, wird eine ergänzende Beschreibung für jedes der Szenarien in Bezug auf eine Kostenschätzung durchgeführt werden (250), welche eine Basis zur Bestimmung einer alternativen Kandidatendomäne ist, und eine optimale Kandidatendomänenbestimmung (260) in der Prozedur zum Bestimmen einer Gruppe von Komponentenbehältern, die nötig sind, um einen Arbeitsablauf durchzuführen (100) und zum Bestimmen von Nutzungsstellen von den Maschinenkomponentenbehältern und zum Nutzen von ihnen (200).
  • Für die situationsbasierte Straßenverkehrssteuerungsempfehlungsmaschine im Straßenverkehrssteuerungsarbeitsablauf 90 ist das Empfehlungsergebnis direkt bezogen auf die Straßenlichtsteuerungsempfehlung, so dass die Maschine gemäß einer Gewichtungspolitik genutzt wird, die bevorzugt eine Zuverlässigkeit zwischen Domänen berücksichtigt.
  • Für die Erfassungsdatensammelmaschine, die Verkehrsausmaßstatistikverarbeitungsmaschine und die Verkehrsausmaßstatistikbedienungsmaschine in dem Straßenverkehrsausmaßüberwachungsarbeitsablauf 91 werden die Maschinen gemäß einer Gewichtungspolitik genutzt, die bevorzugt verfügbare Computerressourcen und Netzwerktransferkosten auf eine Maschinennutzung zum Zwecke einer Echtzeitüberwachung berücksichtigt.
  • Für die Verkehrsausmaßvorhersagemaschine und die Verkehrsausmaßvorhersagebedienungsmaschine des Straßenverkehrsausmaßüberwachungsarbeitsablaufs des Straßenverkehrsausmaßvorhersagearbeitsablaufs 92 sollte eine Vorhersage unter Verwendung eines Sammelergebnisses der Sammelmaschine durchgeführt werden, und somit werden die Maschinen bevorzugt unter Berücksichtigung von Kosten für eine Vernetzung mit einer Domäne genutzt, zu welcher die Sammelmaschine genutzt wird.
  • Im Wettervorhersagearbeitsablauf 93 werden deshalb, weil die Wetterinformation zur Sicherheit nicht sehr wichtig ist, die Maschinen bevorzugt unter Berücksichtigung von verfügbaren Computerressourcen genutzt.
  • Im smarten Straßenlichtsteuerungsarbeitsablauf 94 einschließlich der smarten Straßenlichtsteuerungsempfehlungsmaschine werden deshalb, weil Maschinen dafür, um sich bei ihnen zu erkundigen, auf unterschiedliche Domänen verteilt sind und wichtige Information enthalten, die Maschinen gemäß einer Gewichtungspolitik genutzt, die bevorzugt eine Zuverlässigkeit zwischen Domänen berücksichtigt.
  • Durch die obigen Konfigurationen und Prozesse ist es möglich, Komponenten durch Verwenden eines Maschinenlernmodells und eines Analysemodells für Big Data zu implementieren und zu managen, die entwickelt worden sind, um ein spezifisches Problem in einem Analysedienst für große Daten in Echtzeit oder ähnlichem zu lösen, der eine Analyse durchführt, die loT, Big Data und Maschinenlernen kombiniert. Zusätzlich ist es möglich, ein einzeldomänenadaptives oder ein domänenübergreifend adaptives Arbeitsablaufmaschinen-Framework zu implementieren, das die Komponenten dynamisch wiederverwenden kann, so dass eine Leistungsfähigkeits- bzw. Durchführungsplattform zum Lösen ähnlicher Probleme in verschiedenen Arbeitsdomänen oder Zieldomänen auf einfache Weise konfiguriert werden kann.
  • Durch die systematische Konfiguration der Maschinenkomponenten ist es möglich, einen Arbeitsablauf zu erzeugen und durchzuführen, der für eine Anwendung und für eine Aufgabe geeignet ist, entsprechend jeder Domäne, und ist es auch möglich, eine andere Domäne auf einfache Weise anzuwenden, um einen Arbeitsablauf zu erzeugen und durchzuführen, der für die andere Domäne geeignet ist. Das bedeutet, dass es möglich ist, ein domänenadaptives Arbeitsablaufmaschinen-Framework auf einfache Weise zu konfigurieren, das Maschinenkomponenten dynamisch wiederverwenden kann, so dass eine Durchführungsplattform zum Lösen ähnlicher Probleme in verschiedenen Arbeitsdomänen oder Zieldomänen auf einfache Weise konfiguriert werden kann. Ebenso ist es durch zusätzliches Enthaltensein eines domänenübergreifenden Wissenskonvergenzgehirnsystems möglich, ein domänenübergreifend adaptives Arbeitsablaufmaschinen-Framework zu konfigurieren. Weiterhin ist es möglich, Komponenten durch Verwenden eines Maschinenlernmodells und eines Analysemodells für Big Data zu implementieren und zu managen, die entwickelt worden sind, um ein spezifisches Problem in einem Analysedienst für große Daten in Echtzeit zu lösen, der eine Analyse durchführt, die IoT, Big Data und Maschinenlernen kombiniert.
  • In einer Umgebung, in welcher verschiedene Dienste für künstliche Intelligenz oder Anwendungen erforderlich sind, ist es durch Entwickeln und Ausstatten von zusätzlichen nötigen Komponenten oder Wiederverwenden von zuvor entwickelten und ausgestatteten Komponenten ohne Entwickeln einer individuellen Lösung für jede Anwendung möglich, ein Framework zum Konfigurieren/Ausführen einer Gruppe von Arbeitsablaufdurchführungsmaschinen zu implementieren, die einen neuen Arbeitsablauf erfüllen.
  • Der oben beschriebene Gegenstand der vorliegenden Erfindung ist als illustrativ und nicht als beschränkend anzusehen, und es sollte verstanden werden, dass zahlreiche andere Modifikationen und Ausführungsformen durch Fachleute auf dem Gebiet erdacht werden können, ohne vom Sinngehalt und Schutzumfang der vorliegenden Erfindung abzuweichen. Demgemäß sind die Ausführungsformen der vorliegenden Erfindung als beschreibend und nicht als beschränkend für die vorliegende Erfindung anzusehen und beschränken den Schutzumfang der vorliegenden Erfindung nicht. Der Schutzumfang der Erfindung sollte durch die beigefügten Ansprüche ausgelegt werden, und alle technischen Ideen innerhalb des Schutzumfangs ihrer Äquivalente sollten derart ausgelegt werden, dass sie im Schutzumfang der Erfindung enthalten sind.
  • 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 Patentliteratur
    • KR 20170135066 [0001]
    • KR 20180047370 [0001]

Claims (19)

  1. Arbeitsablaufmaschinen-Framework, umfassend: eine Ressourcenmanagementeinheit, die konfiguriert ist, um Ressourcen zu managen, die Maschinenkomponenten und Arbeitsablaufeigenschaftsspezifikationskomponenten, die nötig sind, um einen Arbeitsablauf durchzuführen, enthalten; eine Systemkonfigurationseinheit, die konfiguriert ist, um eine Maschine zu erzeugen durch Aneinanderfügen der Eigenschaftsspezifikationskomponenten und Kombinieren der Maschinenkomponenten, die zum Durchführen des Arbeitsablaufs nötig sind, um einen nötigen Maschinenkomponentenbehälter gemäß einer Arbeitsablaufspezifikation zu konfigurieren; und eine Systemsteuereinheit, die konfiguriert ist, um auf eine Weise, die in einer Arbeitsablaufeigenschaftsspezifikation definiert ist, die Ausführung von einer oder mehreren Maschinen anzutreiben und zu steuern, die durch die Systemkonfigurationseinheit erzeugt sind.
  2. Arbeitsablaufmaschinen-Framework nach Anspruch 1, weiterhin umfassend eine Leistungsfähigkeits- bzw. Durchführungsinstanzeneinheit, in welcher eine Maschine, die als eine Kombination aus Maschinenkomponenten konfiguriert ist, die durch die Systemkonfigurationseinheit erzeugt sind, gespeichert ist.
  3. Arbeitsablaufmaschinen-Framework nach Anspruch 1, wobei die Ressourcenmanagementeinheit umfasst: eine Eigenschaftsspezifikationskomponentenmanagementeinheit, die konfiguriert ist, um Eigenschaftsspezifikationskomponenten zu managen, die Eigenschaftsspezifikationen zum Bestimmen von Komponenteneigenschaften der Arbeitsablaufinstanz enthalten; und eine Maschinenkomponentenmanagementeinheit, die konfiguriert ist, um Maschinenkomponenten für die Ausführung zu managen.
  4. Arbeitsablaufmaschinen-Framework nach Anspruch 3, wobei die Ressourcenmanagementeinheit weiterhin eine Arbeitsablaufspezifikationsinstanzenmanagementeinheit umfasst, die konfiguriert ist, um eine Arbeitsablaufspezifikationsinstanz zu managen, die zuvor erzeugt und gespeichert worden ist.
  5. Arbeitsablaufmaschinen-Framework nach Anspruch 1, wobei die Systemkonfigurationseinheit umfasst: eine Arbeitsablaufeigenschaftsspezifikationszusammensetzungseinheit, die konfiguriert ist, um die Arbeitsablaufspezifikationen mit den Eigenschaftsspezifikationskomponenten zu verbinden, um Eigenschaftsspezifikationskomponenten zu erzeugen; und eine Arbeitsablaufkonfigurationseinheit, die konfiguriert ist, um definierte Maschinenkomponenteninformation aus den zusammengebauten Eigenschaftsspezifikationskomponenten zu extrahieren und die Eigenschaftsspezifikationskomponenten und die Maschinenkomponenten zu verbinden, um eine Maschine zu konfigurieren, um eine Arbeitsablaufdurchführungsplattform zu konfigurieren.
  6. Arbeitsablaufmaschinen-Framework nach Anspruch 5, wobei die Arbeitsablaufkonfigurationseinheit weiterhin eine Arbeitsablaufdurchführungs- bzw. Arbeitsablaufleistungsfähigkeitsinstanzeneinheit umfasst, die konfiguriert ist, um die Maschinenkomponenten und die Eigenschaftsspezifikationskomponenten gemäß Regeln für die Maschinenkomponenten, die den Arbeitsablauf konfigurieren, und den Eigenschaftsspezifikationskomponenten, die Parameter zum Bestimmen von Charakteristiken der Maschinenkomponente definieren, zu verbinden und um die Maschine zum Durchführen des Arbeitsablaufs zu speichern.
  7. Arbeitsablaufmaschinen-Framework nach Anspruch 1, wobei die Arbeitsablaufspezifikationen durch einen System-Definierer-Editor definiert sind und zur Systemkonfigurationseinheit eingereicht bzw. dieser vorgelegt werden, und wobei der System-Definierer-Editor umfasst: eine Maschinentypauswahleinheit, die konfiguriert ist, um verschiedene Maschinentypen bereitzustellen und um zu ermöglichen, dass der Anwender einen erwünschten aus den Maschinentypen auswählt; eine Komponentenauswahleinheit, die konfiguriert ist, um eine Liste von verschiedenen Maschinenkomponenten für jeden Komponententyp bereitzustellen, so dass der Anwender einen Komponententyp und eine Maschinenkomponente für den Typ auswählt; und eine Komponenteneigenschafts-Auswahl/Editier-Einheit, die konfiguriert ist, um Eigenschaften der in der Komponentenauswahleinheit ausgewählten Maschinenkomponente bereitzustellen und zu ermöglichen, dass der Anwender über die Eigenschaften fragt, diese auswählt und bearbeitet.
  8. Arbeitsablaufmaschinen-Framework nach Anspruch 1, wobei die Maschine umfasst: einen Leser, der konfiguriert ist, um Daten von einer oder mehreren Datenquellen zu bringen; einen oder mehrere Einheitenoperatoren, die konfiguriert sind, um Daten vom Leser zu empfangen und die empfangenen Daten zu verarbeiten; einen oder mehrere Schreiber, die konfiguriert sind, um intern verarbeitete Daten zu einem oder mehreren Datenzielorten auszugeben; einen Läufer, der konfiguriert ist, um ein separates Programm oder eine Plattform zum Verarbeiten von eingegebenen Daten auszuführen oder eine Session zu managen; und eine Steuerung, die konfiguriert ist, um solche Daten durch den Leser einzugeben, die Daten über den Läufer zu verarbeiten und Steuerungen zum Ausgeben der verarbeiteten Daten durchzuführen.
  9. Arbeitsablaufmaschinen-Framework nach Anspruch 8, wobei dann, wenn Knoten in einer sequentiellen Reihenfolge des Lesers, der Einheitenoperatoren und der Schreiber konfiguriert sind, die Steuerung eine Steuerung auf eine Weise durchführt, die ausgewählt ist aus einer sequentiellen Verarbeitung, bei welcher Daten sequentiell in eine Pipeline gebracht werden und zu einem nächsten Knoten transferiert werden, einer gleichzeitigen Verarbeitung, bei welcher jeder Knoten gleichzeitig ausgeführt wird, und einer gleichzeitigen/sequentiellen Verarbeitung, die eine Kombination aus den zwei Arten ist.
  10. Arbeitsablaufmaschinen-Framework nach Anspruch 8, wobei der eine oder die mehreren Einheitenoperatoren Daten vom Leser empfängt oder empfangen und die Daten gemäß einer sequentiellen Pipelinebildung verarbeitet oder verarbeiten und auch zu einer gleichzeitigen Verarbeitung angetrieben wird oder werden.
  11. Arbeitsablaufmaschinen-Framework nach Anspruch 8, wobei eine oder mehrere Arbeitsablaufdurchführungsmaschinen in dem Arbeitsablaufmaschinen-Framework enthalten sind und zwischen der einen oder den mehreren Maschinen ein Datenübertragungspfad auf eine pipelinemäßige Weise verwendet wird.
  12. Arbeitsablaufmaschinen-Framework nach Anspruch 11, wobei die eine oder die mehreren Maschinen unter unterschiedlichen physikalischen Umgebungen angeordnet ist oder sind und unterschiedliche Arten von Läufern enthält oder enthalten.
  13. Arbeitsablaufmaschinen-Framework nach Anspruch 11, wobei der Datenübertragungspfad einen oder mehrere unterschiedliche Typen von Datenübertragungspfaden enthält.
  14. Domänenübergreifend adaptives Arbeitsablaufmaschinen-Framework, umfassend: ein Einzeldomänen-Arbeitsablaufmaschinen-Framework, das enthält: eine Ressourcenmanagementeinheit, die konfiguriert ist, um Ressourcen zu managen, die Maschinenkomponenten und Arbeitsablaufeigenschaftsspezifikationskomponenten, die nötig sind, um einen Arbeitsablauf durchzuführen, enthalten; eine Systemkonfigurationseinheit, die konfiguriert ist, um eine Maschine durch Zusammenbauen der Eigenschaftsspezifikationskomponenten und Kombinieren der Maschinenkomponenten, die nötig sind, um den Arbeitsablauf durchzuführen, zu erzeugen, um einen nötigen Maschinenkomponentenbehälter gemäß einer Arbeitsablaufspezifikation zu konfigurieren; und eine Systemsteuereinheit, die konfiguriert ist, um auf eine Weise, die in einer Arbeitsablaufeigenschaftsspezifikation definiert ist, eine oder mehrere Maschinen anzutreiben, die durch die Systemkonfigurationseinheit erzeugt ist oder sind und um die Ausführung zu steuern; und ein domänenübergreifendes Konvergenzsystem, das mit den Einzeldomänen-Arbeitsablaufmaschinen-Frameworks verbunden ist und konfiguriert ist, um eine einzelne Domäne zu bestimmen, zu welcher die Maschine zu nutzen ist, unter einzelnen Domänen, die in einer übergreifenden Domäne enthalten sind, gemäß einem definierten domänenübergreifenden Arbeitsablauf.
  15. Domänenübergreifend adaptives Arbeitsablaufmaschinen-Framework nach Anspruch 14, wobei das domänenübergreifende Konvergenzsystem umfasst: eine domänenübergreifende Ressourcenmanagementeinheit, die konfiguriert ist, um einen Bericht für Arbeitsablaufressourcen von dem Einzeldomänen-Arbeitsablaufmaschinen-Framework zu empfangen, die Arbeitsablaufressourcen upzudaten und verfügbare Komponenten, Hardware, Netzwerkinformation oder Vorrichtungsinformation für jede Domäne durch Ressourceninformation, die von jeder Domäne empfangen ist, upzudaten; und eine domänenübergreifende Systemkonfigurationseinheit, die konfiguriert ist, um eine domänenübergreifende Arbeitsablaufspezifikation in eine Vielzahl von Einzeldomänen-Arbeitsablaufspezifikationen aufzuteilen, um die domänenübergreifende Arbeitsablaufspezifikation zu verarbeiten, eine Nutzungsstelle von jedem der Maschinenkomponentenbehälter zu bestimmen, und die Maschinenkomponentenbehälter zu nutzen.
  16. Domänenübergreifend adaptives Arbeitsablaufmaschinen-Framework nach Anspruch 14, wobei, um eine einzelne Domäne zu bestimmen, zu welcher eine Maschine unter den einzelnen Domänen zu verteilen ist, die in der übergreifenden Domäne enthalten sind, das domänenübergreifende Konvergenzsystem umfasst: (1) eine Einrichtung zum Prüfen, ob eine Datenquelle und ein Datenzielort, die für jede Maschine nötig sind, in derselben Domäne vorhanden sind; (2) eine Einrichtung zum Durchführen einer Bestimmung darüber, wenn die Datenquelle und der Datenzielort für die Maschine in derselben Domäne vorhanden sind, ob es für eine Maschine möglich ist, durch Verwenden von Ressourcen in der entsprechenden Domäne konfiguriert zu werden; (3) eine Einrichtung zum Nutzen, wenn die Maschinenkonfiguration möglich ist, einer Maschinenspezifikation, so dass die Maschine in der entsprechenden Domäne konfiguriert wird; (4) eine Einrichtung zum Suchen danach, wenn das Bestimmungsergebnis der Operation (1) zeigt, dass die Datenquelle und der Datenzielort für die Maschine nicht in derselben Domäne vorhanden sind oder wenn das Bestimmungsergebnis der Operation (2) zeigt, dass die Maschinenkonfiguration nicht möglich ist, nach einer anderen Domäne, die dieselbe Maschinenkomponentenkonfiguration zulässt, um eine alternative Kandidatendomänengruppe zu bestimmen; und (5) eine Einrichtung zum Durchführen einer Kostenschätzung, um eine alternative Domäne zu bestimmen, aus der alternativen Kandidatendomänengruppe, wenn die alternative Kandidatendomänengruppe bestimmt wird, und Anwenden einer Nutzungsdomänenauswahlpolitik, um eine optimale Domäne auszuwählen, zu welcher die Maschine zu nutzen ist.
  17. Domänenübergreifend adaptives Arbeitsablaufmaschinen-Framework nach Anspruch 14, wobei die Arbeitsablaufspezifikation durch einen System-Definierer-Editor definiert ist und zu dem domänenübergreifenden Konvergenzsystem bereitgestellt ist, und wobei der System-Definierer-Editor umfasst: eine Maschinentypauswahleinheit, die konfiguriert ist, um verschiedene Maschinentypen bereitzustellen und um zu ermöglichen, dass der Anwender einen erwünschten unter den Maschinentypen auswählt; eine Komponentenauswahleinheit, die konfiguriert ist, um eine Liste von verschiedenen Maschinenkomponenten für jeden Komponententyp bereitzustellen, sodass der Anwender einen Komponententyp und eine Maschinenkomponente für den Typ auswählt; und eine Komponenteneigenschafts-Auswahl/Editier-Einheit, die konfiguriert ist, um Eigenschaften der Maschinenkomponente bereitzustellen, die in der Komponentenauswahleinheit ausgewählt ist, und um zu ermöglichen, dass der Anwender sich über die Eigenschaften erkundigt, diese auswählt und bearbeitet.
  18. Domänenübergreifend adaptives Arbeitsablaufmaschinen-Framework nach Anspruch 14, wobei die Maschine umfasst: einen Leser, der konfiguriert ist, um Daten von einer oder mehreren Datenquellen zu bringen; einen oder mehrere Einheitenoperatoren, der oder die konfiguriert ist oder sind sind, um Daten vom Leser zu empfangen und die empfangenen Daten zu verarbeiten; einen oder mehrere Schreiber, der oder die konfiguriert ist oder sind, um intern verarbeitete Daten zu einem oder mehreren Datenzielorten auszugeben; einen Läufer, der konfiguriert ist, um ein separates Programm oder eine Plattform zum Verarbeiten von eingegebenen Daten auszuführen oder eine Session zu managen; und eine Steuerung, die konfiguriert ist, um solche Daten durch den Leser einzugeben, die Daten über den Läufer zu verarbeiten und die Reihe von Steuerungen zum Ausgeben der verarbeiteten Daten durchzuführen.
  19. Verfahren zum Bestimmen einer einzelnen Domäne, zu welcher eine nötige Maschine zu nutzen ist, unter einzelnen Domänen, die in einer übergreifenden Domäne enthalten sind, durch das domänenübergreifende Konvergenzsystem, das in dem domänenübergreifenden adaptiven Arbeitsablaufmaschinen-Framework des Anspruchs 14 enthalten ist, wobei das Verfahren umfasst: (1) Prüfen, ob eine Datenquelle und ein Datenzielort, die für jede Maschine nötig sind, in derselben Domäne vorhanden sind; (2) Durchführen einer Bestimmung darüber, wenn die Datenquelle und der Datenzielort für die Maschine in derselben Domäne vorhanden sind, ob es für eine Maschine möglich ist, durch Verwenden von Ressourcen in der entsprechenden Domäne konfiguriert zu werden; (3) wenn die Maschinenkonfiguration möglich ist, Nutzen einer Maschinenspezifikation, so dass die Maschine in der entsprechenden Domäne konfiguriert wird; (4) wenn das Bestimmungsergebnis der Operation (1) zeigt, dass die Datenquelle und der Datenzielort für die Maschine nicht in derselben Domäne vorhanden sind oder wenn das Bestimmungsergebnis der Operation (2) zeigt, dass die Maschinenkonfiguration nicht möglich ist, Suchen nach einer anderen Domäne, die dieselbe Maschinenkomponentenkonfiguration zulässt, um eine alternative Kandidatendomänengruppe zu bestimmen; und (5) Durchführen einer Kostenschätzung, um eine alternative Domäne aus der alternativen Kandidatendomänengruppe zu bestimmen, wenn die alternative Kandidatendomänengruppe bestimmt ist, und Anwenden einer Nutzungsdomänenauswahlpolitik, um eine optimale Domäne auszuwählen, zu welcher die Maschine zu nutzen ist.
DE102018110138.4A 2017-10-18 2018-04-26 Arbeitsablaufmaschinen-Framework Pending DE102018110138A1 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2017-0135066 2017-10-18
KR20170135066 2017-10-18
KR10-2018-0047370 2018-04-24
KR1020180047370A KR102259927B1 (ko) 2017-10-18 2018-04-24 워크플로우 엔진 프레임워크

Publications (1)

Publication Number Publication Date
DE102018110138A1 true DE102018110138A1 (de) 2019-04-18

Family

ID=65910339

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102018110138.4A Pending DE102018110138A1 (de) 2017-10-18 2018-04-26 Arbeitsablaufmaschinen-Framework

Country Status (2)

Country Link
US (2) US11036539B2 (de)
DE (1) DE102018110138A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11582647B2 (en) * 2017-01-30 2023-02-14 Telefonaktiebolaget Lm Ericsson (Publ) Methods and apparatus for managing resource usage across domains in a communication network
WO2020117684A1 (en) 2018-12-03 2020-06-11 Salesforce.Com, Inc. Testing engine for automated operations management
CN111866047B (zh) * 2019-04-30 2023-07-07 北京达佳互联信息技术有限公司 数据解码方法、装置、计算机设备及存储介质
US11323332B2 (en) 2019-09-26 2022-05-03 International Business Machines Corporation Intelligent social IoT work plan
US11153388B2 (en) * 2019-11-12 2021-10-19 Electronics And Telecommunications Research Institute Workflow engine framework for cross-domain extension
CN112825044B (zh) * 2019-11-21 2023-06-13 杭州海康威视数字技术股份有限公司 任务执行方法、装置及计算机存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170135066A (ko) 2016-05-30 2017-12-08 대우조선해양 주식회사 초임계 이산화탄소 발전시스템 및 이를 구비한 선박
KR20180047370A (ko) 2016-10-31 2018-05-10 현대위아 주식회사 컨베이어 칩 제거장치

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7603363B2 (en) * 2005-01-05 2009-10-13 Microsoft Corporation Systems and methods for controlling transaction participation for groups of steps in a workflow
JP2008027282A (ja) 2006-07-24 2008-02-07 Yokogawa Electric Corp ワークフロー切り替えフレームワーク
KR100901872B1 (ko) 2006-12-01 2009-06-09 한국전자통신연구원 그리드 서비스를 이용한 이종 노매딕/이동 통신 네트워크간 협업 시스템 및 그 방법
US9292815B2 (en) * 2012-03-23 2016-03-22 Commvault Systems, Inc. Automation of data storage activities
KR20150017052A (ko) 2013-08-05 2015-02-16 한국전자통신연구원 워크플로우의 실행 방법 및 시스템
KR101574396B1 (ko) 2013-12-17 2015-12-04 부산대학교 산학협력단 교통 빅데이터 서비스 조합 프레임워크
WO2016160626A1 (en) 2015-03-27 2016-10-06 Globallogic, Inc. Determining actions based on imputing meaning to sensed information in a distributed computing environment
KR102071335B1 (ko) 2015-06-11 2020-03-02 한국전자통신연구원 워크플로우 모델 생성 방법과 워크플로우 모델 실행 방법 및 장치
US9575749B1 (en) 2015-12-17 2017-02-21 Kersplody Corporation Method and apparatus for execution of distributed workflow processes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170135066A (ko) 2016-05-30 2017-12-08 대우조선해양 주식회사 초임계 이산화탄소 발전시스템 및 이를 구비한 선박
KR20180047370A (ko) 2016-10-31 2018-05-10 현대위아 주식회사 컨베이어 칩 제거장치

Also Published As

Publication number Publication date
US11036539B2 (en) 2021-06-15
US20190114200A1 (en) 2019-04-18
US20200409744A1 (en) 2020-12-31

Similar Documents

Publication Publication Date Title
DE102018110138A1 (de) Arbeitsablaufmaschinen-Framework
JP7118726B2 (ja) ワークフローエンジンフレームワーク
DE102017201789B4 (de) Verfahren zum Betrieb eines Kraftfahrzeugs und Kraftfahrzeug
DE102020128209A1 (de) Automatische Plattformressourcenverwaltung in Edge-Computing-Umgebungen
DE112017003707T5 (de) Technologien zur zuweisung von workloads zum ausgleich mehrerer ressourcenzuweisungsziele
Cao et al. Analytics everywhere: generating insights from the internet of things
US9185006B2 (en) Exchange of server health and client information through headers for request management
DE112017000046T5 (de) Beurteilung der Genauigkeit eines Maschinenlernmodells
DE112021006232T5 (de) Proaktive anomalieerkennung
DE112016006514T5 (de) Verfahren und Datenverarbeitungssystem zum Verwalten von Datenstromverarbeitungstasks einervordefinierten Anwendungstopologie
CN114936019B (zh) 一种组件及策略联动方法、装置、设备、系统及存储介质
DE102015104865A1 (de) Graphdatenbank für ein Contact-Center
DE112013002259T5 (de) Integration von Informationen dritter Parteien
DE112018000731T5 (de) IoT-Gerät Fog-Networking-Betrieb
DE102009013213B4 (de) Verfahren und Vorrichtung zur kontext-getriebenen Integration kontext-variabler Systeme in Prozessabläufe
DE202014010924U1 (de) Nichtflüchtiges Shuffle-System
DE112004003015B4 (de) Netzwerk-/Dienststeuerverfahren
DE112021003668T5 (de) Zuteilen von aufgaben und daten unter verwendung von multi-access edge computing
DE102021210528A1 (de) Prädiktive analysemodellverwaltung unter verwendung von kollaborativer filterung
DE102021125019B4 (de) Orchestrierung von einheiten für das internet der dinge
CN113688284B (zh) 车联网业务数据的处理方法、装置、电子设备和存储介质
Raj et al. Edge/Fog Computing Paradigm: The Concept, Platforms and Applications.
CN104270443A (zh) 一种能够动态解析Web应用的云计算系统及方法
DE112019001822T5 (de) Änderung und darstellung von audio- und video-multimedia
Ferreira et al. A cooperative simulation framework for traffic and transportation engineering

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication