DE102019215765A1 - System zur datenaufzeichnung und -analyse - Google Patents

System zur datenaufzeichnung und -analyse Download PDF

Info

Publication number
DE102019215765A1
DE102019215765A1 DE102019215765.3A DE102019215765A DE102019215765A1 DE 102019215765 A1 DE102019215765 A1 DE 102019215765A1 DE 102019215765 A DE102019215765 A DE 102019215765A DE 102019215765 A1 DE102019215765 A1 DE 102019215765A1
Authority
DE
Germany
Prior art keywords
eds
data
new
rds
similarity
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
DE102019215765.3A
Other languages
English (en)
Inventor
Masaharu Goto
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.)
Keysight Technologies Inc
Original Assignee
Keysight Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Keysight Technologies Inc filed Critical Keysight Technologies Inc
Publication of DE102019215765A1 publication Critical patent/DE102019215765A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices

Landscapes

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

Abstract

Ein System zum Aufzeichnen und Analysieren eines Datenstroms, ein Verfahren zum Analysieren eines Datenstroms und ein Computer-lesbarer Speicher, der Anweisungen speichert, die bewirken, dass ein Computer ein Verfahren zum Analysieren eines Datenstroms ausführt. Das System umfasst einen Eingangsanschluss, einen Ausgangsanschluss, einen Puffer und eine Steuerung. Die Steuerung identifiziert ein Segment, das als neues extrahiertes Datensegment (EDS) des in dem Puffer gespeicherten Datenstroms bezeichnet wird, wobei das neue EDS ein Extrahierungsprotokoll erfüllt. Die Steuerung vergleicht das neue EDS mit jedem aus einer Mehrzahl von Referenzdatensegmenten (RDSs) unter Verwendung eines ersten Ähnlichkeitsprotokolls. Ein neues RDS wird erstellt, wenn das neue EDS keinem bestehenden EDS ähnelt. Wenn das neue EDS einem RDS ähnelt, wir das RDS aktualisiert, um das neue EDS als ähnlich aufzulisten.

