Skip to content

Ein Warehouse nur lesend lesen, und was Ihre eigene Rolle entscheidet

Der Zugriff, den eine Governance-Schicht braucht, ist eng, spezifisch und es wert, genau benannt zu werden. Was aus einem Katalog gelesen wird, was nur lesend bedeutet, wenn es strukturell ist und nicht versprochen, warum Ihre eigene Warehouse-Rolle die Grenze bleibt, und was das Erben eines Katalogs Ihnen bringt.

Aktualisiert · 6 Min. Lesezeit

Was eine Governance-Schicht liest

Die erste Frage in jeder Prüfung ist, was das Ding tatsächlich berührt. Die Antwort ist kurz genug, um sie im Meeting vorzulesen.

  • Tabellen und Spalten, mit ihren Typen und ihren Kommentaren.
  • Tags, denn dort hält eine Plattform Eigentum, Stewardship und Klassifizierung fest.
  • Schlüssel, Primär- und Fremdschlüssel, wie die Plattform sie hält.
  • Freigaben, festgehalten, damit ein Bericht sagen kann, wer ein Ding sehen konnte.
  • Die Vertragsobjekte selbst: das semantische Modell, die Semantic View, die Metric View.

Jeder Punkt auf dieser Liste ist Metadaten. Es ist Ihr Katalog, Ihr Vokabular und Ihre Berechtigungen, die zusammen das Material sind, aus dem ein Governance-Bericht gemacht ist. Zeilendaten sind eine eigene Anfrage mit eigener Antwort, und sie wird vom governten Abfragepfad abgedeckt, nicht von der Synchronisation.

Eine gute Frage an jedes Tool, das Warehouse-Zugriff verlangt: Fragen Sie, was es behält. Hier behält das Audit die Form eines Ergebnisses, also die Zeilenzahl, und keine der Zellen.

Was nur lesend hier bedeutet

Es gibt zwei Arten, auf die Software nur lesend sein kann, und sie sind alles andere als gleichwertig.

Die schwache Art ist ein Versprechen. Der Code ist voll in der Lage zu schreiben und verpflichtet sich, es nicht zu tun, gehalten von einem Prüfkommentar, den ein künftiger Beitragender nie lesen wird. Die starke Art ist strukturell: Die Connector-Klassen stellen einen Verbindungstest und eine Introspektion bereit, und es gibt keine Schreibmethode zu bewachen, weil nie eine geschrieben wurde. Die Garantie überlebt ein Refactoring durch jemanden, der nie von ihr gehört hat.

Ein zweites Standbein läuft neben den Katalog-APIs, und es lohnt sich zu wissen, warum es da ist. Ein Teil der Governance, die Sie wollen, lebt im eigenen Information Schema und den Systemviews des Kontos, nicht im REST-Katalog. Eigentums-Tags und Schlüsselbeschränkungen zu lesen bedeutet, Anweisungen auszuführen. Diese Anweisungen sind Lesevorgänge, sie sind begrenzt, und sie sind der Grund, warum auf dem Verbindungsformular überhaupt ein Compute-Endpunkt erscheint.

Ihre eigene Rolle bleibt die Grenze

Zugriff wird geerbt und nie erweitert. Sie liefern Zugangsdaten, jeder Lesevorgang läuft als dieses Prinzipal, und der Horizont des Berichts ist der Horizont der Rolle. Was die Zugangsdaten nicht erreichen können, bleibt ausser Reichweite.

Drei Folgen, alle praktisch.

  • Zwei Administratoren mit verschiedenen Rollen können dieselbe Synchronisation ausführen und verschiedene Inventare bekommen. Beide sind korrekt, und der Unterschied zwischen ihnen ist eine Tatsache über Ihre Freigaben.
  • Zu erweitern, was die Schicht sieht, ist eine Freigabe, die Ihr Warehouse-Team macht, im Warehouse, unter eigener Prüfung und sichtbar in seinem eigenen Audit.
  • Zugangsdaten, die auf eine Datenbank begrenzt sind, halten die Synchronisation auf diese Datenbank begrenzt, ohne eine zweite Einstellung irgendwo, an die man denken müsste.

Der Wert davon in einer Prüfung ist, dass es die gestellte Frage verändert. Was ein Tool mit Ihren Daten tut, ist schwer zu beantworten und leicht zu misstrauen. Was Sie ihm gewährt haben, ist eine Frage, die Ihr eigenes Team bereits besitzt, in einem System, das es bereits betreibt, mit einem Audit, das es bereits liest.

Die Hosts, die eine Verbindung erreichen darf, und wo das Geheimnis lebt

Ein Verbindungsformular, das jeden beliebigen Host akzeptiert, ist eine Angriffsfläche für Request Forgery mit freundlicher Beschriftung. Ein Warehouse-Host muss zu einem der echten Hostnamen-Suffixe der Anbieter passen, bevor irgendetwas den Prozess verlässt, und private, Loopback-, Link-local- und Cloud-Metadatenadressen werden am selben Gate abgewiesen.

Die praktische Wirkung ist, dass ein Tippfehler eine Operatormeldung erzeugt, die den Host nennt, und keine Anfrage in Ihr eigenes Netzwerk, die halb gelingt und nie erklärt wird.

