Release: Data Quality Server 2.20

KI-Tech­no­lo­gien, Python Unter­stüt­zung und weitere High­lights.

Mit dem Release des Data Quality Server Version 2.20 richtet sich unsere Lösung weiter auf die Zukunft aus:

  • Nutzung von KI-Technologien: FirstClass und ClearSky
    Der Data Quality Server beinhaltet nun KI-unterstützte Lösungen, um innerhalb des Data Quality Servers automatisierte Workflows umzusetzten. FirstClass ist ein Python Workflow Plugin für den Omikron Data Quality Server. Es wird zur automatisierten Klassifizierung von Material- und Produktstammdatensätzen nach dem ECLASS Standard verwendet. ClearSky ist ein Python Workflow Plugin für Omikron Data Quality Server zur Identifizierung von Dublettenpaaren in vorverarbeiteten Adressstammdaten-Listen unter dem Workflow "Benutzerdefinierte Python Erweiterung".
  • Python Unterstützung
    Workflow Python Script Activity: die häufig genutzte Script-Sprache Python wird für Scripting innerhalb der Workflows als auch für die Erstellung von Plugins genutzt. (Python Version 3.8.und neuer)
  • Vererbung von Datenstrukturen in datensatzbasierten Operationen und tabellenbasierter Workflows
    Bei der Anlage von Workflows können anstatt der individuellen Felddefinitionen zentrale Datenstrukturen für Workflows hinterlegt und verwendet werden. (Basic Record Structure) Dies ermöglicht es, in komplexeren DQ-Server Szenarien mit einheitlichen Felddefinitionen zu arbeiten.
  • ADO.Net Datenziel Struktur
    Jedes ADO.Net Datenziel besitzt nun die Option, die Struktur einer Tabelle von einer Datenbank abzurufen. So können Datenstrukturen einfacher von bestehenden Tabellen übernommen werden und anhängende Objekte wie Indizes und Trigger, die direkt auf der Datenbank angelegt wurden bleiben immer erhalten.