Description

  • Datenaufzeichnungssysteme sind heute dazu in der Lage, Datenmengen aufzuzeichnen, die so groß sind, dass die Zeit zum Durchsuchen der aufgezeichneten Daten durch serielles Lesen in den gespeicherten Daten erheblich wird. Es werden routinemäßig Datensätze aufgezeichnet, die größer als ein Terabyte sind. Die Zeitdauer, um ein Terabyte an Daten von einem herkömmlichen Laufwerk zu lesen, beträgt mehrere Stunden. Daher stellt das Durchsuchen der aufgezeichneten Daten nach einem Muster von Interesse schnell eine Herausforderung dar.
  • Die Aufgabe der vorliegenden Erfindung besteht darin, ein System zum Aufzeichnen und Analysieren eines Datenstroms, ein Verfahren zum Betreiben eines Datenverarbeitungssystems, um einen Datenstrom zu analysieren, der eine geordnete Sequenz von Datenwerten für Cluster der Signale aufweist, und einen Computer-lesbaren Speicher, der Anweisungen enthält, die bewirken, dass ein Datenverarbeitungssystem ein Verfahren ausführt, um einen Datenstrom zu analysieren, der eine geordnete Sequenz von Datenwerten für Cluster von Signalen aufweist, mit verbesserten Charakteristika zu schaffen.
  • Diese Aufgabe wird durch ein System gemäß Anspruch 1, ein Verfahren gemäß Anspruch 7 und einen Computer-lesbaren Speicher gemäß Anspruch 13 gelöst.
  • Die vorliegende Erfindung umfasst ein System zum Aufzeichnen und Analysieren eines Datenstroms, ein Verfahren zum Analysieren eines Datenstroms und einen Computer-lesbaren Speicher, der Anweisungen speichert, die bewirken, dass ein Computer ein Verfahren zum Analysieren eines Datenstroms ausführt. Das System umfasst einen Eingangsanschluss, einen Ausgangsanschluss, einen Puffer und eine Steuerung. Der Eingangsanschluss ist zum Empfangen des Datenstroms angepasst, wobei der Datenstrom eine geordnete Sequenz von Datenwerten umfasst. Der Ausgangsanschluss ist zum Kommunizieren des Datenstroms an eine Massenspeichervorrichtung angepasst. Der Puffer ist mit dem Eingangsanschluss verbunden, um einen vorbestimmten Abschnitt des Datenstroms temporär zu speichern, während der Datenstrom durch das System empfangen wird. Die Steuerung identifiziert ein Segment, das als neues extrahiertes Datensegment (EDS, Extracted Data Segment) des in dem Puffer gespeicherten Datenstroms bezeichnet wird, wobei das neue EDS ein Extrahierungsprotokoll erfüllt. Die Steuerung vergleicht das neue EDS mit jedem aus einer Mehrzahl von Referenzdatensegmenten (RDSs, Reference Data Segments) unter Verwendung eines ersten Ähnlichkeitsprotokolls, wobei die Steuerung Informationen, die das neue EDS identifizieren, in einer RDS-Datenbank speichert, wenn das erste Ähnlichkeitsprotokoll angibt, dass das neue EDS einem der RDSs ähnelt. Die Steuerung erstellt ein neues RDS, wenn das neue EDS keinem der RDSs ähnelt. Jedes RDS umfasst eine Liste der EDSs, dich sich als zu diesem RDS ähnlich herausgestellt haben, und das neue EDS, das bewirkt hat, dass die Steuerung das neue RDS erstellt.
  • Bei einem Aspekt umfasst der Puffer einen FIFO-Puffer.
  • Bei einem weiteren Aspekt identifiziert das Extrahierungsprotokoll einen Datenwert in dem Puffer, bei dem das neue EDS beginnt, und einen Datenwert in dem Puffer, bei dem das neue EDS endet.
  • Bei einem weiteren Aspekt ist der Datenwert, bei dem das neue EDS endet, eine feste Anzahl an Abtastwerten aus dem Datenwert, bei dem das neue EDS begonnen hat.
  • Bei einem weiteren Aspekt berechnet das erste Ähnlichkeitsprotokoll ein Abstandsmaß zwischen zwei Datensegmenten und einer Ähnlichkeitsschwelle, wobei die zwei Datensegmente als ähnlich definiert werden, wenn der Abstand eine vorbestimmte Beziehung zu der Ähnlichkeitsschwelle aufweist.
  • Bei einem weiteren Aspekt kombiniert die Steuerung zwei der RDSs als Reaktion auf eine Benutzereingabe, wenn die RDSs einander ähneln, wie durch ein zweites Ähnlichkeitsprotokoll bestimmt wird, das weniger restriktiv ist als das erste Ähnlichkeitsprotokoll.
  • Bei einem weiteren Aspekt erzeugt die Steuerung eine Mehrzahl von neuen RDSs aus einem bestehenden RDS, indem EDSs, die diesem RDS zugeordnet sind, miteinander unter Verwendung eines zweiten Ähnlichkeitsprotokolls verglichen werden, das restriktiver ist als das erste Ähnlichkeitsprotokoll.
  • Bei einem weiteren Aspekt erzeugt die Steuerung einen komprimierten Datenstrom, indem jedes EDS durch ein Symbol ersetzt wird, welches das RDS darstellt, das sich als zu diesem EDS ähnlich herausgestellt hat.
  • Bei einem weiteren Aspekt ersetzt die Steuerung jede Sequenz von Datenwerten, die nicht zu einem EDS gehört, mit einem Zählwert, der eine Anzahl von Symbolen in der Sequenz angibt.
  • Die vorliegende Erfindung umfasst außerdem ein Verfahren zum Betreiben eines Datenverarbeitungssystems, um einen Datenstrom zu analysieren, der eine geordnete Sequenz von Datenwerten für Cluster der Signale umfasst. Das Verfahren umfasst ein sequenzielles Empfangen des Datenstroms und ein Zuweisen eines Indexes zu jedem Datenwert, während der Datenwert empfangen wird. Ein Abschnitt des empfangenen Datenstroms wird in einem Puffer gespeichert, aus dem ein neues EDS, das ein Extrahierungsprotokoll erfüllt, extrahiert wird. Das Datenverarbeitungssystem vergleicht das neue EDS mit jedem aus einer Mehrzahl von RDSs unter Verwendung eines ersten Ähnlichkeitsprotokolls, wobei das Datenverarbeitungssystem Informationen, die das neue EDS identifizieren, in einer RDS-Datenbank speichert, wenn das erste Ähnlichkeitsprotokoll angibt, dass das neue EDS einem der RDSs ähnelt, und wobei das Datenverarbeitungssystem ein neues RDS erstellt, wenn das neue EDS keinem der RDSs ähnelt.
  • Bei einem weiteren Aspekt identifiziert das Extrahierungsprotokoll einen Datenwert in dem Puffer, bei dem das neue EDS beginnt, und einen Datenwert in dem Puffer, bei dem das neue EDS endet.
  • Bei einem weiteren Aspekt ist der Datenwert, bei dem das neue EDS endet, eine feste Anzahl an Abtastwerten aus dem Datenwert, bei dem das neue EDS begonnen hat.
  • Bei einem weiteren Aspekt berechnet das Datenverarbeitungssystem ein Abstandsmaß zwischen zwei Datensegmenten und einer Ähnlichkeitsschwelle, wobei die zwei Datensegmente als ähnlich definiert werden, wenn der Abstand eine vorbestimmte Beziehung zu der Ähnlichkeitsschwelle aufweist.
  • Bei einem weiteren Aspekt kombiniert das Datenverarbeitungssystem zwei der RDSs als Reaktion auf eine Benutzereingabe, wenn sich die RDSs ähneln, wie durch ein zweites Ähnlichkeitsprotokoll bestimmt wird, das weniger restriktiv ist als das erste Ähnlichkeitsprotokoll.
  • Bei einem weiteren Aspekt erzeugt das Datenverarbeitungssystem eine Mehrzahl von neuen RDSs aus einem bestehenden RDS, indem EDSs, die diesem RDS zugeordnet sind, miteinander unter Verwendung eines zweiten Ähnlichkeitsprotokolls verglichen werden, das restriktiver ist als das erste Ähnlichkeitsprotokoll.
  • Bei einem weiteren Aspekt erzeugt das Datenverarbeitungssystem einen komprimierten Datenstrom, indem jedes EDS durch ein Symbol ersetzt wird, welches das RDS darstellt, das sich als zu diesem EDS ähnlich herausgestellt hat.
  • Bei einem weiteren Aspekt ersetzt das Datenverarbeitungssystem jede Sequenz von Datenwerten, die nicht zu einem EDS gehört, mit einem Zählwert, der eine Anzahl von Symbolen in der Sequenz angibt.
  • Der Computer-lesbare Speicher enthält Anweisungen, die bewirken, dass ein Datenverarbeitungssystem ein Verfahren ausführt, um einen Datenstrom zu analysieren, der eine geordnete Sequenz von Datenwerten für Cluster von Signalen umfasst. Das Verfahren umfasst ein sequenzielles Empfangen des Datenstroms und ein Zuweisen eines Indexes zu jedem Datenwert, während der Datenwert empfangen wird, und ein Speichern eines Abschnittes des empfangenen Datenstroms in einem Speicherpuffer. Ein neues EDS, das ein Extrahierungsprotokoll erfüllt, wird aus dem Puffer extrahiert. Das neue EDS wird mit jedem aus einer Mehrzahl von RDSs unter Verwendung eines ersten Ähnlichkeitsprotokolls, wobei das Datenverarbeitungssystem Informationen, die das neue EDS identifizieren, in einer RDS-Datenbank speichert, wenn das erste Ähnlichkeitsprotokoll angibt, dass das neue EDS einem der RDSs ähnelt, und wobei das Datenverarbeitungssystem ein neues RDS erstellt, wenn das neue EDS keinem der RDSs ähnelt.
  • Bei einem weiteren Aspekt erzeugt das Datenverarbeitungssystem einen komprimierten Datenstrom, indem jedes EDS durch ein Symbol ersetzt wird, das das RDS darstellt, welches sich als zu diesem EDS ähnlich herausgestellt hat.
  • Bei einem weiteren Aspekt ersetzt das Datenverarbeitungssystem jede Sequenz von Datenwerten, die nicht zu einem EDS gehört, mit einem Zählwert, der eine Anzahl von Symbolen in der Sequenz angibt.
  • Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf die beiliegenden Zeichnungen näher erläutert. Es zeigen:
    • 1 eine Datenaufzeichnungsvorrichtung gemäß einem Ausführungsbeispiel der vorliegenden Erfindung; und
    • 2 eine exemplarische graphische Darstellung der Verteilung von Abständen als Funktion der Distanz zu dem RDS.
  • Die Art und Weise, in der die vorliegende Erfindung ihre Vorteile bereitstellt, lässt sich einfacher unter Bezugnahme auf ein Datenerfassungssystem verstehen, bei dem ein Signal in einem Dateneingangskanal digitalisiert wird und auf einer Speichervorrichtung wie etwa einer Festplatte gespeichert wird. Der Datenstrom kann dahin gehend betrachtet werden, dass dieser Signale von Interesse, die durch einen „Extrahierungsalgorithmus“ definiert werden, und die Signale zwischen den Signalen von Interesse enthält, die in den folgenden Ausführungen als Leerlaufsignale bezeichnet werden.
  • Im Allgemeinen muss ein Benutzer der aufgezeichneten Daten die unterschiedlichen Signale in den Daten verstehen können und Signale von Interesse abrufen können. Für die Zwecke dieser Ausführungen wird angenommen, dass der Benutzer nicht über detaillierte Kenntnisse aller Signale in dem aufzuzeichnenden Datenstrom verfügt. Es wird angenommen, dass die Anzahl von Datenstromsignalen zu groß ist, als dass der Benutzer sie einzeln überprüfen kann. Daher muss der Benutzer wichtige Merkmale von Signalen verstehen können, ohne den gesamten Datenstrom zu betrachten. Zu diesem Zweck ist es sinnvoll, Bündel (bzw. Cluster) von ähnlichen Signalen zu definieren. Indem repräsentative Mitglieder solcher Cluster überprüft werden, kann der Benutzer ein besseres Verständnis über die aufgezeichneten Signalen gewinnen und die Parameter spezifizieren, die erforderlich sind, um Signale von Interesse abzurufen.
  • Die vorliegende Erfindung stellt einem Benutzer Werkzeuge bereit, die es dem Benutzer ermöglichen, Cluster in der Sammlung von aufgezeichneten Signalen auf der Basis eines Ähnlichkeitsalgorithmus zu definieren, der ein Ähnlichkeitsmaß bezüglich der Ähnlichkeit zwischen zwei Signalen berechnet. Algorithmen zum Bündeln (bzw. Clustern) von Objekten auf der Basis eines Ähnlichkeitsmaßes sind in der Technik bekannt. Leider weist die Rechenbelastung, die beim Anwenden zahlreicher dieser Algorithmen inhärent ist, eine Größenordnung von N2 oder höher auf. Da ein aufgezeichneter Datenstrom von mehreren Terabyte mehr als mehrere Millionen Signale aufweisen kann, ist das Clustern der aufgezeichneten Signale in einem Zeitraum von Minuten, während der Benutzer die Signale untersucht, häufig nicht praktikabel.
  • Wie im Folgenden ausführlicher beschrieben wird, detektiert die vorliegende Erfindung während des Aufzeichnungsprozesses kleine Cluster von Signalen von Interesse. Diese kleinen Cluster werden dann kombiniert, um größere Cluster bereitzustellen, die mit den Clustern von Signalen in dem Eingangsdatenstrom übereinstimmen. Die Cluster werden ohne Erfordernis einer vorbestimmten Beschreibung der zu clusternden Signale hergestellt. Im Idealfall enthält jedes dieser Cluster einen kleinen Abschnitt eines einzelnen Clusters der zugrundeliegenden Signale, die in dem Eingangsstrom vorhanden sind. Jedes Cluster beginnt aus einem beobachteten Signal in dem Eingangsstrom, wie im Folgenden besprochen wird. Die Größe des Clusters wird durch einen Ähnlichkeitsalgorithmus bestimmt, der einen Schwellwert umfasst, welcher bestimmt, ob ein zweites Signal in dasselbe Cluster wie ein erstes Signal aufzunehmen ist. Die Art und Weise, in der die Cluster kombiniert werden oder in der ein Cluster in kleinere Cluster aufgeteilt wird, wird im Folgenden ausführlicher besprochen.
  • Die vorliegende Erfindung untersucht den digitalisierten Datenstrom, um Datensegmente von Interesse in dem Datenstrom zu detektieren, ohne vorab detaillierte Kenntnisse zu den Datensegmenten zu erfordern. Die Datensegmente werden in Echtzeit identifiziert, während der Datenstrom auf dem Weg zu einer Massenspeichervorrichtung durch den Datenlogger (bzw. Datenerfasser) verläuft. Es wird angenommen, dass der Datenstrom primär aus einzelnen Signalen besteht, die durch Bereiche getrennt sind, die keine Datensegmente von Interesse umfassen. Datenstromsegmente, die den Extrahierungsalgorithmus erfüllen, werden als extrahierte Datensegmente (EDSs, Extracted Data Segments) bezeichnet, und Datenstromsegmente, die ein Signal enthalten, das den Extrahierungsalgorithmus nicht erfüllt, werden als Leerlaufdatensegmente (IDSs, Idle Data Segments) bezeichnet.
  • Idealerweise würde jedes EDS die Datenabtastwerte enthalten, die einem Signal von Interesse entsprechen, ohne jegliche Hintergrundabtastwerte. Jedoch schränkt das Erfordernis, das EDS in einem kurzen Zeitraum zu identifizieren, den Extrahierungsalgorithmus ein. Das präzise Signalsegment von Interesse zu finden, erfordert deutlich mehr Zeit als den Beginn des Signals durch ein einfach detektierbares Ereignis, wie etwa eine ansteigende oder fallende Flanke über einen definierten Schwellwert hinweg, zu detektieren und das Ende des Signals als feste Anzahl von Abtastwerten relativ zu dem Anfang des Signals zu definieren. Wenn zwei Signale tatsächlich gleich wären, würden die EDSs für die zwei Signale weiterhin übereinstimmen. Bei einem Aspekt der Erfindung spezifiziert der Extrahierungsalgorithmus daher eine Auslösebedingung (bzw. Trigger-Bedingung), die den Start des EDS definiert, und das Ende des EDS wird als eine feste Anzahl von Eingangsabtastwerten relativ zu dem Start des EDS definiert. Wenn diese Näherung das endgültige Clustern stört, können die EDSs aus dem Langzeitspeicher abgerufen werden und Clustern kann auf der Basis eines genaueren Endes des Signals eingesetzt werden, wie nachfolgend beschrieben ist.
  • Wenn ein EDS gefunden wird, wird das EDS zur weiteren Überprüfung in einen Puffer kopiert und ihm wird ein Indexwert zugewiesen, der das EDS in Bezug auf die Position des EDS in dem Datenstrom eindeutig identifiziert. Außerdem wird für die EDSs ein „Ähnlichkeitsmaß“ durch einen Ähnlichkeitsalgorithmus definiert. Das Ähnlichkeitsmaß spiegelt den Ähnlichkeitsgrad zwischen zwei extrahierten Datensegmenten wider. Das Ähnlichkeitsmaß ermöglicht es dem System der vorliegenden Offenbarung, extrahierte Datensegmente in Cluster von zueinander ähnlichen EDSs zu gruppieren. Bei einem Aspekt der Erfindung umfasst der Ähnlichkeitsalgorithmus einen Schwellwert. Wenn das Ähnlichkeitsmaß eine vorbestimme Beziehung zu einem Schwellwert aufweist, werden die zwei EDSs als ähnlich zueinander definiert. Beispielsweise könnten die zwei EDSs als ähnlich zueinander definiert werden, wenn das Ähnlichkeitsmaß geringer ist als der Schwellwert.
  • Wenn ein neues EDS gefunden wird, bestimmt das System, ob das EDS Teil eines Clusters ist, das bereits gefunden worden ist. Wenn das EDS Teil eines bestehenden Clusters ist, wird das bestehende Cluster aktualisiert, um die Hinzufügung des neuen EDS widerzuspiegeln. Wenn das EDS keinem der bestehenden Cluster ausreichen ähnelt, wird ein neues Cluster definiert und das EDS wird zu diesem Cluster hinzugefügt.
  • Jedes Cluster wird durch ein Referenzdatensegment (RDS, Reference Data Segment) dargestellt. Das Extrahieren und das Clustern werden während der Aufzeichnung in Echtzeit ausgeführt und somit kann ein Benutzer Cluster von EDSs betrachten, die in dem Datenstrom vorhanden sind, ohne die EDSs aus dem nun gespeicherten Datenstrom wiedererlangen zu müssen. Während der Datenaufzeichnung und dem anfänglichen Clustern wird lediglich das in dem Datenstrom identifizierte neue EDS in dem Speicher zurückgehalten. Um den Cluster-Vorgang zu vereinfachen, werden die RDSs in dem Systemspeicher behalten. Nachdem die Aufzeichnung des Datenstroms abgeschlossen wurde, können die geclusterten (bzw. gebündelten) EDSs wiederhergestellt und zur weiteren Klassifizierung verwendet werden.
  • Es wird jetzt auf 1 Bezug genommen, die eine Datenaufzeichnungsvorrichtung gemäß einem Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht. Ein eingehender Datenstrom wird durch einen Analog-Digital-Wandler (ADC, Analog-to-Digital Converter) 11 digitalisiert, dessen Ausgabe in einem lokalen FIFO-Puffer 12 gespeichert wird. Es ist zu beachten, dass der FIFO-Puffer 12 in einem lokalen Speicher 16 implementiert werden kann. Pro Taktzyklus von einem Takt 13 wird ein Abtastwert digitalisiert. Eine Steuerung 15 unterhält ein internes Register, das pro Taktzyklus inkrementiert wird, und stellt einen eindeutigen Index zum Identifizieren eines Datensegments bereit, das mit dem soeben in den FIFO-Puffer 12 übertragenen Datenabtastwert beginnt. Pro Takt des Taktes 13 wird der neue Dateneintrag an den FIFO-Puffer 12 übertragen und der älteste Eintrag in dem FIFO-Puffer 12 wird ausgelesen. Pro Taktzyklus bestimmt die Steuerung 15, ob ein Datensegment von Interesse begonnen hat oder jetzt abgeschlossen ist. Die Steuerung 15 kann Hardware umfassen, um den Beginn eines Datensegments von Interesse zu detektieren, oder die Steuerung 15 kann den Inhalt des FIFO-Puffers 12 überprüfen, um zu bestimmen, ob ein Datensegment von Interesse begonnen hat oder jetzt abgeschlossen ist. Hardware-Auslöser werden in bekannten Oszilloskopen verwendet und sind Fachleuten bekannt. Wenn eine Datensequenz von Interesse nun in dem FIFO-Puffer 12 vorhanden ist, kopiert die Steuerung 15 diese Datensequenz aus dem FIFO-Puffer in einen neuen EDS-Puffer 17, notiert die Position des neuen EDS in dem Datenstrom und gibt diese Informationen in eine EDS-Datenbank 19 ein.
  • Um das Abrufen des EDS von einer Platte 14 zu erleichtern, zeichnet eine Plattendatenbank 22 die Übereinstimmung zwischen Aufzeichnungen auf der Platte 14 und den Indizes auf, die den Anfängen jedes EDS zugewiesen sind. Im Allgemeinen ist die Platte 14 als eine Mehrzahl von Plattenaufzeichnungen organisiert, auf die zufällig zugegriffen werden kann. Wenn die Steuerung 15 ein auf der Festplatte 14 gespeichertes EDS wiedererlangen muss, wird die Plattendatenbank 22 dazu verwendet, die Plattenaufzeichnungsnummer zu bestimmen, an welcher der dem EDS zugeordnete Index beginnt.
  • Wenn die Datensequenz von Interesse soeben erst mit dem vorherigen Abtastwert begonnen hat, zeichnet die Steuerung 15 den Abtastwertindex, an dem die Datensequenz begonnen hat, in einer EDS-Datenbank auf.
  • Wie oben erwähnt ist, muss es einen vorbestimmten Extrahierungsalgorithmus geben, der ein zu extrahierendes Datensegment definiert. Im Allgemeinen definiert ein Extrahierungsalgorithmus den Beginn und das Ende einer Datensequenz, die zu einem extrahierten Datensegment werden soll. Die Steuerung, die den Extrahierungsalgorithmus ausführt, muss dazu in der Lage sein, die Identifizierung auszuführen, bevor die Datensequenz den FIFO-Puffer 12 verlässt. Der Extrahierungsalgorithmus muss in Echtzeit arbeiten. Echtzeitauslösealgorithmen, die den Beginn einer Sequenz von Interesse in der Eingabe in ein Oszilloskop identifizieren, sind in der Technik bekannt. Die Auslösealgorithmen identifizieren ein so einfaches Merkmal wie eine ansteigende Flanke oder ein so komplexes Merkmal wie ein spezifisches Signal. Bei dem System der vorliegenden Offenbarung wählt der Extrahierungsalgorithmus vorzugsweise einen breiten Bereich an Signalen aus, da die genaue Art der Datensequenz von Interesse vorab nicht bekannt ist, und somit wird ein Echtzeitauslösealgorithmus bevorzugt, der eine große Klasse von Signalen identifiziert. Es ist zu beachten, dass der Start der Datensequenz, die zu einem extrahierten Datensegment werden soll, nicht bei dem Abtastwert auftreten muss, der den Echtzeitauslöser ausgelöst hat. Beispielsweise könnte das extrahierte Datensegment um eine vorbestimmte Anzahl von Abtastwerten vor dem von dem Echtzeitauslöser identifizierten Abtastwert beginnen.
  • Der Extrahierungsalgorithmus muss außerdem das Ende der Datensequenz von Interesse spezifizieren. Bei einem exemplarischen Ausführungsbeispiel spezifiziert der Extrahierungsalgorithmus einen Auslöser und ein Fenster in dem FIFO-Puffer 12. Bei diesem Beispiel endet das extrahierte Datensegment am Ende des Fensters und alle Abtastwerte in dem spezifizierten Fenster gehören zu dem EDS, obwohl das Signal von Interesse vor dem letzten Datenwert in dem Fenster enden kann.
  • Bei einem weiteren exemplarischen Ausführungsbeispiel spezifiziert der Algorithmus einen Auslöser, der das Ende der zu extrahierenden Datensequenz signalisiert. Beispielsweise könnte der Extrahierungsalgorithmus erfordern, dass das Ende des Datensegments von Interesse signalisiert wird, wenn Datenwerte eine abfallende Flanke ausbilden, welche bei einem Wert unter einem Schwellwert endet und für eine bestimmte Anzahl an Abtastwerten bei oder unter diesem Wert bleibt. Demgemäß umfasst die EDS-Datenbank auch die Länge des EDS oder äquivalente Informationen wie etwa den Index des letzten Datenabtastwertes in dem EDS.
  • Bei einem Aspekt der Erfindung sind in einer EDS-Datenbank 19 auch Informationen enthalten, die das Ende des EDS spezifizieren.
  • Sobald ein neues EDS extrahiert ist, wird dieses EDS mit jedem RDS in einer dynamisch erzeugten Referenzbibliothek verglichen. Die RDS-Bibliothek umfasst eine RDS-Datenbank 18, die Informationen zu jedem RDS in der Bibliothek speichert. Wenn das neue EDS einem der RDSs ausreichend ähnelt, wird der neue EDS-Eintrag in der EDS-Datenbank aktualisiert, um diese Verbindung zu zeigen, und die RDS-Datenbank wird aktualisiert, um zu zeigen, dass das neue EDS als Teil eines diesem RDS zugeordneten Clusters identifiziert ist. Wenn das neue EDS einem der RDSs nicht ausreichend ähnelt und eine ausreichende Verarbeitungszeit nach dem Vergleichen des neuen EDS mit allen RDSs in der RDS-Datenbank verbleibt, wird ein neues RDS unter Verwendung des neuen EDS als das RDS begonnen und die relevanten Daten werden in die RDS-Datenbank eingegeben. Falls keine ausreichende Verarbeitungszeit verfügbar ist, wird der neue EDS-Eintrag in der EDS-Datenbank als nicht zugewiesen markiert. Beispielsweise kann ein neues EDS während des Abgleiches des EDS mit den RDSs entdeckt werden, bevor alle RDSs berücksichtigt worden sind, und somit muss die Steuerung 15 den neuen EDS-Puffer für dieses neue EDS verwenden.
  • Zu Beginn der Verarbeitung des Datenstroms empfängt die Steuerung 15 einen Ähnlichkeitsmessalgorithmus zum Messen der Ähnlichkeit zwischen zwei Datensegmenten. Bei einem Aspekt der Erfindung erzeugen die Ähnlichkeitsalgorithmen ein Ähnlichkeitsmaß, das mit einem Schwellwert verglichen wird, um zu bestimmen, ob sich zwei Datensegmente ähneln. Dieser Algorithmus wird von der Steuerung 15 dazu verwendet, die Ähnlichkeit zwischen einem EDS und den RDSs in der RDS-Bibliothek zu messen. Die Ähnlichkeitsalgorithmen lassen sich leichter verstehen, wenn man vier Arten von Algorithmen betrachtet. Die ersten drei Arten von Algorithmen arbeiten an den Datenwerten selbst. Die vierte Art von Algorithmus arbeitet an „Signaturen“, die aus jeder Datensequenz abgeleitet werden.
  • Die erste Art von Ähnlichkeitsalgorithmus vergleicht die Datensegmente direkt, um deren Ähnlichkeit zu bestimmen. In dem einfachsten Fall weisen die zwei Datensegmente dieselbe Länge auf und die Ähnlichkeitsfunktion misst einen Abstand zwischen zwei Vektoren, deren Komponenten die Datenwerte sind. Weist ein EDS beispielsweise Abtastwerte p(i) für i=1 bis N auf und das RDS weist Abtastwerte q(i) für i=1 bis N auf, ist der euklidische Abstand D ( p , q ) = i = 1 N ( p ( i ) q ( i ) ) 2
    Figure DE102019215765A1_0001
    ein Maß des Ähnlichkeitsgrades der zwei Datensegmente. Wenn D(p,q) geringer ist als die Schwelle, T, werden die zwei Datensegmente als ähnlich zueinander definiert, wobei T ein vorbestimmter Schwellwert ist. Es gibt viele Abstandsfunktionen, die zu diesem Zweck anstelle des euklidischen Abstands verwendet werden können. Wie im Folgenden ausführlicher besprochen wird, ist bei einigen Anwendungen eine bestimmte Abstandsfunktion bevorzugt, da die Rechenbelastung beim Berechnen der Funktion geringer ist.
  • Die zweite Art von Ähnlichkeitsfunktion normalisiert die Datensegmente vor dem Messen des Abstands zwischen den Datensegmenten. Bei einigen Anwendungen ist die Form der Datensegmente wichtiger als die exakte Übereinstimmung der Datensegmente. Beispielsweise können die Datensegmente zwei Signale darstellen, die sich hinsichtlich ihrer Amplitude unterscheiden, jedoch dieselbe Form aufweisen. Das heißt, p(i)=Kq(i). Wenn das Ziel des Benutzers darin besteht, Signale zu suchen, deren Form unabhängig von den Amplituden der Signale gleich ist, wird jedes Datensegment zuerst durch eine Konstante dividiert, die von der durchschnittlichen Amplitude abhängt, bevor der Abstand zwischen den Segmenten berechnet wird. Bei einem Beispiel ist die Konstante der Maximalwert des Datensegments. Bei einem weiteren Beispiel ist die Konstante der Durchschnittswert der Absolutwerte der Datenwerte in dem Datensegment.
  • Die dritte Art von Ähnlichkeitsfunktion sucht nach einer Übereinstimmung zwischen einem kleineren Datensegment und einem größeren Datensegment. Dies ist nützlich, wenn der Benutzer Datensegmente finden möchte, die eine kleinere Sequenz enthalten. Diese Situation tritt auf, wenn Datensegmente unterschiedliche Längen aufweisen. Grundsätzlich möchte der Benutzer eine größere Datensequenz finden, die eine Sequenz enthält, die der kleineren Datensequenz ähnelt. Bei einem Beispiel wird der Abstand zwischen dem kleineren Datensegment und einem entsprechenden Abschnitt des größeren Datensegments gemessen. Wenn das kleinere Datensegment p(i) für i=1 bis m ist und das größere Datensegment q(i) für i=1 bis N ist, dann kann eine Abstandsfunktion D ( p , q , k ) = i = 1 m ( p ( i + k ) q ( i ) ) 2
    Figure DE102019215765A1_0002
    für k=0 bis (N-m-1) definiert werden. D wird für die zahlreichen Werte von k bestimmt und der Mindestwert von D ist als der mit der Schwelle zu vergleichende Abstand ausgewählt. Es ist zu beachten, dass die Vorgehensweise angewendet werden kann, wenn die Werte von p und q normalisiert werden können, wie oben beschrieben ist. Um die Verarbeitungszeit zu reduzieren, kann k auf einen kleinen Bereich eingeschränkt werden. Wenn der Benutzer Grund zur Annahme hat, dass die zwei Datensequenzen am Beginn ausgerichtet sind, kann k auf null beschränkt werden.
  • Die obigen Ähnlichkeitsfunktionen arbeiten direkt an den Datensegmenten, die verglichen werden. Diese Art von Ähnlichkeitsfunktion ist intuitiv für Personen, die keine Experten in der Cluster-Analyse sind. Jedoch kann die Arbeitsbelastung, um die Ähnlichkeitsmaße zu berechnen, wenn die EDSs klassifiziert werden, groß sein, wenn die EDSs groß sind. Zusätzlich dazu kann in Abhängigkeit von der Art der Ähnlichkeit, die der Benutzer zum Klassifizieren der EDSs verwenden möchte, die vierte Klasse von Ähnlichkeitsfunktionen bevorzugt werden.
  • Bei der vierten Klasse der Ähnlichkeitsanalyse wird ein Signaturvektor aus jedem Datensegment abgeleitet. Der Abstand zwischen den Signaturvektoren kann dazu verwendet werden, die Ähnlichkeit analog zu der oben beschriebenen Art und Weise zu messen. Bei dieser Art von Ähnlichkeitsmessung weisen die Signaturvektoren für alle EDSs dieselben Komponenten auf, auch wenn sich die Längen der Datensegmente unterscheiden. Im Allgemeinen ist die Anzahl von Komponenten in einem Signaturvektor viel kleiner als die Anzahl von Datenwerten in einem EDS und somit wird die Rechenbelastung beim Ausführen der Abstandsmessungen wesentlich reduziert, jedoch werden diese Einsparungen durch die Rechenbelastung beim Ableiten der Komponenten des Signaturvektors aus dem entsprechenden Datensegment ausgeglichen. Im Allgemeinen kann eine Komponente des Signaturvektors jegliche Funktion des Datensegments sein, die dieses Datensegment wahrscheinlich von anderen Datensegmenten unterscheidet. In dem Fall, in dem der Extrahierungsalgorithmus Datensegmente unterschiedlicher Längen erzeugt, könnte eine Komponente eines Signaturvektors die Länge des Datensegments sein. Andere Komponenten können aus auf das Datensegment angewendeten Filtern mit endlicher Impulsantwort abgeleitet werden. Beispielsweise können Komponenten verwendet werden, die die Amplitude von Frequenzkomponenten des Datensegments darstellen.
  • Der Prozess des Identifizierens der EDSs und des Aktualisierens der RDS-Bibliothek, um jedes gefundene neue EDS zu berücksichtigen, wird vorzugsweise in Echtzeit ausgeführt. Für die Zwecke der vorliegenden Offenbarung gilt ein Prozess als in Echtzeit ausgeführt, wenn der Prozess ohne Reduzierung der Rate, mit der der Datenstrom in einen Datenerfasser gemäß der vorliegenden Erfindung eintritt, abgeschlossen werden kann. Im Fall des Datenextrahierungsabschnitts der Verarbeitung bewegt sich der Eingangsdatenstrom durch einen FIFO und dann heraus zu dem Plattenspeicher; also die Extrahierungsverarbeitung, d. h. das Identifizieren des neuen EDS; die Steuerung muss dazu in der Lage sein, das Datensegment zu identifizieren, das den Extrahierungsalgorithmus erfüllt, und muss das Datensegment zu einem Puffer in einem Speicher bewegen, bevor sich ein Teil des Datensegments aus dem FIFO-Puffer bewegt.
  • Die Zeit, die benötigt wird, um die vorläufigen Klassifizierungen auszuführen und die RDS-Bibliothek zu aktualisieren, hängt von der Größe des Speichers und dem Grad der verfügbaren Parallelverarbeitung ab. Bei einem Aspekt wird das neue EDS in den EDS-Puffer 17 im Speicher bewegt und mit dem RDS in der Bibliothek verglichen. Die Zeit, die benötigt wird, um ein neues EDS mit den RDSs zu vergleichen, kann verbessert werden, indem die RDSs während der Vergleiche im Speicher behalten werden.
  • Ferner kann die Zeit zum Finden einer Übereinstimmung verbessert werden, indem der Abgleich in einer Reihenfolge ausgeführt wird, welche die Wahrscheinlichkeit zum Auffinden einer Übereinstimmung mit einem bestehenden RDS widerspiegelt. Die RDS-Datenbank umfasst einen Zählwert der EDS-Übereinstimmungen, die bereits für dieses RDS gefunden worden sind. Diese Zählwerte sind ein Maß der Wahrscheinlichkeit, dass das entsprechende RDS mit dem nächsten EDS übereinstimmen wird. Somit verbessert das Ausführen des Abgleiches in der Reihenfolge der jedem RDS zugehörigen Zählwerte die Geschwindigkeit der Suche nach einer Übereinstimmung, falls eine vorhanden ist.
  • Wenn sich die Wahrscheinlichkeit im Laufe der Zeit ändert, kann eine separate Wahrscheinlichkeitsvariable verwendet werden, die sich im Laufe der Zeit abnimmt. Jedes Mal, wenn einem RDS ein EDS zugewiesen wird, wird der Wahrscheinlichkeitszählwert für dieses RDS um eins inkrementiert. Die Wahrscheinlichkeitszähler werden regelmäßig durch das Multiplizieren der Zählwerte mit einem Abnahmefaktor geringer als eins reduziert. Die Suche nach einer Übereinstimmung wird in einer durch den Wahrscheinlichkeitszählwert definierten Reihenfolge ausgeführt.
  • Schließlich ist zu beachten, dass die Zeit für den Abgleichvorgang durch eine Parallelverarbeitung reduziert werden kann. Der Abgleich des neuen EDS mit einem der RDSs kann parallel zu dem Abgleich des EDS mit einem anderen der RDSs ausgeführt werden. Somit kann die Abgleichzeit ungefähr um einen Faktor M reduziert werden, wobei M die Anzahl von verfügbaren parallelen Prozessoren ist. Die Abstandsberechnungen können auch mit den Grafikprozessorkernen in einer fortschrittlichen Grafikkarte ausgeführt werden; somit kann die Geschwindigkeitsverbesserung mittels Parallelverarbeitung einen Faktor von mehr 1000 betragen.
  • Es ist außerdem zu beachten, dass die Steuerung bei dem Abgleichvorgang im Durchschnitt lediglich ein EDS in der Zeit verarbeiten muss, die durchschnittlich zum Auffinden und Extrahieren eines EDS benötigt wird. Wenn ausreichend viele Puffer zum Speichern der eine Verarbeitung erwartenden neuen EDSs vorhanden sind, muss das System ein EDS lediglich in der durchschnittlichen Zeit zum Auffinden einer Übereinstimmung und nicht in der längsten Zeit zum Auffinden einer Übereinstimmung verarbeiten.
  • Es ist weiterhin möglich, dass der Abgleich eines EDS mit einem RDS in der RDS-Bibliothek nicht abgeschlossen ist, bevor die Pufferkapazität zum Aufbewahren auf Übereinstimmungen wartender neuer EDSs überschritten wird. In diesem Fall wird der EDS-Datenbankeintrag für das fehlgeschlagene EDS als nicht gefunden markiert und die Verarbeitung geht zu dem nächsten EDS über, das auf den Abgleich wartet, wodurch der Puffer, der das fehlgeschlagene EDS enthalten hat, für die Verwendung durch ein neues EDS freigegeben wird. Die fehlgeschlagenen EDSs können am Ende des Aufzeichnungszeitraums oder dann, wenn Pufferspeicherplatz aufgrund einer niedrigen Entdeckungsrate neuer EDSs während eines darauffolgenden Abschnitts des Aufzeichnungszeitraums verfügbar wird, verarbeitet werden.
  • Bei einem Aspekt des Systems ist die Referenzdatenbank zum Start des Datenaufzeichnungsvorgangs leer. Wenn neue extrahierte Datensegmente gefunden werden, werden einige der neuen extrahierten Datensegmente zu Referenzdatensegmenten. Beispielsweise wird das erste extrahierte Datensegment ein Referenzdatensegment. Das zweite neue extrahierte Datensegment kann ein neues Referenzdatensegment werden oder kann als Teil des durch das zuvor erstellte Referenzdatensegment dargestellten Clusters gekennzeichnet werden.
  • Bei einem weiteren Aspekt der Erfindung kann der Benutzer ein oder mehrere in den Vergleichen zu verwendende Referenzdatensegmente eingeben. Die Referenzsegmente könnten in einem anderen Datenstrom gefunden worden sein, der durch eine zu der vorliegenden Erfindung analoge Vorrichtung analysiert wird, durch den Benutzer erzeugt werden oder von dem Hersteller der Datenerfassungsvorrichtung bereitgestellt werden.
  • Bei einem Aspekt der Erfindung stehen die RDS-Datenbank und zugeordnete RDSs, die während der Aufzeichnung und anfänglichen Verarbeitung in einem Speicher gehalten werden, einem Benutzer während der Aufzeichnung zur Ansicht bereit, um dem Benutzer dabei zu helfen, den Datenstrom zu verstehen, der erfasst wird. Bei einem Ausführungsbeispiel wird dem Benutzer eine Liste von RDSs geordnet nach Zählwert der Anzahl von EDSs präsentiert, die sich als ähnlich zu dem RDS herausgestellt haben. Der Benutzer kann dann ein oder mehrere RDSs zur Anzeige auswählen.
  • Wie oben erwähnt ist, umfasst die RDS-Datenbank einen Eintrag für jedes RDS, der unter anderem die Identifizierung jedes EDS auflistet, das sich als ähnlich zu dem RDS herausgestellt hat. Bei einem Aspekt ist die Identifizierung der Index in dem Datenstrom, bei dem das EDS gefunden wurde. Das EDS ist hier aufgelistet, da das Ähnlichkeitsmaß zwischen dem EDS und dem RDS eine vorbestimmte Schwellbedingung erfüllt hat. Beispielsweise war der Abstand zwischen dem EDS und dem RDS geringer als ein Schwellwert. Wenn die Schwellbedingung zu locker ist, wird dem RDS eine große Anzahl von EDSs zugeordnet. Noch wichtiger ist, dass ein einzelnes RDS-Signal von zwei oder mehr unterschiedlichen Clustern von Signalen in dem Eingangsdatenstrom enthalten kann. Wie im Folgenden ausführlicher beschrieben wird, ist ein solches RDS zu vermeiden.
  • Wenn die Schwellbedingung zu eng ist, sind viel mehr RDSs vorhanden und die Größe des von jedem RDS definierten Clusters wird kleiner sein. Grundsätzlich können die kleineren RDS-Cluster kombiniert werden, um während des Postaufzeichnungsprozesses ein größeres Cluster bereitzustellen. Jedoch erhöht eine große Anzahl von kleinen RDS-Clustern während der Datenerfassung die Rechenbelastung wesentlich, die dem Abgleichen eines neuen EDS mit einem RDS-Cluster zugeordnet ist. Demgemäß besteht ein Kompromiss zwischen der Schwellbedingung und der Spezifität der RDS-Cluster.
  • Bei einem Aspekt der Erfindung umfassen die RDS-Datenbankeinträge für jedes RDS außerdem das tatsächliche Ähnlichkeitsmaß für jedes EDS, das diesem RDS zugeordnet ist. Ein Histogramm dieser Maße wird einem Benutzer auf die Anforderung des Benutzers hin durch die Steuerung während des Aufzeichnungsprozesses und während des Postaufzeichnungsprozesses optional bereitgestellt. Durch Betrachtung des Histogramms, insbesondere in Fällen, in denen einem RDS eine große Anzahl von EDSs zugeordnet ist, kann der Benutzer Einblick in Bezug auf die Struktur des Clusters gewinnen. Wenn das Histogramm beispielsweise mehrere Spitzen aufgezeigt hat, könnte das Cluster EDSs aus mehreren Clustern der Signale in dem Eingangsdatenstrom enthalten, und somit erfordern, dass das RDS in einer Mehrzahl von neuen RDSs erweitert wird, wie im Folgenden beschrieben ist.
  • Am Ende der Aufzeichnungsphase hat die vorliegende Erfindung zwei Datenbanken erzeugt. Die erste identifiziert alle Datensegmente, die den Extrahierungsalgorithmus erfüllt haben. Diese Datenbank umfasst die Position jedes EDS in dem aufgezeichneten Datenstrom und alle RDSs, die diesem EDS ähneln. Unter Verwendung dieser Datenbank kann die Steuerung auf jedes EDS zugreifen, das mit einem RDS in Verbindung steht. Die zweite Datenbank identifiziert alle RDSs, die während des Aufzeichnungsprozesses erzeugt wurden. Die Informationen in der RDS-Datenbank identifizieren alle EDSs, die mit einem bestimmten RDS in Verbindung stehen, die Position des EDS, welches das RDS in dem aufgezeichneten Datenstrom begonnen hat, sowie weitere Informationen über die RDSs, wie vorhergehend besprochen wurde.
  • In einigen Fällen kann es nützlich sein, eines oder mehrere der IDSs zu überprüfen. Wenn beispielsweise der Extrahierungsalgorithmus ein festes Fenster relativ zu einer Auslöseposition definiert, kann das Fenster zu klein sein, um alle dem Auslöser zugeordneten Signale zu erfassen. Das Leerlaufdatensegment nach dem EDS kann den fehlenden Abschnitt des abgeschnittenen EDS bereitstellen. Der Index auf der Platte des IDS nach einem EDS kann aus dem Index des Endes dieses EDS berechnet werden.
  • Wie bereits erwähnt, können EDSs vorhanden sein, deren Klassifizierung in Bezug auf die RDS-Bibliothek fehlgeschlagen ist, da die für alle Vergleiche verfügbare Zeit nicht ausreichend war. Die EDS-Datenbank markiert solche EDSs. In der Postaufzeichnungsverarbeitung können diese fehlgeschlagenen EDSs erneut verarbeitet werden. Die Position jedes solchen EDS wird in der EDS-Datenbank aufgezeichnet. Das EDS kann aus dem aufgezeichneten Datenstrom abgerufen werden, da seine Position in dem Datenstrom bekannt ist. Ferner muss nicht der gesamte aufgezeichnete Datenstrom wiedergegeben werden, um dieses EDS zu erreichen, wenn sich der aufgezeichnete Datenstrom auf einem Plattenlaufwerk oder einer ähnlichen Speichervorrichtung mit Zufallszugriff befindet. Somit kann das EDS abgerufen und gegen die aktuelle RDS-Bibliothek verglichen werden. Zu diesem Zeitpunkt kann das EDS einem oder mehreren der RDSs unter Verwendung des Ähnlichkeitsalgorithmus zugeordnet werden oder ein neues RDS kann für dieses EDS definiert werden, wenn kein ausreichend ähnliches RDS gefunden wird.
  • Eines der Ziele des hierin beschriebenen Datenaufzeichnungsprozesses besteht darin, Signale zu katalogisieren, die einander ähneln, und es dem Benutzer somit zu ermöglichen, die unterschiedlichen Signalarten in den aufgezeichneten Daten zu verstehen. Obwohl jedes RDS ein Cluster von EDSs darstellt, erlaubt es die Sammlung von RDSs dem Benutzer möglicherweise nicht, das Clustern des zugrundeliegenden Satzes von EDSs zu verstehen. Beispielsweise kann eine viel größere Anzahl an RDSs vorhanden sein, als Cluster in dem zugrundeliegenden Satz von EDSs vorhanden sind. Die vorliegende Erfindung stellt zwei Werkzeuge bereit, um Einblicke in das Clustern der zugrundeliegenden Signale zu erhalten.
  • Das erste Werkzeug arbeitet an den RDSs, um Gruppen von RDSs zu finden, die Teil desselben zugrundeliegenden Signalclusters sind. Jeder RDS-Eintrag in der RDS-Datenbank umfasst ein EDS, das ein Vertreter der kleinen Gruppe von EDSs ist. Somit erlaubt es das Clustern von ausgewählten RDSs dem Benutzer, ein großes Cluster von ähnlichen EDSs herzustellen. Da die Anzahl von RDSs wesentlich kleiner ist als die Anzahl von EDSs, kann das Clustern der RDSs mit einer wesentlich kleineren Rechenbelastung ausgeführt werden. Um die Nomenklatur in der folgenden Besprechung zu vereinfachen, wird ein Cluster von RDSs als Gruppe bezeichnet.
  • Das Ziel des Clusterns der RDSs lässt sich unter Bezugnahme auf ein einfaches Beispiel leichter verstehen. Betrachtet wird ein RDS, das sich an oder in der Nähe der Mitte eines Clusters von Signalen in dem Eingangsdatenstrom befindet. Es wird angenommen, dass der Ähnlichkeitsalgorithmus den Abstand zwischen zwei Datensegmenten misst. Im Einzelnen wird der Abstand von dem EDS, das die Basis dieses RDS bildet, zu jedem der anderen EDS in der EDS-Bibliothek betrachtet. Eine beispielhafte grafische Darstellung der Verteilung solcher Abstände in Abhängigkeit von dem Abstand zu dem RDS ist in 2 gezeigt. In dem in 2 gezeigten Beispiel ist bei T1 der Begrenzungsabstand gezeigt, der zum Definieren der diesem RDS entsprechenden EDSs verwendet wird, und das RDS enthält lediglich einem ersten Cluster 31 der Eingangssignale entsprechende EDSs. Im Idealfall ist dieses RDS mit anderen RDSs derart zu kombinieren, dass die resultierende Gruppe einen effektiven Begrenzungsabstand aufweist, wie bei T3 gezeigt ist.
  • Wie oben erwähnt ist, wird dann, wenn der ursprüngliche Begrenzungsabstand, zu groß ist, wie bei T2 gezeigt ist, das RDS einem zweiten Cluster 32 in den Eingangssignalen entsprechende EDSs enthalten. Wenn solch ein RDS mit einem weiteren RDS kombiniert wird, würde das resultierende RDS auch zu zwei Clustern in dem Eingangssignal gehörende EDSs enthalten und somit wäre die resultierende Gruppe nicht auf ein Cluster in den Eingangssignalen beschränkt. Wie oben erwähnt ist, kann eine zum Beispiel in 2 gezeigte Frequenzverteilung beim Identifizieren eines zu großen RDS hilfreich sein.
  • Die RDSs werden auf eine Art und Weise gruppiert, die analog zu der verwendeten Art und Weise ist, um ein RDS aus den EDSs zu erstellen. Beim Bilden der Gruppen werden eine Ähnlichkeitsbeziehung und eine Schwelle auf eine Art und Weise definiert, die zu der oben beschriebenen analog ist. Diese Definitionen können einem Benutzer über eine Benutzerschnittstelle 21 oder das System selbst bereitgestellt werden. Im einfachsten Fall wird dieselbe Ähnlichkeitsbeziehung, die zum Erstellen der RDSs verwendet wurde, dazu verwendet, die Gruppen zu erstellen, indem die Ähnlichkeitsschwelle dahin gehend geändert wird, beim Zulassen eines Kandidaten-RDS in die Gruppe weniger selektiv zu sein. Jedoch könnte eine unterschiedliche Ähnlichkeitsbeziehung verwendet werden.
  • Anfänglich gibt es keine Gruppen und daher besteht die erste Gruppe aus dem ersten RDS, das getestet wird. Bei einem Aspekt der Erfindung wird das RDS mit der höchsten Anzahl an EDSs dahin gehend ausgewählt, diese erste Gruppe zu beginnen. Dieser Aspekt basiert auf einem Modell, in dem ein zugrundeliegendes Cluster in den EDSs an oder in der Nähe von einem der RDSs zentriert wird. Somit ist es wahrscheinlich, dass das RDS mit dem höchsten Zählwert an oder in der Nähe der Mitte eines solchen Clusters angeordnet ist. Die Gruppe wird gefüllt, indem die verbleibenden RDSs, die bisher noch nicht zu einer Gruppe zugewiesen worden sind, überprüft werden, wenn das Ähnlichkeitsmaß für die zwei RDSs angibt, dass die zwei RDSs die Ähnlichkeitsbedingung erfüllen. Dieser Prozess wird dann mit dem RDS mit dem maximalen Zählwert wiederholt, welches bisher noch keiner Gruppe zugewiesen worden ist. Wenn keine weiteren nichtzugewiesenen RDSs vorhanden sind, ist der Prozess abgeschlossen.
  • Der Benutzer kann die den RDSs in jeder Gruppe entsprechenden Datensegmente als Reaktion auf einen geeigneten Befehl anzeigen, der dem Datenverarbeitungssystem gegeben wird. Diese Anzeige kann auf das EDS, das als Mitte jede RDS definiert ist, oder auf alle EDSs, die einer Gruppe zugeordnet sind, eingeschränkt werden. Diese Anzeige erlaubt es dem Benutzer, zu bestimmen, ob die Signale, die unter Verwendung der Ähnlichkeitsbeziehung gruppiert worden sind, dem Benutzer tatsächlich ähnlich erscheinen. Schließlich kann der Benutzer eine zum Beispiel die in 2 gezeigte Frequenzverteilung betrachten, um dabei beim Bestimmen zu helfen, ob der Gruppierungsprozess zu weit ausgeführt worden ist.
  • Wenn die Anzahl von Gruppen weiterhin zu groß ist, kann der Prozess unter Verwendung desselben Ähnlichkeitsalgorithmus jedoch mit einer unterschiedlichen Schwelle wiederholt werden, die dahin gehend ausgewählt ist, beim Auffinden einer Ähnlichkeit weniger streng zu sein. Ferner kann der Prozess unter Verwendung eines unterschiedlichen Ähnlichkeitsalgorithmus wiederholt werden. Die einzige Beschränkung in Bezug auf den Ähnlichkeitsalgorithmus besteht darin, dass dieser dazu in der Lage sein muss, an zwei beliebigen EDSs zu arbeiten. Beispielsweise kann ein an EDSs unterschiedlicher Längen arbeitender Ähnlichkeitsalgorithmus erstellt werden, indem das Ähnlichkeitsmaß derart festgelegt wird, dass sich die zwei EDSs nicht ähneln, wenn die Länge der zwei EDSs im Wesentlichen nicht dieselbe ist. Wenn die Länge der zwei EDSs im Wesentlichen gleich ist, dann wird eine Abstandsfunktion berechnet und mit einer Schwelle verglichen, um zu bestimmen, ob sich die zwei EDSs ähneln. Bei einem weiteren Beispiel könnte der Ähnlichkeitsalgorithmus zuerst eine Signatur für jede der zu vergleichenden EDSs ableiten und dann den Abstand zwischen den Signaturen messen, um zu bestimmen, ob sich die zwei EDSs ähneln.
  • Die obige Beschreibung nimmt eine bestimmte Art von Cluster-Algorithmus zum erneuten Clustern der RDSs an. Jedoch könnten andere Cluster-Techniken mit dem ersten Werkzeug verwendet werden.
  • Wie oben erwähnt ist, könnte dann, wenn die zum Erzeugen eines der RDSs verwendeten Ähnlichkeitskriterien zu locker sind, dieses RDS eine große Anzahl von EDSs enthalten. Zusätzlich dazu kann dieses RDS mehr als ein Cluster in den Eingangssignalclustern überspannen. Demgemäß ist es nützlich, solch ein RDS mit einer Mehrzahl von RDSs zu ersetzen, die kleinere Anzahlen von jedem RDS zugeordnete EDSs aufweisen. Bei einem Aspekt der Erfindung kann ein RDS in mehrere kleine RDSs unterteilt werden, indem alle diesem RDS zugeordneten EDSs abgerufen werden und diese EDSs unter Verwendung einer restriktiveren Ähnlichkeitsbegrenzungsschwelle erneut geclustert werden. Das erneute Clustern wird analog zu der oben in Bezug auf das ursprüngliche Clustern der EDSs beschriebenen Weise ausgeführt. Das erste neue RDS wird dahin gehend definiert, das erste EDS der Gruppe von extrahierten EDSs zu enthalten. Jedes darauffolgende EDS wird dann mit den neuen RDSs verglichen. Wenn das EDS einem RDS ähnelt, wie durch den neuen Begrenzungswert bestimmt wird, ist dieses EDS in diesem RDS enthalten. Wenn das EDS keinem der neuen RDSs ausreichend ähnelt, wird ein weiteres neues RDS definiert und dieses EDS wird dazu verwendet, dieses RDS zu starten. Wenn der neue Satz von RDSs in der RDS-Bibliothek enthalten ist, kann die Gruppierung der RDSs wiederholt werden.
  • Das Clustern der RDSs nach der Aufzeichnung basiert auf dem Extrahierungsalgorithmus, der beim Auswählen der in die RDSs gruppierten EDSs verwendet wird. Wie oben erwähnt ist, kann zuerst jedes RDS mehrere Cluster umfassen. Solch ein RDS kann entweder durch erneutes Erzeugen des RDS, wie oben beschrieben wurde, oder, falls die Rechenressource dies zulässt, durch Laden aller dem RDS zugeordneten EDSs in kleinere Cluster und Durchführen von Clustern-Algorithmen direkt an diesen EDSs aufgeteilt werden. Alternativ dazu nähern sich dann, wenn der Extrahierungsalgorithmus beispielsweise durch Auswählen aller Abtastwerte in einem Fenster einer festen Größenposition relativ zu einem Startauslöser ausgeführt wird, die resultierenden EDSs einem Datensegment, das nur das Signal von Interesse enthält, lediglich an. Wenn das Fenster zu groß ist, umfasst das EDS eine signifikante Anzahl an Hintergrundabtastwerten, die die Abstandsberechnung verzerren können. Gleichermaßen wird ein Teil des Signals von Interesse abgeschnitten, wenn das Fenster zu klein ist. Wie oben erwähnt ist, kann auf das einem EDS folgende IDS zugegriffen werden und der verlorene Abschnitt eines durch das feste Fenster abgeschnittenen Signals kann wiederhergestellt werden. Demgemäß sind die EDSs lediglich Näherungen des Datensignals von Interesse.
  • Das oben erwähnte zweite Werkzeug erlaubt es dem Benutzer, diese Näherungen zu korrigieren und somit das Clustern zu verbessern. Wenn der EDS-Extrahierungsalgorithmus beispielsweise auf einem festen Fenster basiert, kann das Datenverarbeitungssystem einen Zuschneidungsalgorithmus ausführen, der die einem EDS zugeordnete Stoppposition vom Ende des festen Fensters zu einer Position ändert, die mit dem physischen Ende des Signals von Interesse übereinstimmt. Wenn beispielsweise das Ende des EDS eine Zeichenfolge von Abtastwerten ist, die den Hintergrundpegel in dem Datenkanal darstellen, kann das Ende des EDS als Position des letzten Datenwertes definiert werden, der über dem Hintergrund liegt. Wenn das EDS durch das Fenster abgeschnitten wurde und es ein Leerlaufdatensegment benachbart zu dem fraglichen EDS gibt, dann kann das Ende des EDS gleichermaßen modifiziert werden, um das Ende der Daten in dem Leerlaufdatensegment zu zeigen.
  • Nachdem die EDSs aktualisiert wurden, um diese Näherungen zu korrigieren, kann die neue Sammlung von EDSs dann unter Verwendung desselben Ähnlichkeitsalgorithmus oder eines unterschiedlichen Ähnlichkeitsalgorithmus in RDSs geclustert werden. Wie oben in Bezug auf das erste Werkzeug besprochen wurde, kann der neue Satz von RDSs kann dann geclustert werden. Es ist zu beachten, dass dann, wenn ausreichende Rechenressourcen verfügbar sind, alle dem neu geclusterten RDS entsprechenden EDSs als Gruppe gesammelt und neu geclustert werden können, um einen neuen Satz von RDSs bereitzustellen, um das ursprüngliche große RDS zu ersetzen.
  • Während der Postaufzeichnungsverarbeitung unter Verwendung der obigen zwei Werkzeuge kann der Benutzer die tatsächlichen EDSs betrachten, die einem oder mehreren Clustern entsprechen. Wenn die EDSs in einem Cluster dem Benutzer nicht ausreichend ähnlich erscheinen, kann der Benutzer sowohl den Ähnlichkeitsalgorithmus als auch den Schwellwert ändern, die beim Bestimmen der Ähnlichkeit verwendet werden. Bei einem Aspekt der Erfindung kann der Benutzer den Ähnlichkeitsalgorithmus aus einer vorbestimmten Liste von Ähnlichkeitsalgorithmen auswählen.
  • Bei den oben beschriebenen Ausführungsbeispielen ist die RDS-Datenbank anfänglich leer und wird dann im Laufe der Aufzeichnung gefüllt. Jedoch können auch Ausführungsbeispiele geschaffen werden, in denen ein oder mehrere RDSs vor dem Beginn der Aufzeichnung definiert werden. Diese anfänglichen RDSs ermöglichen es dem Benutzer, nach spezifischen Signalen Ausschau zu halten, während derselbe im Laufe des Empfangs des Datenstroms die Inhalte des Datenstroms erhält. Die Referenzdatensegmente könnten auch in einem anderen Datenstrom gefunden worden sein, der durch eine zu der vorliegenden Erfindung analoge Vorrichtung analysiert wurde, oder durch den Benutzer erstellt worden sein.
  • Es können auch Ähnlichkeitsalgorithmen verwendet werden, bei denen das EDS und das RDS vor dem Messen der Ähnlichkeit zwischen den zwei Datensegmenten normalisiert werden. Beispielsweise könnte jedes Datensegment durch den Maximalwert der Abtastwerte in dem Datensegment dividiert werden, so dass der Vergleich eine Ähnlichkeit in Hinblick auf die Form misst. Bei einem weiteren Beispiel wird das EDS mit einer Konstante multipliziert und die Ähnlichkeit wird berechnet. Der Prozess kann für unterschiedliche vorbestimmte Konstanten ausgeführt werden und das höchste Ähnlichkeitsmaß verwendet werden.
  • Bei einem Aspekt der Erfindung wird die Verarbeitung organisiert, um so viele vorläufige Daten wie möglich zu erhalten, während der Datenstrom in Echtzeit aufgezeichnet wird. Die höheren Ebenen der Verarbeitung werden dann im Hintergrund ausgeführt oder nachdem die Datenaufzeichnung abgeschlossen ist. Die Verarbeitung zum Zeitpunkt der Aufzeichnung einer großen Datenmenge ermöglicht eine Extrahierung eines Datensegments, das die Extrahierungsbedingung erfüllt, eine vorläufige Klassifizierung eines ähnlichen Datensegments auf der Basis des extrahierten Datensegments und eine Detektion und Registrierung eines Referenzdatensegments, während der Ausführung einer Aufzeichnung von Eingangsdaten, was eine Echtzeitbetriebsleistung erfordert. Das Ergebnis der vorläufigen Klassifizierung kann zuerst dazu verwendet werden, eine Klassifizierung durch die Cluster-Analyse für vorläufig klassifizierte Referenzdatensegmente auszuführen. Demgemäß kann die Analyseverarbeitungszeit und die Antwort auf Benutzeranfragen bereitgestellt werden, ohne zu erfordern, dass der Benutzer darauf wartet, dass die Daten aus der Langzeitaufzeichnungsvorrichtung wiedererlangt werden.
  • Mit anderen Worten legt die Verarbeitung die höchste Priorität auf Hochgeschwindigkeitsverarbeitung und identifiziert somit kein RDS mit der höchsten Ähnlichkeit, sondern nimmt vielmehr ein RDS, das einem EDS mit der Genauigkeit eines vorbestimmten Schwellwerts ähnelt, als eine Kennung des EDS an, sobald ein solches RDS gefunden wird, um die Verarbeitung somit zu beenden. Die Verarbeitung zum Erhalten einer vollständigen Klassifizierungsbestimmung wird ausgesetzt, bis die Ausführung der Klassifizierung von detaillierten Datensegmenten durch Clustern ausgeführt wird.
  • Die Anzahl von gespeicherten Datensegmenten und RDSs kann durch Festlegen des Klassifizierungsschwellwertes zur Ähnlichkeitsauswertung eingestellt werden. Folglich ist es möglich, den Zeitraum zur vorläufigen Klassifizierung auf Kosten von Fehlklassifizierungen während der vorläufigen Verarbeitung zu reduzieren.
  • Wie oben erwähnt ist, kann die Verarbeitungszeit unter Verwendung einer oben beschriebenen parallelen Verarbeitung reduziert werden. Zusätzlich dazu kann die Verarbeitungszeit weiter reduziert werden, indem RDSs in einer Reihenfolge überprüft werden, dass die Anzahl von EDSs widerspiegelt, die jedem RDS zugeordnet sind. Zusätzlich kann die in den vorläufigen Klassifizierungen verwendete Ähnlichkeitsauswertung dahin gehend ausgewählt werden, eine niedrige Rechenbelastung aufzuweisen, und dann kann die Genauigkeit des Clusterns in einer späteren Verarbeitung unter Verwendung eines komplexeren Ähnlichkeitsmaßes verbessert werden.
  • Obwohl die oben beschriebenen Ausführungsbeispiele einen Datenerfasser (bzw., Datenlogger) als Beispiel verwenden, kann die vorliegende Erfindung auf eine weites Spektrum an Datensignalen angewendet werden, in denen ein Extrahierungsalgorithmus gemeinsam mit dem Ähnlichkeitsalgorithmus definiert werden kann, um zu bestimmen, ob sich zwei Signale ähneln.
  • Bei den oben beschriebenen Ausführungsbeispielen war der Eingangsdatenstrom von skalarer Natur. Das heißt, er besteht aus einem Einzelwert pro Taktzyklus. Jedoch können die Lehren der vorliegenden Erfindung auch auf Vektoreingangsdatenströme angewendet werden. In solch einem Datenstrom ist eine Mehrzahl von Eingangsdatenkanälen vorhanden, in denen jeder Kanal durch einen ADC verarbeitet wird, um einen Eingangsvektor pro Taktzyklus bereitzustellen. Die Auslöseschaltung, die einen Beginn eines neuen EDS definiert, kann an einem der Kanäle oder mehreren der Kanäle arbeiten. Die oben beschriebenen Lehren können auf solch einen Vektordatenstrom angewendet werden.
  • Bei den oben beschriebenen Ausführungsbeispielen kann der ursprüngliche Datenstrom von der Platte oder der anderen Langzeitspeichervorrichtung ohne Datenverlust wiedererlangt werden, mit Ausnahme von Quantisierungsfehlern, die durch das Digitalisieren des ursprünglichen Analogsignals eingeführt werden. Wie oben erwähnt ist, können die Speicheranforderungen für diesen ursprünglichen Datenstrom im zweistelligen Terabyte-Bereich liegen. Bei einigen Anwendungen ist es vorteilhaft, einen komprimierten Datenstrom unter Verwendung eines verlustbehafteten Komprimierungsalgorithmus bereitstellen zu können. Es gibt zwei Arten von Näherungen, die dazu verwendet werden können, den komprimierten Datenstrom bereitzustellen. Die erste Näherung ersetzt die IDSs mit einem Zählwert der Anzahl von Datenabtastwerten in jedem IDS. Dies reduziert jedes IDS auf einen Code, der angibt, dass es ein IDS ist, und den Zählwert.
  • Die zweite Näherung ersetzt jedes EDS durch das EDS in dem RDS, das dieses EDS enthält. Jedes RDS umfasst ein repräsentatives EDS und der Rest der diesem RDS zugeordneten EDSs ähneln diesem EDS. Somit wird jedes EDS in dem Datenstrom durch die Identität des RDS ersetzt, in dem dieses EDS sich befindet. Diese Näherung erfordert jedoch, dass die Bibliothek von RDSs einmalig in dem Datenstrom enthalten ist. Unter der Annahme, dass die durchschnittliche Anzahl von RDSs viel kleiner ist als die Anzahl von EDSs, ist jedoch das Komprimierungsniveau bedeutsam. Jedes repräsentative EDS kann durch eine komprimierte Version dieses EDS ersetzt werden. Beim Komprimieren des repräsentativen EDS kann ein verlustfreier Komprimierungsalgorithmus wie etwa eine Entropie-Codierung verwendet werden. Alternativ dazu kann das repräsentative EDS unter Verwendung eines der verlustbehafteten Datenkomprimierungsalgorithmen komprimiert werden, die in der Technik der Datenkomprimierung bekannt sind. Es ist zu beachten, dass diese herkömmlichen Datenkomprimierungstechniken sowohl verlustfreie als auch verlustbehaftete Komprimierungsalgorithmen umfassen können.
  • Die vorliegende Erfindung kann auch als ein Analysewerkzeug zum Verständnis der Signale in einem voraufgezeichneten Datensatz verwendet werden. In diesem Fall wird der voraufgezeichnete Datensatz in eine Vorrichtung eingegeben, die zu der in 1 gezeigten analog ist. Wenn die aufgezeichneten Daten bereits in digitaler Form vorliegen, kann der ADC 11 ausgelassen werden. Bei einer solchen Anwendung kann die Steuerung 15 die Rate, bei der die Daten in das System eingegeben, optional steuern. Wenn nicht genug Zeit vorhanden ist, um ein neues EDS mit jedem der RDSs zu vergleichen, bevor das nächste neue EDS verarbeitet werden muss, kann die Steuerung 15 demgemäß einfach die Eingabe der Daten anhalten, um es dem System zu ermöglichen, aufzuholen.
  • Wenn eine komprimierte Version der voraufgezeichneten Daten erwünscht ist, kann der Datensatz ein zweites Mal nach dem Bestimmen der in dem komprimierten Datenstrom zu verwendenden RDSs ausgelesen werden. Der komprimierte Datenstrom kann dann an die Platte 14 ausgegeben werden.
  • Wie oben erwähnt ist, kann die Steuerung der vorliegenden Erfindung ein herkömmlicher Computer oder ein Multiprozessor sein. Die Abgleichung der EDSs mit den RDSs ist ein Prozess, dessen Geschwindigkeit durch die Verwendung eines Multiprozessors erhöht werden kann, da die Ergebnisse eines Abgleiches zwischen einem neuen EDS und einem der RDSs parallel mit einem Abgleich zwischen dem EDS und einem weiteren der RDSs ausgeführt werden können. Der Multiprozessor kann ein herkömmlicher Multikerncomputer oder eine Grafikverarbeitungsplatine mit Tausenden von Kernen sein.
  • Die vorliegende Erfindung umfasst außerdem ein Computer-lesbares Medium, das Anweisungen speichert, die bewirken, dass ein Datenverarbeitungssystem das Verfahren der vorliegenden Erfindung ausführt. Ein Computer-lesbares Medium ist dahin gehend definiert, jegliches Medium zu sein, das einen patentierbaren Gegenstand gemäß 35 U.S.C. 101 ausbildet, und schließt jegliches Medium aus, das keinen patentierbaren Gegenstand unter 35 U.S.C. 101 ausbildet. Beispiele solcher Medien umfassen nichtflüchtige Medien wie etwa Computerspeichervorrichtungen, die Informationen in einem Format speichern, das von einem Computer oder einem Datenverarbeitungssystem lesbar ist.
  • Die oben beschriebenen Ausführungsbeispiele der vorliegenden Erfindung wurden bereitgestellt, um unterschiedliche Aspekte der Erfindung zu veranschaulichen. Jedoch ist ersichtlich, dass die unterschiedlichen Aspekte der Erfindung, die in unterschiedlichen spezifischen Ausführungsbeispielen gezeigt sind, kombiniert werden können, um andere Ausführungsbeispiele der vorliegenden Erfindung bereitzustellen. Zusätzlich dazu werden aus der vorstehenden Beschreibung und den beigefügten Zeichnungen zahlreiche Modifizierungen der vorliegenden Erfindung ersichtlich. Demgemäß ist die vorliegende Erfindung lediglich durch den Schutzumfang der folgenden Patentansprüche einzuschränken.

