Das Datenproduktportal integriert sich mit Ihrer bevorzugten Datenplattform.

26.08.2024

Kristof Martens

Vor ein paar Wochen haben wir die Veröffentlichung des Data Product Portals als Open-Source-Repository angekündigt.

Das Data Product Portal ist ein Open-Source-Tool, das Organisationen hilft, Datenprodukte in großem Maßstab zu erstellen und zu verwalten. Es ist intuitiv, flexibel und darauf ausgerichtet, das Management von Datenprodukten einfach und effektiv zu gestalten.

Conveyor

Es zielt darauf ab, alle Aspekte von Datenprodukten, die mit Datenverwaltung, Datenplattformen und Benutzermanagement verbunden sind, in einer einzigen Lösung zu integrieren.

Uns werden oft Fragen gestellt, wie das Datenproduktportal mit Datenplattformen und -tools interagiert.

Das Ziel dieses Blogbeitrags ist es, genau das zu erklären. Es werden Fragen behandelt wie: Wie wird das Datenproduktportal mit meiner Datenplattform interagieren? Wie werden Datenprodukte definiert? Wie können Menschen mit Datenprodukten und ihrem Datenzugriffsbereich interagieren? Wie übersetzt sich das in Ressourcen der Datenplattform, z. B. Speicherbuckets, Datenbanken und Werkzeuge zum Erstellen von Datenprodukten?

Das Beispiel in diesem Blogbeitrag basiert auf AWS. In kommenden Versionen des Datenproduktportals beabsichtigen wir, die Unterstützung für andere Datenplattformen wie Databricks, Snowflake, Azure und andere hinzuzufügen. Bitte tragen Sie bei, wenn Sie die Entwicklung beschleunigen möchten!

Konzepte des Datenproduktportals

Im Ankündigungs-Blogbeitrag haben wir ein Datenprodukt wie folgt beschrieben:

Eine Initiative mit einem klaren Ziel, die von einer Abteilung oder Domäne geleitet wird und Folgendes umfasst: Zugang zu Daten, Werkzeuge und Artefakte, an denen die Teammitglieder zusammenarbeiten. Die Ergebnisse von Datenprodukten können mit anderen Datenprodukten zum Konsum geteilt werden.

Diese Konzepte von Datenprodukten können wie folgt visualisiert werden:

Data product portal concepts

Eine der wichtigen Konsequenzen ist, dass der Zugang zu Daten auf Ebene des Datenprodukts und nicht auf Personsebene organisiert ist. Das bedeutet, dass die gesammelten Datenzugriffsberechtigungen und andere Governance-Regeln zwischen den Prozessen, Werkzeugen und Personen innerhalb des Geltungsbereichs dieses Datenprodukts geteilt werden. Dies bringt zusätzliche Vorteile mit sich, aber wenn Sie mehr darüber erfahren möchten, können Sie den folgenden Blogbeitrag lesen.

Die Schwierigkeit, die mit einem Datenproduktdenken Ansatz verbunden ist, besteht darin, eine praktische Umsetzung zu finden, die diese Konzepte zusammenbringt. Wie man einen Geltungsbereich für Datenprodukte auf Ihrer Datenplattform einrichtet, die Anforderungen an die Datenverwaltung klärt und die Personen, die mit dem Datenprodukt interagieren müssen, zu identifizieren, ist ein schwieriges Problem zu lösen.

Data product

Integrationskonzepte

Hier kommt das Datenproduktportal ins Spiel. Es handelt sich um ein Prozesswerkzeug, das klare und einfache Konzepte bereitstellt, die in eine praktische Umsetzung übersetzt werden. Dies hilft sowohl technischen Personen, die an Datenprodukten arbeiten, als auch Personen aus den Geschäftsbereichen, die Kontrolle zu behalten und Einblicke darüber zu geben, wie ihre Daten in einer Organisation genutzt werden.

Intergation

Im obigen Diagramm interagieren Personen, die mit Daten arbeiten, und Geschäftsnutzer über unseren Frontend-Prozess mit dem Datenproduktportal, um ihre Datenprodukte zu konfigurieren und den Zugang zu Daten zu organisieren, die von anderen Datenprodukten erzeugt wurden. Diese Konfiguration wird im Backend des Datenproduktportals gespeichert und verwaltet. Die Logik zur Konfiguration der Datenplattform kann mit den APIs des Datenproduktportals interagieren, um diese Konfiguration abzurufen. Diese Logik wird diese Konfiguration in eine praktische Umsetzung übersetzen, wie man:

  • Zugang zu Daten konfigurieren: Erstellen Sie Datenzugriffsberechtigungen pro Datenprodukt und ermöglichen Sie Personen, Datenplattformen und Tools, mit diesen Daten im Geltungsbereich des Datenprodukts zu interagieren: z. B. AWS IAM, Databricks Unity Grants, Snowflake-Berechtigungen

  • Datenplattformen konfigurieren: Richten Sie Datenplattformen ordnungsgemäß ein, um Datenprodukte zu erstellen und es Personen innerhalb des Geltungsbereichs eines Datenprodukts zu ermöglichen, das über die richtigen Datenzugriffsberechtigungen verfügt: z. B. AWS Glue/Batch/Athena, Databricks-Arbeitsbereiche, Snowflake-DWHs.

  • Werkzeuge konfigurieren: Personen, die mit Daten arbeiten, müssen mit vielen Werkzeugen interagieren, um Datenprodukte erstellen, ausführen und betreiben zu können. Das Portal stellt sicher, dass diese Werkzeuge entsprechend konfiguriert und in den Geltungsbereich Ihres Datenprodukts integriert sind: z. B. Github als Code-Repository, Airflow zur Planung, Conveyor als Management-Workflow für Datenprodukte, Collibra als Datenkatalog.