Die Release Notes zur Data Quality Server Version 2.20 im Einzelnen

  • Vererbung der Datenstrukturen von der zentralen Datenstruktur auf die Workflows
    (Basic Record Structure)


    Datensatzbasierte Operationen und Tabellenbasierter Workflow
    Data Quality Server bietet ab der Version 2.20 die Möglichkeit, zentrale Datenstrukturen für Workflows zu hinterlegen und zu verwenden. Diese können bei der Anlage von Workflows anstatt der individuellen Felddefinitionen verwendet werden und ermöglichen es, in komplexeren DQ-Server Szenarien mit einheitlichen Felddefinitionen zu arbeiten.
    Änderungen innerhalb dieser Strukturen können somit automatisch in eine ganze Gruppe von Workflows übernommen werden. Dazu wurde auch der Editor für die Feldstrukturen der Workflows überarbeitet. Die zentralen Datenstrukturen können dabei durch individuelle, pro Workflow zu definierende Felder ergänzt werden.
    Wird eine Aktivierung ausgelöst, wird ein Prozess gestartet, der anzeigt, welche Workflow-Objekte die Struktur vererbt haben.

    In einem dann gestarteten Anpassungsprozess wird die geänderte Struktur im Workflow übernommen.
    • Die Datenstruktur im Workflow errechnet sich dabei neu aus der vererbten Struktur und aus den fixen Feldern
    • Die Activities werden darauf untersucht, ob Felder zum Einsatz kommen, die nicht in der neuen Struktur vorhanden sind:
      • Feldnamen in den Activities
      • Feldnamen in Scripts (mit "record["Feldname"]") sollen erkannt werden.
  • Entspechende Warnmeldungen im Editierprozess schützen vor ungewollten Vererbungen/Änderungen.
    Tritt bei der Strukturprüfung einer dieser Fehler auf:
    Durch Klick auf den fehlerhaften Workflow wird der Workflow geöffnet und die Struktur kann im Editiermodus manuell anpasst werden und / oder der Workflow verändert werden.
    In der Oberfläche können weiterhin alle nicht vorhandenen Feldnamen angesehen und dann Entscheidungen getroffen werden:
    Der grafische Struktureditor unterstützt alle Datenstrukturelemente einer Datenbank (Feldtypen, Feldgrößen, Mussfeld etc). Datenstrukturen sind nach dem Öffnen zunächst schreibgeschützt, der Editermodus muss aktiv eingeschaltet werden.

    Strukturen kann man dabei: Die Datenstrukturen können auch in andere Objekte wie Workflows kopiert werden.

    Zusammenfassung


  • Python Unterstützung im Data Quality Server

    Workflow Python Script Activity
    Ab der Version 2.20 unterstützt der Data Quality Server die häufig genutzte Script-Sprache Python für Scripting innerhalb der Workflows als auch für die Erstellung von Plugins.
    Python Version 3.8.und neuer

    Python Script Activity
    Grundvoraussetzung
    Damit die Activity optimal genutzt werden kann, ist ein solides Grundwissen bzgl. Python empfehlenswert. Es ist hierbei vor allem neben dem Wissen vorhandener Funktionen/Bibliotheken ebenso wichtig zu wissen, wie der Code eingerückt werden muss, damit keine Syntaxfehler entstehen.
    Falls der Aufbau von Python Code noch nicht bekannt ist, verweisen wir auf
    https://py-tutorial-de.readthedocs.io/de/python-3.3/
    um sich etwas einzulesen und die folgenden Aufrufe besser zu verstehen.

    Grundsätzlich funktioniert die Activity wie die restlichen Workflow Activities.
    Es kommt ein Datensatz bzw. eine komplette Ergebnistabelle als Input rein, welche anschließend über Python Code modifiziert werden kann.
    Die Python Activity greift im Kern auf dieselben Objekte und Methoden zu, wie sie bereits in der C#-Activity aufrufbar sind. Im nachfolgenden Abschnitt wird nochmals genauer auf die einzelnen Objekte eingegangen.

    Workflow Editor Schnittstelle
    Um Datensätze und Tabellen innerhalb des Workflows zu modifizieren, bietet der Python Editor den Zugriff auf die Objekte des Workflow Designers. Im kompletten Workflowprozess wird ausschließlich mit einem einzelnen Datensatz (Record) bzw. kompletten Tabellen von Datensätzen (Ergebnistabellen) gearbeitet.
    Im Python Editor stehen die nachfolgenden Zugriffsobjekte zur Verfügung:
    • record
    • logger
    • access
    • context

    Das record Objekt ist vom Typ Dictionary und beinhaltet Feldnamen sowie deren Werte.
    Beispiel:
           Key: Vorname
           Key: Max

    Mit Hilfe des access Objekts können Ergebnistabellen erstellt und modifiziert werden. Diese Tabellen beinhalten wiederum einzelne Datensätze.
    Die Objekte werden von CLR nach Python konvertiert und können dort wie gewohnt verwendet werden.
    Mit dem logger Objekt können beliebige Lognachrichten geschrieben werden.
    Das context Objekt beinhaltet alle übergeordneten Parent Datensätze, auf welche zugegriffen werden kann, sofern welche vorhanden sind.


  • Speicheroptimierung der Intradublettensuche

    Für den Data Quality Server 2.20 wurde der Speicherbedarf der Intraduplikatssuche weiter gesenkt, indem die interne Datenhaltung optimiert wurde.
    Damit benötigt der Data Quality Sever während des Dublettenabgleiches ca. 30% weniger Hauptspeicher.


  • ADO.Net Datenziel Struktur über Datenbankverbindung definieren

    Jedes ADO.Net Datenziel besitzt nun die Option, die Struktur einer Tabelle von einer Datenbank abzurufen.
    So können Datenstrukturen einfacher von bestehenden Tabellen übernommen werden und anhängende Objekte wie Indizes und Trigger, die direkt auf der Datenbank angelegt wurden, bleiben immer erhalten.

    Funktionen:
    • Durch eine Option ist einstellbar, ob die Struktur selbstdefiniert ist oder von der Datenbank bezogen wird.
    • Es ist nun möglich (wie bei einer ADO.Net Datenquelle) eine Liste der Tabellen und der dazugehörigen Felder abzurufen.
    • Die Bearbeitung der Felder bzw der Struktur ist dabei gesperrt.
    • Nach dem erstmaligen Speichern des Datenziels kann die Struktur über einen "Synchronisieren"-Button aktualisiert werden.
    • Die Synchronisation oder Anlage des Datenziels wirkt sich nicht auf die bereits enthaltenen Daten in der Tabelle aus.

    Bei Übernahme einer Struktur wird der Tabellenname explizit abgefragt.
    Wird die Struktur aktualisiert, bleibt der Tabellenname erhalten.

    Zur erleichterten Einstellung des Datenziels sind nun drei zusätzliche Reiter im Bearbeitungsfenster verfügbar:
    1. Verbindungseinstellungen
    2. Datenstrukur
    3. Berechtigungen


  • Nutzung von KI-Technologien

    Der Data Quality Server ab der Version 2.20 bietet KI-unterstützte Lösungen, um innerhalb des Data Quality Servers automatisierte Workflows umzusetzen.

    FirstClass
    FirstClass ist ein Python Workflow Plugin für den Omikron Data Quality Server. Er wird zur automatisierten Klassifizierung von Material- und Produktstamm-datensätzen nach dem ECLASS Standard verwendet.
    Einsatz des FirstClass-Plugins
    Um erfolgreiche Prognosen zu ermöglichen, muss FirstClass zuerst anhand bereits vorhandener Klassifizierungen Parameter für die korrekte Einordnung von Produkt- oder Materialdaten lernen.
    Dabei wird ein Modell erstellt, welches anschließend zur automatisierten Klassenzuordnung von Materialkurztexten verwendet werden kann.
    Die eingesetzte künstliche Intelligenz muss als Voraussetzung für einen erfolgreichen Einsatz erst einmal trainiert werden (manuelle Eingabe von Daten, bzw. Eingabe von Referenzdaten), um zu erkennen, innerhalb welcher Parameter die Aufgabe erfüllt bzw. umgesetzt werden kann.
    Mit den gesammelten bzw. eingegebenen Daten kann dann ein Modell zur Umsetzung der Aufgabe erstellt werden und eine automatische Verarbeitung der Materialtexte zur Klasseneinordnung erfolgen.
    FirstClass arbeitet hierzu mit zwei Phasen:
    einer Trainingsphase und
    einer Modellanwendungsphase.

    Das Training liefert dabei am Ende ein konkretes Modell, das dann auf neue Eingangsobjekte (Material- und Prduktdaten) angewandt werden kann. Dies stellt den eigentlichen Umsetzungsworkflow dar.
    Die Funktion kann sowohl als Datensatzbasierter Workflow als auch als Tabellenbasierter Workflow ausgeführt werden.


    ClearSky
    ClearSky ist ein Python Workflow Plugin für Omikron Data Quality Server zur Identifizierung von Dublettenpaaren in vorverarbeiteten Adressstammdaten-Listen unter dem Workflow "Benutzerdefinierte Python Erweiterung".
    In vielen Fällen ist die ermittelte Wahrscheinlichkeit einer Dublette im Modul „Dublettenprüfung“ des Data Quality Servers schon so hoch, dass automatisiert beurteilt werden kann, ob bestimmte Paare Dubletten sind oder nicht sind.
    Fälle mit einer Wahrscheinlichkeit unter einer definierten Schwelle werden jedoch als "unsicher" eingestuft und der Workflow steuert solche Fälle in den Clearing Monitor zur manuellen Bearbeitung aus.
    Durch verschiedene Faktoren (Datenstruktur, Datenfehler etc.) kommen oft noch recht viele Daten zur Bearbeitung im Clearing Monitor an.
    Datenpaare, die aus dem Data Quality Server ausgesteuert werden und eigentlich in den Clearing Monitor wandern sollten, werden von ClearSky erneut geprüft und bewertet.
    ClearSky unterstützt dabei, gelabelte Dublettenzeilen in diesen Tabellen möglichst automatisiert weiter zu bereinigen. Hierzu werden Zeilen, die potenzielle Dubletten enthalten, aber noch nicht als sicher eingestuft sind, unter Einsatz einer KI-Lösung zu Dublettengruppen gruppiert.
    Entweder können die erkannten sicheren Dubletten nun weiter hochautomatisiert bereinigt werden (Datenrücklauf) oder den manuellen Aufwand im Clearing Monitor erheblich verringern.
    ClearSky arbeit hierzu mit zwei Phasen:
    einer Trainingsphase und
    einer Modellanwendungsphase.

    Das Training liefert am Ende ein konkretes Modell, das dann auf neue Eingangsobjekte (Dublettenpaare) angewandt werden kann. Dies stellt den eigentlichen Umsetzungsworkflow dar.
    ClearSky kann sowohl als Datensatzbasierter Workflow als auch als Tabellenbasierter Workflow im Data Quality Server ausgeführt werden.


  • Neue Funktionen für Clearing Monitor

    Weiterleiten von Fällen per Email
    Über den neuen Button „Weiterleiten“ kann der Nutzer den aktuell aufgerufenen Fall direkt aus dem Bearbeitungsdialog an eine weitere Person zur Bearbeitung übergeben.
    In einem integrierten Empfänger-Dialog kann der User durch Eingabe anfangs des Personennamens den Empfänger aus einer Liste der Benutzer bequem auswählen.
    Zudem kann ein kurzer Text mitgegeben werden, der als Hinweis an den Folgebearbeiter inkludiert wird.
    Mit Klick auf den „Weiter“-Button wird an die gewählte Emailadresse eine Nachricht an den Folgebearbeiter mit dem Link direkt auf den aktuellen Fall und den erstellten Text gesendet.

    Anzeige der Fälle in einer Liste und „Reservierung“ von Fällen über die Oberfläche
    Offene Fälle können nun in einer Liste im Überblick eingesehen und ein Fall aus dieser Liste ausgewählt werden.
    Mit einem Klick auf das Listenansicht-Icon neben dem Button "Nächsten Fall bearbeiten" wird die Liste aufgerufen.
    Die Liste zeigt alle offenen Fälle für den jeweils eingeloggten Nutzer mit dem Kopfdatensatz an. Per Doppelklick auf einen Fall wird in die Detailsicht / die Bearbeitung des Falles gewechselt. Nach Bearbeitung des Falles springt man automatisch in die Listenansicht zurück.
    Über eine „Suchen“-Funktion kann der Nutzer innerhalb der offenen Fälle suchen und per Klick auf ein Suchergebnis zum gefundenen Fall springen.
    Es steht auch der neue Status "geflaggt/reserviert" zur Verfügung, um Fälle für die Bearbeitung durch einen bestimmten Nutzer zu reservieren.
    Man kann diesen Status per Klick an einen Fall vergeben bzw. wieder entziehen.
    Geflaggte Fälle werden dabei optisch hervorgehoben, so kann jeder Nutzer erkennen, ob ein Fall von jemand anderem geflaggt wurde und auch von wem.
    Die Anzeige der Fälle kann gefiltert werden nach:
    • Nur meine geflaggten Fälle anzeigen
    • Fremd geflaggte Fälle ausblenden




  • Bugfixes
    Im Release zur Data Quality Server Version 2.20 wurden auch diverse Bugfixes aus der Version 2.18 eingearbeitet.