Claims (15)

  1. System zum Aufzeichnen und Analysieren eines Datenstroms, wobei das System folgende Merkmale aufweist: einen Eingangsanschluss, der zum Empfangen des Datenstroms angepasst ist, wobei der Datenstrom eine geordnete Sequenz von Datenwerten aufweist; einen Ausgangsanschluss, der zum Kommunizieren des Datenstroms an eine Massenspeichervorrichtung angepasst ist; einen Puffer (12), der mit dem Eingangsanschluss verbunden ist, um einen vorbestimmten Abschnitt des Datenstroms temporär zu speichern, während der Datenstrom durch das System empfangen wird; und eine Steuerung (15), die ein Segment identifiziert, das als neues extrahiertes Datensegment (EDS) des in dem Puffer (12) gespeicherten Datenstroms bezeichnet wird, wobei das neue EDS ein Extrahierungsprotokoll erfüllt, und das neue EDS mit jedem aus einer Mehrzahl von Referenzdatensegmenten (RDSs) unter Verwendung eines ersten Ähnlichkeitsprotokolls vergleicht, wobei die Steuerung (15) Informationen, die das neue EDS identifizieren, in einer RDS-Datenbank (18) speichert, wenn das erste Ähnlichkeitsprotokoll angibt, dass das neue EDS einem der RDSs ähnelt, und die Steuerung (15) ein neues RDS erstellt, wenn das neue EDS keinem der RDSs ähnelt, wobei jedes RDS eine Liste der EDSs, dich sich als zu diesem RDS ähnlich herausgestellt haben, und das neue EDS aufweist, das bewirkt hat, dass die Steuerung (15) das neue RDS erzeugt.
  2. System gemäß Anspruch 1, wobei das erste Ähnlichkeitsprotokoll ein Abstandsmaß zwischen zwei Datensegmenten und einer Ähnlichkeitsschwelle berechnet, wobei die zwei Datensegmente als ähnlich definiert werden, wenn der Abstand eine vorbestimmte Beziehung zu der Ähnlichkeitsschwelle aufweist.
  3. System gemäß Anspruch 2, wobei die Steuerung (15) zwei der RDSs als Reaktion auf eine Benutzereingabe kombiniert, wenn sich die RDSs ähneln, wie durch ein zweites Ähnlichkeitsprotokoll bestimmt wird, das weniger restriktiv ist als das erste Ähnlichkeitsprotokoll.
  4. System gemäß Anspruch 2, wobei die Steuerung (15) eine Mehrzahl von neuen RDSs aus einem bestehenden RDS erzeugt, indem diesem RDS zugeordnete EDSs miteinander unter Verwendung eines zweiten Ähnlichkeitsprotokolls verglichen werden, das restriktiver ist als das erste Ähnlichkeitsprotokoll.
  5. System gemäß einem der Ansprüche 1 bis 4, wobei die Steuerung (15) einen komprimierten Datenstrom erzeugt, indem jedes EDS durch ein Symbol ersetzt wird, welches das RDS darstellt, das sich als zu diesem EDS ähnlich herausgestellt hat.
  6. System gemäß Anspruch 5, wobei die Steuerung (15) jede Sequenz von Datenwerten, die nicht zu einem EDS gehört, mit einem Zählwert ersetzt, der eine Anzahl von Symbolen in der Sequenz angibt.
  7. Verfahren zum Betreiben eines Datenverarbeitungssystems, um einen Datenstrom zu analysieren, der eine geordnete Sequenz von Datenwerten für Cluster der Signale aufweist, wobei das Verfahren folgende Schritte aufweist: sequenzielles Empfangen des Datenstroms und ein Zuweisen eines Indexes zu jedem Datenwert, während der Datenwert empfangen wird; Speichern eines Abschnitts des empfangenen Datenstroms in einem Puffer (12); Extrahieren eines neuen EDS, das ein Extrahierungsprotokoll erfüllt, aus dem Puffer (12); Vergleichen des neuen EDS mit jedem aus einer Mehrzahl von RDSs unter Verwendung eines ersten Ähnlichkeitsprotokolls, wobei das Datenverarbeitungssystem Informationen, die das neue EDS identifizieren, in einer RDS-Datenbank (18) speichert, wenn das erste Ähnlichkeitsprotokoll angibt, dass das neue EDS einem der RDSs ähnelt, und wobei das Datenverarbeitungssystem ein neues RDS erstellt, wenn das neue EDS keinem der RDSs ähnelt.
  8. Verfahren gemäß Anspruch 7 oder das System gemäß einem der Ansprüche 1 bis 6, wobei das Extrahierungsprotokoll einen Datenwert in dem Puffer (12) identifiziert, bei dem das neue EDS beginnt, und einen Datenwert in dem Puffer (12) identifiziert, bei dem das neue EDS endet, und wobei der Datenwert, bei dem das neue EDS endet, eine feste Anzahl an Abtastwerten aus dem Datenwert ist, bei dem das neue EDS begonnen hat.
  9. Verfahren gemäß Anspruch 7 oder 8, wobei das Datenverarbeitungssystem ein Abstandsmaß zwischen zwei Datensegmenten und einer Ähnlichkeitsschwelle berechnet, wobei die zwei Datensegmente als ähnlich definiert werden, wenn der Abstand eine vorbestimmte Beziehung zu der Ähnlichkeitsschwelle aufweist, und wobei das Datenverarbeitungssystem zwei der RDSs als Reaktion auf eine Benutzereingabe kombiniert, wenn die RDSs einander ähnlich sind, wie durch ein zweites Ähnlichkeitsprotokoll bestimmt wird, das weniger restriktiv ist als das erste Ähnlichkeitsprotokoll.
  10. Verfahren gemäß Anspruch 7 oder 8, wobei das Datenverarbeitungssystem ein Abstandsmaß zwischen zwei Datensegmenten und einer Ähnlichkeitsschwelle berechnet, wobei die zwei Datensegmente als ähnlich definiert werden, wenn der Abstand eine vorbestimmte Beziehung zu der Ähnlichkeitsschwelle aufweist, und wobei das Datenverarbeitungssystem eine Mehrzahl von neuen RDSs aus einem bestehenden RDS erzeugt, indem EDSs, die diesem RDS zugeordnet sind, miteinander unter Verwendung eines zweiten Ähnlichkeitsprotokolls verglichen werden, das restriktiver ist als das erste Ähnlichkeitsprotokoll.
  11. Verfahren gemäß einem der Ansprüche 7 bis 10, wobei das Datenverarbeitungssystem einen komprimierten Datenstrom erzeugt, indem jedes EDS durch ein Symbol ersetzt wird, welches das RDS darstellt, das sich als zu diesem EDS ähnlich herausgestellt hat.
  12. Verfahren gemäß Anspruch 11, wobei das Datenverarbeitungssystem jede Sequenz von Datenwerten, die nicht zu einem EDS gehört, mit einem Zählwert ersetzt, der eine Anzahl von Symbolen in der Sequenz angibt.
  13. Computer-lesbarer Speicher, der Anweisungen enthält, die bewirken, dass ein Datenverarbeitungssystem ein Verfahren ausführt, um einen Datenstrom zu analysieren, der eine geordnete Sequenz von Datenwerten für Cluster von Signalen aufweist, wobei das Verfahren folgende Schritte aufweist: sequenzielles Empfangen des Datenstroms und ein Zuweisen eines Indexes zu jedem Datenwert, während der Datenwert empfangen wird; Speichern eines Abschnitts des empfangenen Datenstroms in einem Speicherpuffer (12); Extrahieren eines neuen EDS, das ein Extrahierungsprotokoll erfüllt, aus dem Puffer (12); Vergleichen des neuen EDS mit jedem aus einer Mehrzahl von RDSs unter Verwendung eines ersten Ähnlichkeitsprotokolls, wobei das Datenverarbeitungssystem Informationen, die das neue EDS identifizieren, in einer RDS-Datenbank (18) speichert, wenn das erste Ähnlichkeitsprotokoll angibt, dass das neue EDS einem der RDSs ähnelt, und wobei das Datenverarbeitungssystem ein neues RDS erstellt, wenn das neue EDS keinem der RDSs ähnelt.
  14. Computer-lesbarer Speicher gemäß Anspruch 13, wobei das Datenverarbeitungssystem einen komprimierten Datenstrom erzeugt, indem jedes EDS durch ein Symbol ersetzt wird, das das RDS darstellt, welches sich als zu diesem EDS ähnlich herausgestellt hat.
  15. Computer-lesbarer Speicher gemäß Anspruch 14, wobei das Datenverarbeitungssystem jede Sequenz von Datenwerten, die nicht zu einem EDS gehört, mit einem Zählwert ersetzt, der eine Anzahl von Symbolen in der Sequenz angibt.
