| Home | Entdecken | Lernen | Testen | Service & News | Download | |||
Geschichte und Grundlagen
Softwarelösungen entstehen aus unterschiedlichsten Gründen. Jede Lösung hat ihre Vorgeschichte, von der strategischen Marktanalyse über die geniale Idee, bis hin zum unkalkulierbaren Zufall und manchmal ist es einfach irgendetwas dazwischen.
1 die Urversion von nadas
Die "Urversion" von nadas entstand im Rahmen eines Wertpapierstammdatenprojekts.
Für die Auswertung und der Vergleich mehrerer großer Stammdatenbestände (ca. 1,5 Millionen Datensätze und über 2.000 Attribute) wurde ein performantes System benötigt. Die Auswertungen waren anspruchsvoll, aber in SQL prinzipiell gut lösbar.
Allerdings waren in gängigen Datenbanken weder die Ladezeiten für den Datenbestand (Initial Load) akzeptabel, noch die Ausführungszeiten der Analysen.
Es musste eine Lösung gefunden werden.
Das Entwicklungsteam entschloss sich dazu ein schlankes System zu bauen, das effizient genug war, diese Aufgabe, ohne aufwändiges Tuning, in lesbarem SQL zu bewältigen.
Das war der Anfang der nadas Geschichte.
Zunächst war nadas nur ein SQL-basiertes Toolset, zum effizienten Anlegen/Importieren und Auswerten von Daten.
In der Folge wurden diese Tools mehrfach eingesetzt, wenn es darum ging, Daten schnell und effizient auszuwerten. Mit neuen Projekten kamen neue Anforderungen hinzu. Anforderungen an Datensicherheit, Verfügbarkeit, Portabilität, etc.
Hieraus entstand die aktuelle nadas-Lösung: mit einem definierten, sicheren und systemneutralen Dateiformat NDF ( nadas data files). Dem ndwriter einem SQL-basierten, schlanken und hoch effizienten Tool zur Erstellung von NDF und einem allgemein verfügbaren ebenfalls SQL-basiertem Tool zur Auswertung, dem ndreader.
2 Zusammenspiel der Komponenten
Der Autor eines NDF (nadas-data-file) benötigt den ndwriter für sein lokales Betriebssystem. Der ndwriter ist mit minimalem Aufwand installierbar (eine (!) ausführbare Datei).
Ein NDF kann eine beliebige Anzahl von Tabellen (tables) enthalten. Darüber hinaus enthält es immer automatisch eine Inhaltsbeschreibung in Form eines Datenkatalogs (data catalog).
Der Autor erstellt das NDF mit Hilfe des ndwriters hierfür verwendet er SQL.
Der Inhalt des NDF wird durch Prüfsummen (kryptografische Hash-Codes) gesichert, der Autor signiert das NDF mit Hilfe eines Zertifikats.
Der/die Empfänger/Leser/Nutzer benötigen einen ndreader für ihr(e) lokale(n) Betriebssystem(e).
Die Empfänger möchten wissen, von wem das NDF kommt und was in ihm enthalten ist. Natürlich möchten die Empfänger auch sicher sein, dass das NDF vollständig ist.
Hierzu öffnen der/die Empfänger das NDF mit dem ndreader. Dabei wird die Vollständigkeit geprüft.
Das NDF enthält die Signatur des Absenders und ein Erstellungsdatum.
Im Data-Catalog steht, welche Tabellen (tables) enthalten sind und wie diese aufgebaut sind.
Über den ndreader können die Datentabellen per SQL ausgewertet werden.
Je nach Anwendungsfall, wird diese Auswertung aus einem einfachen SQL "select * from table" oder aus komplexen Abfragen unter Verwendung von SQL join / group by / etc sein.
Entsprechend wird von Fall zu Fall ein NDF nur für einige wenige Auswertung bzw. Datenexporte verwendet werden oder für online Abfragen.
Im ersten Fall bietet sich die direkte oder Skript gesteuerte Auswertung mit dem ndreader Kommandozeilen-Tool an.
Für den zweiten Fall bietet es sich an, das NDF mit der CORBA basierten Serverversion des ndreaders zu laden. Das NDF steht dann online in einem Netzwerk zur Verfügung. Über den ODBC-Treiber für MS Windows kann es dann z.B. transparent in MS Office/Open Office (z.B. MS Excel) oder Datenbankanwendungen (z.B. MS Access) genutzt werden!
3 NDF systemneutrales und sicheres Format
NDF enthalten ein oder mehrere relationale Schemata, die je nach Anwendungsgebiet aus einer einzigen Relation (table) oder aus sehr komplexen Relationen bestehen können.
Erstellt wird ein NDF mit dem ndwriter.
Der gesamte Inhalt eines NDF wird per Hashverfahren abgesichert.
Bei Erstellung werden Inhalt (z.B. durch Unterdrückung vonText- Duplikaten) und Zugriffspfade (Indizes) optimiert.
Dieses Format ist systemneutral.
Ein NDF kann auf jedem System für das es einen ndreader gibt, gelesen werden. Ein NDF wird nicht für ein spezielles Zielsystem erstellt, NDF sind kompatibel über alle nadas Plattformen.
Die nadas Lösung beinhaltet speziell eine systemneutrale Darstellung von Festkommazahlen im Dezimalsystem BCD (binary coded decimal system) und eine Dezimalarithmetik.
Eine ausführliche Beschreibung des NDF Eigenschaften finden Sie im NDF Manual