Zentraler Baustein innerhalb der Microsoft SQL Server Data Quality Services – kurz DQS – ist die Domänenverwaltung. Eine Domäne kann grob als “Feld”, Spalte oder allgemein als ein Objekt beschrieben werden. Eine Domäne kann dabei durch ein einzelnes Objekt, wie z.B. eine Postleitzahl oder einer Telefonnummer, beschrieben werden oder aber auch aus mehreren Objekten bestehen. So kann z.B. die Domäne Telefonnummer auch aus den einzelnen Domänen Landesvorwahl, Ortsvorwahl und Rufnummer bestehen. Die daraus resultierende Domäne Telefonnummer nennt sich innerhalb der DQS dann Verbunddomäne.
Jede Domäne verfügt über ein paar grundlegende Eigenschaften, sowie zusätzlichen Regeln auf die ich später noch detaillierte eingehen werden.
Domäneneigenschaften
Innerhalb der Domäneneigenschaften werden die verschiedensten Eigenschaften wie Name, Beschreibung, Datentyp Sprache, Formatausgabe usw. definiert. Grundsätzlich können alle Eigenschaften einer Domäne mit Ausnahme des Datentyps, später angepasst werden.
Bei der Definition einer Domäne sollte darauf geachtet werden, dass die zu definierende Sprache Auswirkungen auf die Rechtschreibprüfung und damit auf weitere Eigenschaften/Regeln speziell innerhalb Domänenwerte/Wissensvermittlung der Domäne hat.
Verweisdaten
Über die Verweisdaten können die Daten einer oder mehrerer Domänen über die Reference Data Services des Microsoft Azure DataMarket bereinigt und/oder angereichert werden. Ein entsprechender Account ist hierfür zuvor in der Konfiguration zu erstellen.
Aktuell sind die Anbieter entsprechender Daten für die Data Quality Services noch überschaubar. Mit Loqate und MelissData stehen jedoch bereits zwei bekannter Anbieter für die postalische Korrektur von Adressdaten zur Verfügung. Es ist im übrigen auch möglich eigene RDS Anbieter zu schreiben und zu hosten.
Sämtliche zu dieser Domäne gehörenden Daten werden beim ausführen eines Projektes über den DataMarket standardisiert, korrigiert und/oder angereichert.
Domänenregeln
Die Domänenregeln ermöglichen es die Werte einer Domäne speziellen einfachen Prüfungen zu unterziehen. Wer z.B. keine postalische Korrektur über den DataMarket durchführen möchte, dennoch weitestgehend sicherstellen will, dass die Postleitzahlen richtig sind, der kann entsprechende einfache Regeln aufstellen. Hierzu stehen eine Vielzahl von Funktionen zur Prüfung der Werte zur Verfügung.
Folgende Regel könnte so z.B. für die Prüfung der Postleitzahl verwendet werden, wenn die Daten innerhalb einer Domäne nur aus Deutschland kommen.
Sobald internationale Adressdaten zu prüfen sind, komme ich mit einer entsprechenden Regeln jedoch nicht mehr hin. Hier bieten sich Verbunddomänen und die dazugehörigen VD-Regeln an. Im Gegensatz zu Domänenregeln, können bei Verbunddomänen Anhängigkeiten zwischen den einzelnen an der Verbunddomäne beteiligten Domänen erstellt werden.
Wobei zugegeben für alle potentiellen Länder eine entsprechende Domänenregel aufzusetzen relativ umständlich ist, hier lohnt sich der Einsatz eines entsprechenden RDS dann doch.
Domänenwerte
Domänenwerte stellen zum einen eine zur Domäne gehörende Regel oder Eigenschaft dar, sind aber eigentlich auch ein eigener Bestandteil der DQS Wissensdatenbanken. In der englischen Version Knowledge Base genannt, nennt sich dieser Baustein in der deutschen Version Wissensvermittlung.
Bei der Wissensvermittlung wird von den DQS eine Tabelle ausgegeben, in der jeder eindeutige wert mit seiner Häufigkeit ausgegeben wird. Der Anwender kann diesen Wert als Richtig, Fehlerhaft oder Ungültig klassifizieren und ihn ggf. korrigieren.
Die Domänenwerte verwenden automatisch die Werte einer Wissensvermittlung, sofern diese bereits definiert wurde oder ermöglichen auch das Importieren von gültigen Werten aus einer Excel Tabelle. Domänenwerte sind dazu “selbstlernend” und erweitern sich bei jeder Ausführung eines Projektes mit der entsprechenden Domäne. Zusätzlich sind Domänenwerte bzw. die Knowledge Base auch die einzige Funktion innerhalb der DQS auf die von den SQL Server Integration Services zugegriffen werden kann.
Im Übrigen sieht man im obigen Screenshot, dass einige “Tillmänner” rot unterstrichen sind. Hier greift die Rechtschreibprüfung der DQS und weißt mich auf bestehende Fehler innerhalb der Daten hin. In diesem Beispiel ist als Sprache für diese Domäne jetzt Englisch ausgewählt. Wird diese auf Deutsch verändert, so wird nur der Name “Tillman” als fehlerhaft deklariert.
Öffnet man über einen rechten Mausklick das Kontextmenü zu diesem Eintrag, so werden einem entsprechende Korrekturen vorgeschlagen. Nach der Auswahl einer der Korrekturvorschläge wird dieser Wert automatisch als neue Gruppe angelegt bzw. die entsprechenden Korrektur einer bestehenden Gruppe hinzugefügt.
Ein kleiner zusätzlicher Hinweis noch an dieser Stelle: Selbstverständlich würde ich nie eine Knowledge Base/Wissensvermittlung/Domänenwert anlegen, die die entsprechenden Variationen von Tillmann in eine einheitliche Schreibweise Tillmann korrigiert.
Begriffsbasierte Beziehungen
Bei den Begriffsbasierten Beziehungen ist mir zuerst die Abgrenzung zu den Domänenwerten relativ schwer gefallen. Die Begriffsbasierten Beziehungen korrigieren genauso wie die Domänenwerte vorkommende Werte in frei zu definierende. Unterschiede existieren als erstes bei der Anlage dieser Daten. Gültige Daten können nicht importiert werden, die begriffsbasierten Beziehungen lernen nicht wie die Domänenwerte dazu und es gibt zwischen den ursprünglichen und den zu korrigierenden Werte auch kein Richtig oder Falsch.
Mit begriffsbasierten Beziehungen können Teilstrings innerhalb eines Wertes korrigiert werden. So kann zum Beispiel aus Dr. Dipl.-Biomath. Hans-Joachim Müller Jun. über die begriffsbasierte Beziehung Doktor Diplom-Biomathematiker Hans-Joachim Müller Junior erstellt werden. Die entsprechende Transformation findet vor den Domänenwerten statt.
Ebenso wie im obigen Beispiel würde ich hier genauestens überlegen wie und welche entsprechenden Titel/akademische Grade korrigiert werden, in den allermeisten Fällen ist eine Änderung nicht sinnvoll.