DE102019215765.3A 2019-04-02 2019-10-14 System zur datenaufzeichnung und -analyse Pending DE102019215765A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/373,443 US11429616B2 (en) 2019-04-02 2019-04-02 Data recording and analysis system
US16/373,443 2019-04-02

Publications (1)

Publication Number Publication Date
DE102019215765A1 true DE102019215765A1 (de) 2020-10-08

Family

ID=72518510

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019215765.3A Pending DE102019215765A1 (de) 2019-04-02 2019-10-14 System zur datenaufzeichnung und -analyse

Country Status (4)

Country Link
US (1) US11429616B2 (de)
JP (1) JP7502850B2 (de)
CN (1) CN111796758A (de)
DE (1) DE102019215765A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11879943B1 (en) 2021-05-31 2024-01-23 Keysight Technologies, Inc. Method and apparatus for predicting failure of a component

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3566441B2 (ja) * 1996-01-30 2004-09-15 シャープ株式会社 テキスト圧縮用辞書作成装置
US5848239A (en) * 1996-09-30 1998-12-08 Victory Company Of Japan, Ltd. Variable-speed communication and reproduction system
US9008812B2 (en) * 2008-06-19 2015-04-14 Sirius Xm Radio Inc. Method and apparatus for using selected content tracks from two or more program channels to automatically generate a blended mix channel for playback to a user upon selection of a corresponding preset button on a user interface
US6915241B2 (en) * 2001-04-20 2005-07-05 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Method for segmentation and identification of nonstationary time series
US7516279B2 (en) * 2006-02-28 2009-04-07 International Business Machines Corporation Method using stream prefetching history to improve data prefetching performance.
FR2928059B1 (fr) * 2008-02-22 2016-01-08 Thales Sa Procede et dispositif de delineation d'un flux de donnees et systeme de communication comprenant ledit dispositif.
JP5647602B2 (ja) 2009-04-27 2015-01-07 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America データ処理装置、データ処理方法、プログラム、及び集積回路
US8219574B2 (en) * 2009-06-22 2012-07-10 Microsoft Corporation Querying compressed time-series signals
KR101472452B1 (ko) 2010-11-17 2014-12-17 한국전자통신연구원 멀티미디어 데이터 검색 방법, 장치 및 패턴인식 방법
WO2013096620A1 (en) * 2011-12-20 2013-06-27 Baym Michael H Compressing, storing and searching sequence data
JP6357161B2 (ja) * 2012-10-22 2018-07-11 アビニシオ テクノロジー エルエルシー データストレージシステムにおけるデータソースを特徴付けるための方法
US10698935B2 (en) * 2013-03-15 2020-06-30 Uda, Llc Optimization for real-time, parallel execution of models for extracting high-value information from data streams
JP2015075821A (ja) 2013-10-07 2015-04-20 横河電機株式会社 状態診断方法および状態診断装置
US9465917B2 (en) * 2014-05-30 2016-10-11 Roche Diabetes Care, Inc. Hazard based assessment patterns
CN104156524B (zh) * 2014-08-01 2018-03-06 河海大学 交通数据流的聚集查询方法及系统
JP6353747B2 (ja) 2014-08-29 2018-07-04 日置電機株式会社 波形記録装置
US9626271B2 (en) * 2014-09-26 2017-04-18 Oracle International Corporation Multivariate metadata based cloud deployment monitoring for lifecycle operations
US10102281B2 (en) * 2014-10-16 2018-10-16 Accenture Global Services Limited Segmentation discovery, evaluation and implementation platform
US10394692B2 (en) * 2015-01-29 2019-08-27 Signalfx, Inc. Real-time processing of data streams received from instrumented software
WO2016183542A1 (en) * 2015-05-14 2016-11-17 Walleye Software, LLC Computer data system position-index mapping
US9874863B2 (en) 2015-08-24 2018-01-23 Keysight Technologies, Inc. Finite state machine-based trigger event detection employing interpolation
JP6846180B2 (ja) 2016-11-25 2021-03-24 日置電機株式会社 波形記録装置
US11100108B2 (en) * 2017-04-12 2021-08-24 International Business Machines Corporation Inflationary segment approach to temporal data partitioning for optimized model scoring
CN107392220B (zh) * 2017-05-31 2020-05-05 创新先进技术有限公司 数据流的聚类方法和装置
JP2019020785A (ja) 2017-07-11 2019-02-07 株式会社Sassor 情報処理装置、情報処理システム、情報処理方法およびプログラム
US11100365B2 (en) * 2019-07-01 2021-08-24 Keysight Technologies, Inc. Apparatus and method for interactively viewing and clustering data segments from long data recordings