Die Zugangsdaten selbst sind ruhend verschlüsselt und werden nie zurückgegeben. Was die Konsole für eine konfigurierte Verbindung rendert, wird über das eigene Geheimnis-Flag der Feldspezifikation gefiltert, nicht über eine Liste, die jemand von Hand pflegt. Ein Token kann keine Seite erreichen, auch wenn er ein Feld neben etwas gespeichert ist, das es kann. Was Sie sehen, sind der Host, die Rolle, das Warehouse, die Datenbank und welche Art von Zugangsdaten authentifiziert hat.

Der letzte Punkt verdient seinen Platz. Eine Verbindung, die von einer Art Zugangsdaten auf eine andere zurückfällt, ohne es zu sagen, kann unbemerkt und unrepariert bleiben. Welche geantwortet hat, wird festgehalten und gezeigt.

Einen Katalog erben statt ihn neu aufzuschreiben

Einen Katalog zu erben und einen neu aufzuschreiben lesen sich auf einer Funktionsliste fast gleich und verhalten sich nach sechs Monaten völlig verschieden.

Neu aufschreiben bittet jemanden, Eigentümer, Klassifizierungen und Beschreibungen in ein zweites System zu tippen. Von dem Tag an, an dem diese Arbeit fertig ist, gibt es zwei Aufzeichnungen derselben Tatsache, und eine davon altert. Erben bedeutet, dass die erste Synchronisation liest, was Ihre Plattform bereits hält: Tabellen, Spalten, Kommentare, Tags, Schlüssel und Freigaben, nichts davon von irgendjemandem neu eingegeben.

Das ist auch der Grund, warum die Berechtigungsanfrage klein bleibt. Ein Tool, das erbt, braucht Lesevorgänge. Ein Tool, das erwartet, dass Sie in ihm kuratieren, braucht einen Ort zum Schreiben, einen Ort zum Speichern und ein Argument dafür, warum seine Kopie die ist, der Sie vertrauen sollten.

Namenskonventionen werden als Anreicherung dessen behandelt, was angekommen ist, nicht als Anforderung. Ein Warehouse, das keinem der erwarteten Muster entspricht, wird trotzdem vollständig eingelesen. Der Schichtname wird aus dem eigenen qualifizierten Label des Objekts gelesen, und das Vokabular ist offen, sodass ein Schichtname, den niemand dem Tool beigebracht hat, unversehrt ankommt, statt zu unbekannt zusammenzufallen.

Unvollständige Lesevorgänge, als unvollständig gekennzeichnet

Manche Governance-Lesevorgänge brauchen eine Freigabe, die viele Konten nie gemacht haben. Tag-Referenzen auf einer Plattform zu lesen erfordert ein Privileg auf der eigenen gemeinsamen Datenbank des Kontos, und diese Daten hinken um ein paar Stunden hinterher, selbst wenn sie gewährt sind.

Wo die Freigabe fehlt, ist der Lesevorgang nach bestem Bemühen: Er liefert, was er konnte, und meldet, was er nicht konnte. Die Unterscheidung ist der ganze Punkt. Ein Tool, das null dokumentierte Eigentümer meldet, wenn es meint, dass es die Eigentums-Tags nicht lesen konnte, hat Ihnen etwas Falsches über Ihre eigene Dokumentation gesagt, Sie werden danach handeln, und die Arbeit wird vergeudet sein.

Eine leere Spalte und eine Spalte, die nicht gelesen werden konnte, sehen auf dem Bildschirm identisch aus und bedeuten das Gegenteil. Die eine ist eine Dokumentationslücke auf Ihrer Seite. Die andere ist eine Freigabelücke in der Verbindung.

Dieselbe Disziplin zieht sich durch den Rest des Produkts. Eine Herkunftskarte nennt, was ihre Granularität vervollständigt hat. Eine leere Schicht bekommt null Punkte, keine schmeichelhafte Hundert. Eine erste Synchronisation, die dünn zurückkommt, zeigt Ihnen Ihre Abdeckung oder Ihre Freigaben, und vom Bericht wird erwartet, dass er sagt, welches von beiden es ist.

Die Freigaben, um die Sie bitten sollten

Eine kurze Liste für den, dem Ihr Warehouse gehört.

  • Lesen auf dem Katalog oder der Datenbank, die inventarisiert werden soll, und auf ihrem Information Schema.
  • Lesen auf dem Vertragsobjekt selbst: dem semantischen Modell, der Semantic View oder der Metric View.
  • Welches Privileg auch immer Ihre Plattform für das Lesen von Tag-Referenzen verlangt; ohne es bleiben Eigentum und Klassifizierung leer.
  • Ein Compute-Endpunkt, den die Rolle nutzen darf, denn einige der Governance-Lesevorgänge sind Abfragen.

Bitten Sie um die kleinste Menge, die Ihre erste Frage beantwortet, führen Sie eine Synchronisation aus, und lesen Sie dann, was leer zurückkam. Gegen Belege zu gewähren ist ein weit besseres Gespräch, als mit einer Liste anzukommen, und es lässt Ihr Warehouse-Team die Grenze halten, was genau der richtige Ort dafür ist.