Die derzeitige Rückkehr zur Software-Code-Zentrierung ist fast paradox. Hätten wir den Programmierer-Entwicklern, die uns aus der IBM-PC-Ära in die frühen Versionen von Windows herausentwickelten, gesagt, dass Code alles antreiben würde, hätten sie uns vermutlich etwas ratlos angesehen.
„Natürlich wird Code alles antreiben; deshalb entwickeln wir Anwendungen, etablieren Datenbankprozeduren und blicken in die Zukunft, in der künstliche Intelligenz (KI) endlich aus den Filmen in die Realität gelangt“, hätte jeder beliebige Softwareentwickler in den 1980er-Jahren gesagt – und wahrscheinlich auch die meisten in den 1990er-Jahren.
Mit Everything as Code voranschreiten
Doch so wie sich die Syntax für die Entwicklung von Softwareanwendungen im Laufe der Jahrzehnte verändert und weiterentwickelt, hat sich auch unsere Vorstellung davon gewandelt, was wir unter „als Code erstellt“ verstehen. Diese Binsenweisheit rückt vor allem deshalb in den Vordergrund, weil wir heute in einer Cloud-Welt leben, in der Virtualisierung an erster Stelle steht – mit all den abstrahierten Schichten, aus denen unsere neuen Computing-Lösungen bestehen.
Wenn wir heute über Code-Konstrukte sprechen, meinen wir nicht nur Anwendungen oder deren Kernkomponenten.
Wenn wir heute sagen, dass etwas als Code bereitgestellt wird, kann es sich um Infrastructure as Code (IaC), Testing as Code (TaC) oder eine allgemeinere Schicht von Networking as Code (NaC) handeln, die wir vor der Cloud-Ära noch den Hubs, Switches und Routern anvertrauten.
Everything as Code, typischerweise als XaC bezeichnet, umfasst alles – von der Infrastruktur über Plattformen und Anwendungen bis hin zu jedem tieferen „Service“-Element des Stacks, etwa Compliance, Sicherheit und den täglichen Betrieb.
Daten im Mittelpunkt
Während wir nun daran arbeiten, die Funktionen der neuen IT-Stack-Methoden mit Everything as Code zu verfeinern, werden wir uns in dieser neuen Ära der Technologielösungen zurechtfinden.
Wo sollten wir also anfangen? Natürlich bei den Daten.
Daten sind selbstverständlich das Kernelement, mit dem wir alle Ebenen der Cloud aufbauen werden. Logischerweise sollte die Beobachtbarkeit von Cloud-Daten daher eine zentrale Disziplin jeder Testing-as-Code-Funktion bilden, wenn wir uns im Everything-as-Code-Universum zurechtfinden wollen.
Ein Unternehmen, das dieses Technologieversprechen aufgreift und genau in diesem Bereich arbeitet, ist Soda, ein in Brüssel, Belgien, ansässiger Anbieter von Open-Source-Tools für die Datenzuverlässigkeit und von Technologien für Cloud-Datenbeobachtbarkeit.
Ende vergangenen Jahres veröffentlichte Soda seinen Cloud Metrics Store, um Datenteams Testing-as-Code-Funktionen bereitzustellen, mit denen sie Datenprobleme auf anspruchsvollere Weise frühzeitig erkennen können. Die Technologie erfasst historische Informationen über den Zustand der Daten, um intelligente Datentests über sämtliche Workloads hinweg zu unterstützen.
Während sich der moderne cloudnative Netzwerk-Stack weiterentwickelt und Everything as Code zunehmend zum De-facto-Ansatz wird, beginnen wir, die sogenannte „Datenwertschöpfungskette“ als Maß für den Wert unseres gesamten IT-Systems zu betrachten.
„Für Datenteams ist es von Vorteil, sich auf eine gemeinsame Sprache zu verständigen, mit der sie festlegen können, wie gute Daten entlang der gesamten Datenwertschöpfungskette – von der Aufnahme bis zum Verbrauch – aussehen, unabhängig von Rollen, Fähigkeiten oder Fachkenntnissen“, sagte Maarten Masschelein, CEO von Soda. „Die meisten Datenteams sind heute nach Domänen organisiert. Bei der Erstellung von Datenprodukten sind sie daher häufig voneinander abhängig, um zeitnahe, korrekte und vollständige Daten bereitzustellen.“
Auch lesenswert: Mit Low-Code Netzwerkautomatisierung bereitstellen
Eine gemeinsame Sprache für Daten
Eine gemeinsame Sprache für Daten könnte dazu führen, dass Coding- und Datenlösungen für jedermann verfügbar werden; in der demokratisierten Everything-as-Code-Zukunft gäbe es zwischen den Nutzern kaum oder gar keine Hierarchien.
Ohne eine klare Strategie zur Überwachung der Daten auf Qualitätsprobleme erkennen viele Unternehmen die Schwierigkeiten nicht, die ihre Systeme ungeschützt zurücklassen und zu schwerwiegenden Folgeproblemen führen können. Masschelein und sein Team erklären, dass sie Datenteams mit einer Kombination aus der Soda Cloud Data Observability Platform und den von und für Dateningenieure entwickelten Open-Source-Tools für Datenzuverlässigkeit die Werkzeuge an die Hand geben wollen, um eine Kultur und Gemeinschaft guter Datenpraxis zu schaffen.
Er erklärt, dass die neueste Version seines Unternehmens Datenteams dazu bringt, ausdrücklich festzulegen, wie gute Daten aussehen. Dadurch können Vereinbarungen zwischen Domänenteams getroffen, einfach nachverfolgt und überwacht werden, sodass Datenproduktteams die Freiheit erhalten, am nächsten großen Vorhaben zu arbeiten.
„Mit dieser neuesten Version ermöglicht der Cloud Metrics Store Daten- und Analyseingenieuren, den Zustand von Daten auf Grundlage früherer Werte zu testen und zu validieren“, sagte Masschelein. „Diese historischen Kennzahlen erlauben es Datentests, auf einem grundlegenden Verständnis davon aufzubauen, wie gute Daten aussehen. Fehlerhafte Daten werden effizient zur Prüfung isoliert, bevor sie Datenprodukte oder nachgelagerte Nutzer beeinträchtigen.“
Warnmeldungen werden über gängige On-Call-Tools oder Slack versendet. So erfahren Datenteams als Erste von auftretenden Datenproblemen und können diese schnell beheben.
Auch lesenswert: Die 8 besten Verfahren und Strategien für die Datenmigration
Die Ära der Best Practices für Daten
Bislang hören wir von IT-Anbietern noch nicht, dass sie Best Practices für Daten als klar definiertes Prinzip oder Workflow-Ziel thematisieren. Die meisten verbreiten weiterhin lediglich die üblichen Botschaften zu Best Practices, von denen sich einige auf Daten beziehen werden.
Wenn es im Everything-as-Code-Umfeld Best Practices für Daten gibt – und die sollte es grundlegend wohl sehr wohl geben –, benötigen wir Tools für die Datenzuverlässigkeit, die den gesamten Lebenszyklus eines Datenprodukts abdecken. Das bedeutet, dass Dateningenieure Daten bei der Aufnahme unkompliziert testen können und Datenproduktmanager die Daten validieren können, bevor sie in anderen Tools verwendet werden.
Genau diese Test- und Validierungsfunktion bringt Soda auf den Markt.
„Alle Prüfungen können in einer leicht erlernbaren Konfigurationssprache ‚as-code‘ geschrieben werden“, sagte Masschelein. „Konfigurationsdateien werden versioniert und bestimmen, welche Tests bei jedem Eintreffen neuer Daten auf einer Datenplattform ausgeführt werden. Soda unterstützt sämtliche Daten-Workloads, darunter Workloads für Dateninfrastruktur, Data Science, Analysen und Streaming – sowohl On-Premises als auch in der Cloud.“
Unsere Welt ist heute cloud-first, code-first und data-first. Da Everything as Code Datenlösungen vorantreibt, wird es wichtig sein, die Zukunft der Dateninnovationen im Blick zu behalten.
Als Nächstes lesen: Trends bei Rechenzentrumstechnologien für 2022