Also Published As

Publication number Publication date
US20200320084A1 (en) 2020-10-08
JP7502850B2 (ja) 2024-06-19
US11429616B2 (en) 2022-08-30
CN111796758A (zh) 2020-10-20
JP2020170499A (ja) 2020-10-15

Similar Documents

Publication Publication Date Title
DE69831708T2 (de) Effiziente Erkennung von Computerviren und andere Dateneigenschaften
DE60317053T2 (de) Verfahren und Vorrichtung zur Darstellung einer Bildgruppe
DE69814104T2 (de) Aufteilung von texten und identifizierung von themen
EP1405222B1 (de) Verfahren und vorrichtung zum erzeugen eines fingerabdrucks und verfahren und vorrichtung zum identifizieren eines audiosignals
DE60120417T2 (de) Verfahren zur suche in einer audiodatenbank
DE60315506T2 (de) Identifizierung von kritischen merkmalen in einem geordneten skala-raum
DE102008027605B4 (de) System und Verfahren zur rechnerbasierten Analyse großer Datenmengen
DE102014204827A1 (de) Auflösen ähnlicher Entitäten aus einer Transaktionsdatenbank
DE112013006650T5 (de) Multi-Layer System zur Symbol-Speicher basierten Kompression von Mustern
CA2566540A1 (en) Device and method for analyzing an information signal
DE102013215530A1 (de) Detecting Multi-Column Composite Key Column Sets
EP2854045B1 (de) Verfahren und System zum Bewerten von erhobenen Messwerten eines Systems
DE112012004169T5 (de) Überwachen der Ausführung von gespeicherten Prozeduren
DE102021209171A1 (de) System zum wählen eines lernenden modells
DE102014113817A1 (de) Vorrichtung und Verfahren zur Erkennung eines Objekts in Einem Bild
EP3948577A1 (de) Automatisiertes maschinelles lernen auf basis gespeicherten daten
DE102019215765A1 (de) System zur datenaufzeichnung und -analyse
CN103425748B (zh) 一种文档资源建议词的挖掘方法和装置
CN105308579B (zh) 系列数据并行分析基础设施及其并行分散处理方法
CN117312613B (zh) 基于云计算的订单数据智能管理方法及系统
DE102021124256A1 (de) Mobile ki
DE102020207364A1 (de) Vorrichtung und verfahren zum interaktiven ansehen und clustern von datensegmenten aus langen datenaufzeichnungen
DE112018008165T5 (de) Edge-system, informationsverarbeitungsverfahren und informationsverarbeitungsprogramm
WO2001080235A1 (de) Verfahren zur bestimmung eines charakteristischen datensatzes für ein datensignal
DE102007034031A1 (de) Verfahren zur Bestimmung einer Ähnlichkeit, Vorrichtung und Verwendung hierfür

Legal Events

Date Code Title Description
R012 Request for examination validly filed