Die Teams der Datenplattform können ihre eigene Konfigurationslogik basierend auf diesen Konzepten schreiben, sie können jedoch auch die standardmäßige Konfigurationslogik verwenden, die vom Datenproduktportal in Terraform bereitgestellt wird. Mit der standardmäßigen Konfigurationslogik bieten wir sofortige Integrationen mit AWS und Conveyor, beabsichtigen jedoch, diese Integrationen auf Databricks, Azure, Snowflake, Tableau, Collibra und andere relevante Werkzeuge auszudehnen.

Integrationsschritte

Wenn Sie die standardmäßige AWS-Integration mit Terraform, die mit dem Datenproduktportal bereitgestellt wird, verwenden möchten, können Sie dies tun, indem Sie die folgenden Schritte ausführen:

Weitere Informationen dazu finden Sie in unserem Open-Source-Git-Repository

Terraform-Setup konfigurieren

  1. Setzen Sie AWS-Anmeldeinformationen: Diese AWS-Anmeldeinformationen werden verwendet, um Ihre Datenplattform-Umgebungen (S3-Buckets, Glue-Datenbanken, IAM-Rollen, Athena-Arbeitsgruppen usw.) festzulegen und in welchem Konto diese Ressourcen erstellt werden.

  2. Einrichten der Terraform-Statusdatei: Dies ist ein technisches Prerequisite, um Terraform ausführen zu können. Es gibt viele gute Ressourcen, die online verfügbar sind, um dies ordnungsgemäß einzurichten. Eine Beispiel-Statusdatei finden Sie hier.

  3. Ihren Datenplattform einrichten: In unserer Terraform-Codebasis erlauben wir den Benutzern, einige Aspekte der Datenplattform zu konfigurieren, die derzeit nicht vom Datenproduktportal verwaltet werden. Dinge wie VPC, DNS, Infrastrukturkomponenten (z. B. Kubernetes zur Installation des Portals) und Datenumgebungen (z. B. Erstellung sicherer S3-Buckets) sollten dort konfiguriert werden.

  4. Wählen Sie die für Sie relevanten Module aus: Wenn Sie bereits eine Netzwerkkonfiguration haben und keine Infrastrukturkomponenten neben den Datenumgebungen S3-Buckets und den spezifischen IAM-Rollen der Datenprodukte benötigen, können Sie die Module deaktivieren, die Sie nicht benötigen. Mindestens müssen die Umgebung und Datenprodukte Module aktiviert sein, um mit einer funktionierenden Datenplattform zu enden.

Terraform-Code mit Beispieldateien ausführen

Unsere Terraform-Codebasis enthält auch eine Beispielkonfiguration, die 2 Datenprodukte, 3 Datensätze und 3 Datenausgaben und deren Beziehungen definiert. Ich empfehle, mit dieser Konfiguration während der AWS-Integration über Terraform zu beginnen. Wenn Sie Ihre Terraform-Konfiguration korrekt eingerichtet haben, sollten Sie in der Lage sein, Ihre Datenumgebungen und IAM-Berechtigungen für Datenprodukte basierend auf Ihrer Konfiguration einzurichten.

Konfiguration direkt vom Backend des Portals abrufen

Nachdem Sie Ihre Terraform- und das Datenproduktportal korrekt eingerichtet haben, können Sie damit beginnen, diese Komponenten zusammen zu integrieren.

Stijn Janssens

schrieb einen Blogbeitrag, wie Sie das Datenproduktportal mit Docker Compose oder über ein Helm Chart auf Ihrem Kubernetes-Cluster installieren können.

Es ist im Datenproduktportal möglich, einen API-Schlüssel zu definieren, der verwendet werden kann, um Informationen direkt von unserem Backend abzurufen, um die Beispielkonfiguration zu ersetzen. Dieser API-Schlüssel kann im Helm Chart während des Installationsprozesses auf Kubernetes definiert werden und kann verwendet werden, um direkt mit unseren Backend-APIs zu interagieren.

