From Saturday, Nov 23rd 7:00 PM CST - Sunday, Nov 24th 7:45 AM CST, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Saturday, Nov 23rd 7:00 PM CST - Sunday, Nov 24th 7:45 AM CST, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
Ihr Unternehmen investiert Tausende, möglicherweise sogar Millionen von Euro in Geräte zur Datenerfassung, da Daten der Schlüssel zu Produktinnovationen sind. Für jeden Trend, den Sie anhand Ihrer Daten identifizieren, können Sie möglicherweise eine neue Funktion oder ein neues Produkt schneller auf den Markt bringen, um neue Marktanteile in einem hart umkämpften und globalen Umfeld zu erschließen. Der schnelle Übergang von Rohdaten zu aussagekräftigen Ergebnissen ist jedoch eine Herausforderung. Laut einer Umfrage von National Instruments sind Daten der schwierigste Aspekt bei der Arbeit mit aktuellen Softwaretools. Ingenieuren und Wissenschaftlern zufolge ist die Arbeit mit Daten schwieriger als das Warten von altem Programmcode oder das Programmieren eines völlig neuen Datenerfassungssystems.
Die Arbeit mit Daten ist ein breites Thema, das viele verschiedene Aspekte umfasst. Die Probleme, mit denen Sie konfrontiert sind, kommen aus allen Phasen der Entwicklung Ihrer Messanwendung und werfen mehrere Fragen auf. Wie viele Daten sollten Sie während Ihres Testdurchlaufs erfassen? Welches Dateiformat eignet sich am besten? Was machen Sie mit den Daten, nachdem Sie sie erfasst haben? Bei vielen neuen Messsystemen spielt die Wahl des richtigen Datenspeicheransatzes und die Lösung dieser wichtigen Probleme jedoch eine untergeordnete Rolle. Ingenieure und Wissenschaftler wählen oft die Speicherstrategie aus, die die Anforderungen der Anwendung im aktuellen Zustand am einfachsten erfüllt, ohne zukünftige Anforderungen zu berücksichtigen. Die Wahl des Speicherformats kann jedoch einen großen Einfluss auf die Gesamteffizienz des Erfassungssystems und die Effizienz der Nachbearbeitung der Rohdaten im Laufe der Zeit haben.
Die Verwaltung und Nachbearbeitung von Daten wird besonders problematisch, wenn Sie bedenken, dass wir Daten mit einer Rate erfassen, die dem Mooreschen Gesetz entspricht. Dank der steigenden Mikroprozessorgeschwindigkeit und Speicherkapazitäten sinken die Kosten für Datenspeicher exponentiell und die Welt erzeugt genügend Daten, um den gesamten Datenkatalog etwa alle zwei Jahre zu verdoppeln.
Die Wahl des richtigen Ansatzes, der flexibel genug ist, um sich Ihren Datenanforderungen in einer sich ständig weiterentwickelnden digitalen Welt anzupassen, ist keine einfache Aufgabe. Dieser Artikel enthält einige hilfreiche Tipps für den Einstieg und die richtige Verwaltung von Daten für Ihre Anwendung.
Der erste Schritt zu einer einheitlichen Lösung für das Datenmanagement besteht darin, sicherzustellen, dass die Daten so effizient, organisiert und skalierbar wie möglich gespeichert werden. Allzu oft werden Daten ohne beschreibende Zusatzinformationen in diversen Dateiformaten verteilt auf mehreren Computern gespeichert. So entsteht schnell ein Datenfriedhof, aus dem sich nur mühsam die Datensätze extrahieren lassen, die für die Entscheidungsfindung benötigt werden.
Je nach Anwendung können Sie bestimmte Merkmale gegenüber anderen bevorzugen. Gängige Speicherformate wie ASCII, Binär und XML haben Stärken und Schwächen in verschiedenen Bereichen.
Viele Ingenieure speichern Daten in ASCII-Dateien (American Standard Code for Information Interchange), da das Format leicht austauschbar und für den Benutzer lesbar ist. ASCII-Dateien haben jedoch mehrere Nachteile, einschließlich eines großen Speicherbedarfs, was ein Problem sein kann, wenn der Speicherplatz begrenzt ist (z. B. beim Speichern von Daten in einem verteilten System). Das Lesen und Schreiben von Daten aus einer ASCII-Datei kann im Vergleich zu anderen Formaten erheblich langsamer sein. In vielen Fällen kann die Schreibgeschwindigkeit einer ASCII-Datei nicht mit den Geschwindigkeiten von Erfassungssystemen Schritt halten, was zu Datenverlust führen kann.
|
Abbildung 1 ASCII-Dateien sind einfach auszutauschen, können aber für viele Anwendungen zu langsam und groß sein. |
Ein anderer typischer Speicheransatz, der das andere Ende des Spektrums im Vergleich zu ASCII darstellt, sind Binärdateien. Im Gegensatz zu ASCII-Dateien haben Binärdateien einen deutlich geringeren Speicherplatzbedarf und können mit extrem hohen Geschwindigkeiten auf den Datenträger gestreamt werden, wodurch sie ideal für Anwendungen mit hoher Kanalanzahl sowie Echtzeitanwendungen sind. Ein Nachteil bei der Verwendung von Binärdateien ist das unlesbare Format, das den Austausch zwischen Benutzern erschwert. Binärdateien können nicht sofort von gängiger Software geöffnet werden, sondern müssen von einer Anwendung oder einem Programm interpretiert werden. Verschiedene Anwendungen können Binärdaten unterschiedlich interpretieren, was zu Verwirrung führt. Eine Anwendung kann die Binärwerte als Textzeichen lesen, während eine andere die Werte als Farben interpretiert. Um die Dateien mit Kollegen zu teilen, müssen Sie ihnen eine Anwendung bereitstellen, die Ihre spezifische Binärdatei korrekt interpretiert. Wenn Sie Änderungen an der Art und Weise vornehmen, wie Daten in die Erfassungsanwendung geschrieben werden, müssen diese Änderungen auch in der Anwendung berücksichtigt werden, die Daten liest. Dies kann möglicherweise zu langfristigen Versionsproblemen und Schwierigkeiten führen, die letztlich Datenverluste als Folge haben können. |
Abbildung 2. Binärdateien sind in Hochgeschwindigkeitsanwendungen mit begrenztem Speicherplatz nützlich, können jedoch Probleme beim Austausch verursachen.
|
XML-Dateien
In den letzten Jahren hat das XML-Format an Popularität gewonnen, da es komplexe Datenstrukturen speichern kann. Mit XML-Dateien können Sie Daten und Formatierung zusammen mit den Rohmesswerten speichern. Durch die Flexibilität des XML-Formats können Sie zusätzliche Informationen strukturiert mit den Daten speichern. XML ist zudem relativ gut lesbar und austauschbar. XML-Dateien lassen sich ähnlich wie ASCII in vielen gängigen Texteditoren und XML-fähigen Internetbrowsern wie dem Microsoft Internet Explorer öffnen. XML enthält jedoch Tags in der Datei, die die Strukturen beschreiben. Diese Tags werden auch angezeigt, wenn XML-Dateien in diesen Anwendungen geöffnet werden, was die Lesbarkeit etwas einschränkt, da Sie diese Tags verstehen müssen. Die Schwäche des XML-Dateiformats besteht darin, dass es im Vergleich zu anderen Dateien einen extrem großen Speicherplatzbedarf hat und nicht zum direkten Streaming von Daten auf die Festplatte verwendet werden kann. Ein Nachteil beim Speichern dieser komplexen Strukturen ist auch, dass sie beim Entwerfen des Layouts bzw. Schemas der XML-Strukturen eine erhebliche Planung erfordern können. |
Abbildung 3: XML-Dateien können beim Definieren komplexer Strukturen helfen, sind jedoch wesentlich größer und langsamer als andere Formate. |
Datenbankdateien
Datenbankdateien bestehen aus einer Reihe von Tabellen, die mit Spalten und Zeilen erstellt werden. Informationen können zwischen Tabellen verknüpft sein. Durchsuchbarkeit macht Datenbankdateien vorteilhaft, aber sie können für zeitbasierte Messanwendungen angesichts der erfassten Datenmenge und der Notwendigkeit, entweder eine formale Datenbanklösung von Grund auf zu erwerben oder zu erstellen, unpraktisch sein. Zeitbasierte Messungen führen zu einer Aufblähung von Datenbanken, was die Abfrageergebnisse verlangsamt und den Zweck von Datenbanken überhaupt nicht mehr erfüllt.
TDMS-Dateien
TDMS (Technical Data Management Streaming) ist ein binäres Dateiformat, das einen geringen Speicherplatzbedarf hat und Daten mit hohen Geschwindigkeiten auf den Datenträger streamen kann. Gleichzeitig enthalten TDMS-Dateien eine Header-Komponente, in der beschreibende Informationen bzw. Attribute mit den Daten gespeichert werden. Einige Attribute wie Dateiname, Datum und Dateipfad werden automatisch gespeichert. Sie können jedoch auch benutzerdefinierte Attribute hinzufügen. Ein weiterer Vorteil des TDMS-Dateiformats ist die integrierte dreistufige Hierarchie: Datei-, Gruppen- und Kanalebene. Eine TDMS-Datei kann eine unbegrenzte Anzahl von Gruppen und jede Gruppe wiederum eine unbegrenzte Anzahl von Kanälen enthalten. Sie können auf jeder dieser Ebenen Attribute hinzufügen, um Ihre Testdaten zum besseren Verständnis zu beschreiben und zu dokumentieren. Diese Hierarchie erzeugt eine inhärente Organisation Ihrer Testdaten.
Tabelle 1: Das TDMS-Dateiformat verbindet die Vorteile etlicher Datenspeicheroptionen in einem Dateiformat.
Je häufiger Sie Daten in die Datei schreiben, desto größer ist die Wahrscheinlichkeit, dass der Prozessor nicht mithalten kann. Um dies zu verhindern, müssen Sie Ihr Programm so entwickeln, dass es den verfügbaren karteneigenen Speicher nutzt, indem Sie einen temporären Puffer erstellen. Sie können dann periodisch den Puffer leeren, indem Sie alle Daten gleichzeitig in einem größeren Block auf den Datenträger streamen, was manchmal als Leeren des Puffers bezeichnet wird.
Auf diese Weise können Sie die Prozessorzeit minimieren, indem Sie die Daten periodisch in Blöcken speichern. So ist z. B. die Erfassung mit 60 kB/s und der Versuch, jeden Punkt einzeln in einer Datei zu speichern, keine effiziente Nutzung von Prozessorressourcen. Wenn Sie stattdessen einen 10-kB-FIFO-Puffer im karteneigenen Speicher einrichten, müssen Sie den Puffer nur alle 16 ms leeren, um mit der Erfassung Schritt zu halten. Diese Vorgehensweise ermöglicht dem Prozessor freie Zeit zwischen Schreibvorgängen, um andere Tasks zu bearbeiten.
Die Wahl des richtigen Dateiformats ist auch ein entscheidender Teil für effizientes Streaming von Daten. Der große Speicherbedarf von ASCII-Dateien macht das Format weniger geeignet für Anwendungen, die Inline-Datenspeicherung erfordern. In ASCII-Dateien belegt jedes Zeichen acht Bit (ein Byte) Systemspeicher. Die Zahl 123456789 benötigt also neun Byte Speicher. Bei Binär- und TDMS-Dateien wird die gesamte Zahl als Folge von Einsen und Nullen dargestellt. In diesem Fall wird die Zahl 123456789 als 111010110111100110100010101 dargestellt, was nur 27 Bit (ca. vier Byte) Speicher erfordert.
Eine Differenz von fünf Byte mag unbedeutend erscheinen, aber wenn Sie eine Datei extrapolieren und betrachten, die 100.000 neunstellige Zahlen enthält, hat eine ASCII-Datei eine Größe von 1,04 MB, während eine Binär-/TDMS-Datei eine Größe von nur 390 kB für denselben Datensatz aufweist. Dies ist eine erhebliche Einsparung an Festplattenspeicher, wenn man bedenkt, dass ein MB noch relativ klein für eine Datendatei ist.
Ein immer größer werdendes Problem bei der Auswahl von Datenanalyse- und Berichterstellungstools ist die Größe und Geschwindigkeit der Daten, die verarbeitet werden können. Sie erfassen mehr Daten von mehr Orten schneller als je zuvor. Wenn die täglich verwendeten Datenanalyse- und Berichterstellungstools nicht mit diesen neuen Trends Schritt halten oder die gespeicherte Datendatei einlesen können, haben Sie mehr Daten denn je, aber nichts, womit Sie diese effektiv analysieren können. Datenanalyse- und Berichterstellungstools, die für Finanzanalysen entwickelt wurden, eignen sich nicht für die Datenerfassung und verursachen viele frustrierende Einschränkungen. Wenn Sie versuchen, große Datensätze zu bearbeiten oder zu korrelieren, sollten Sie Analyse- und Berichterstellungstools verwenden, die für große Datensätze entwickelt wurden. Ohne eine korrekte Datenanalyse werden Sie sehen, dass die Durchführung von Analysen und die Berichterstellung zum Austauschen von Ergebnissen zeitaufwendig oder aufgrund der schieren Datenmenge unter Umständen gar nicht möglich sind.
Das Speichern von Messdaten erfordert viele komplexe Überlegungen, die für den Erfolg Ihrer Messanwendung entscheidend sind. Wenn Sie nicht die richtigen Datenspeicherstrategien auswählen, kann es zu Speicherüberlauf, Prozessorüberlastung und unbrauchbaren oder sinnlosen Datendateien kommen. Um dies zu vermeiden, müssen Sie den Speicherbedarf Ihrer Anwendung korrekt antizipieren und fundierte Entscheidungen über die Methode zum Speichern von Daten, das verwendete Dateiformat, die Art und Weise, wie Sie Ihre Daten in Dateien organisieren, und den Systemtyp treffen, auf dem Ihre Anwendung am besten ausgeführt werden kann.
ASCII | Binär | XML | Datenbank | TDMS | |
---|---|---|---|---|---|
Austauschbar | |||||
Wenig Speicherplatzbedarf | |||||
Durchsuchbar | |||||
Zusatzinformationen | |||||
Hochgeschwindigkeits-Streaming | |||||
NI-Plattform unterstützt | * |
* Erfordert ggf. ein Toolkit oder Zusatzmodul.