Eine vollständige Beschreibung unserer API-Dokumentationen ist verfügbar, wenn Sie docker compose up ausführen und zu http://localhost:8080/api/docs browsen.

Datasets

Mit dem API-Schlüssel und der OpenAPI-Beschreibung sollten Sie in der Lage sein, alle relevanten Informationen aus dem Portal abzurufen und diese in die Konfigurationsstruktur zu übersetzen, die die Terraform-Codebasis erfordert. Ein Beispiel Python-Skript ist verfügbar, das genau das tut.

Automatisch Terraform-Änderungen bei Portal-Updates ausführen

Wenn Sie sich sicher fühlen, die Konfiguration aus dem Backend des Portals abzurufen und die Infrastruktur automatisch über Terraform anzuwenden, können Sie das Abrufen und das Terraform-Skript automatisch auslösen.

Wie wir gelernt haben, haben viele Organisationen unterschiedliche Verfahren zur Durchführung von Infrastruktur- und Terraform-Änderungen. Wir erlauben Organisationen, zu entscheiden, was am besten für sie funktioniert. Dieser Ansatz ermöglicht es Ihnen auch, das Datenproduktportal einfach mit Ihrem bereits bestehenden Plattform-Code zu integrieren.

Abschließende Gedanken

Aus Erfahrung haben wir gelernt, dass viele Organisationen Schwierigkeiten haben, ihre Strategie des selbstständigen Denkens von Datenprodukten in eine praktische Umsetzung zu übersetzen. Wir hoffen, dass das Datenproduktportal Ihnen Inspiration gibt, wie Sie dies tatsächlich erreichen können, und würden vorschlagen, dass Sie es ausprobieren!

Wenn Sie mehr erfahren möchten, besuchen Sie bitte unser Git-Repository oder interagieren Sie direkt mit uns auf unserem Slack-Kanal.


Latest

Portable by design: Rethinking data platforms in the age of digital sovereignty
Portable by design: Rethinking data platforms in the age of digital sovereignty
Portable by design: Rethinking data platforms in the age of digital sovereignty

Portable by design: Rethinking data platforms in the age of digital sovereignty

Build a portable, EU-compliant data platform and avoid vendor lock-in—discover our cloud-neutral stack in this deep-dive blog.

Cloud-Unabhängigkeit: Test eines europäischen Cloud-Anbieters gegen die Giganten
Cloud-Unabhängigkeit: Test eines europäischen Cloud-Anbieters gegen die Giganten
Cloud-Unabhängigkeit: Test eines europäischen Cloud-Anbieters gegen die Giganten

Cloud-Unabhängigkeit: Test eines europäischen Cloud-Anbieters gegen die Giganten

Kann ein europäischer Cloud-Anbieter wie Ionos AWS oder Azure ersetzen? Wir testen es – und finden überraschende Vorteile in Bezug auf Kosten, Kontrolle und Unabhängigkeit.

Hören Sie auf, schlechte Qualitätsdaten zu laden
Hören Sie auf, schlechte Qualitätsdaten zu laden
Hören Sie auf, schlechte Qualitätsdaten zu laden

Vermeide schlechte Daten von Anfang an

Das Erfassen aller Daten ohne Qualitätsprüfungen führt zu wiederkehrenden Problemen. Priorisieren Sie die Datenqualität von Anfang an, um nachgelagerte Probleme zu vermeiden.

Hinterlasse deine E-Mail-Adresse, um den Dataminded-Newsletter zu abonnieren.

Hinterlasse deine E-Mail-Adresse, um den Dataminded-Newsletter zu abonnieren.

Hinterlasse deine E-Mail-Adresse, um den Dataminded-Newsletter zu abonnieren.

Belgien

Vismarkt 17, 3000 Leuven - HQ
Borsbeeksebrug 34, 2600 Antwerpen


USt-IdNr. DE.0667.976.246

Deutschland

Spaces Kennedydamm,
Kaiserswerther Strasse 135, 40474 Düsseldorf, Deutschland


© 2025 Dataminded. Alle Rechte vorbehalten.


Vismarkt 17, 3000 Leuven - HQ
Borsbeeksebrug 34, 2600 Antwerpen

USt-IdNr. DE.0667.976.246

Deutschland

Spaces Kennedydamm, Kaiserswerther Strasse 135, 40474 Düsseldorf, Deutschland

© 2025 Dataminded. Alle Rechte vorbehalten.


Vismarkt 17, 3000 Leuven - HQ
Borsbeeksebrug 34, 2600 Antwerpen

USt-IdNr. DE.0667.976.246

Deutschland

Spaces Kennedydamm, Kaiserswerther Strasse 135, 40474 Düsseldorf, Deutschland

© 2025 Dataminded. Alle Rechte vorbehalten.