Zum Inhalt springen
SONOYA.com
Web & Code

Airbyte selbst hosten: Daten automatisch zusammenführen

Airbyte holt Daten aus über 600 Quellen wie Stripe, HubSpot oder Postgres und schreibt sie automatisch dorthin, wo Du sie auswerten willst. Was das Tool leistet, warum es gerade so beliebt wird und wie Du es mit einem Befehl selbst hostest…

Von Sonoya Redaktion6 Min. Lesezeit
Airbyte selbst hosten: Daten automatisch zusammenführen

Die Umsätze liegen in Stripe, die Kontakte in HubSpot, die Bestellungen in einer Postgres-Datenbank und die Werbeausgaben bei Google und Meta. Sobald jemand eine Frage stellt, die zwei dieser Systeme gleichzeitig betrifft, beginnt das Exportieren von CSV-Dateien, und irgendwann steht ein selbstgeschriebenes Python-Skript in einem Cronjob, das jedes Mal bricht, wenn ein Anbieter seine API ändert. Genau diese Arbeit nimmt Dir Airbyte ab, und Du kannst es kostenlos auf einem eigenen Server betreiben.

Was Airbyte eigentlich macht

Airbyte ist ein Werkzeug für Datenintegration. Du legst eine Quelle an, etwa Dein Stripe-Konto, wählst ein Ziel, etwa eine Postgres-Datenbank, und verbindest beides zu einer Connection. Ab da holt Airbyte die Daten nach Zeitplan ab und schreibt sie ins Ziel. Mehr ist der Grundgedanke nicht, und genau darin liegt die Stärke.

Der Ansatz heißt ELT und unterscheidet sich von dem, was viele noch als ETL kennen: Airbyte lädt die Rohdaten erst einmal möglichst unverändert ins Ziel, statt sie unterwegs umzubauen. Das Aufbereiten passiert danach im Ziel selbst, per SQL oder mit einem Werkzeug wie dbt. Der Vorteil ist handfest: Wenn Du später merkst, dass Du eine Kennzahl anders berechnen willst, änderst Du die Abfrage, statt die komplette Pipeline neu laufen zu lassen und die Daten erneut bei allen Anbietern abzuholen.

Zwei Dinge, die man sonst selbst bauen müsste, bringt Airbyte fertig mit. Erstens inkrementelle Synchronisation: Nach dem ersten vollständigen Lauf holt Airbyte nur noch, was neu oder geändert ist, was Laufzeit und API-Kontingent schont. Zweitens den Umgang mit Schema-Änderungen: Kommt bei der Quelle ein Feld dazu, erkennt Airbyte das und kann die Zieltabelle nachziehen, statt mit einem Fehler stehenzubleiben.

Warum das Tool gerade so beliebt wird

Der offensichtliche Grund ist die Zahl der fertigen Anbindungen. Airbyte liefert über 600 Connectors für APIs, Datenbanken, Data Warehouses und Data Lakes mit, und die Liste wächst laufend, weil sie zu einem großen Teil aus der Community kommt. Das Repository airbytehq/airbyte auf GitHub steht bei über 21.000 Sternen.

Wichtiger ist aber, was passiert, wenn Dein Nischen-Tool eben nicht dabei ist. Für diesen Fall gibt es den Connector Builder, eine Oberfläche im Browser, in der Du eine REST-API anklickst statt sie zu programmieren: Basis-URL, Authentifizierung, Endpunkte, Paginierung, Feldzuordnung. Was dabei herauskommt, verhält sich wie jeder andere Connector. Damit fällt der häufigste Grund weg, doch wieder ein eigenes Skript zu schreiben.

Dazu kommt, dass Airbyte nicht nur eine Oberfläche ist. Es gibt eine API, einen Terraform-Provider und mit PyAirbyte eine Python-Bibliothek, mit der sich dieselben Connectors direkt in einem Skript oder Notebook verwenden lassen, ganz ohne laufende Airbyte-Installation. Wer Pipelines lieber als Code versioniert, muss das Tool also nicht gegen sich arbeiten lassen.

Und schließlich der Zeitgeist: Wer einen internen KI-Assistenten auf Firmendaten bauen will, braucht genau das, was Airbyte tut, nämlich verstreute Daten regelmäßig und verlässlich an einen Ort bringen. Airbyte hat dafür Ziele im Programm, die direkt in Vektordatenbanken schreiben.

Open Source auf GitHub, mit einer Einschränkung

Der Quellcode liegt vollständig offen auf GitHub unter airbytehq/airbyte, Du kannst ihn lesen, ändern, selbst bauen und ohne Lizenzkosten betreiben. Eine Sache solltest Du trotzdem wissen, weil sie oft unter den Tisch fällt.

Die Plattform und ein Teil der von Airbyte selbst gepflegten Connectors stehen unter der Elastic License 2.0, kurz ELv2. Das ist eine quelloffene, aber keine von der Open Source Initiative anerkannte Lizenz. Der praktische Unterschied besteht in einer einzigen Klausel: Du darfst Airbyte nicht als gehosteten Dienst an Dritte weiterverkaufen und keine Lizenzmechanismen aushebeln. Von den Community-Connectors steht der Großteil weiterhin unter MIT.

Für den Normalfall, also den Betrieb im eigenen Unternehmen oder für eigene Projekte, ändert das nichts: Du darfst Airbyte kostenlos einsetzen, so viele Pipelines bauen wie Du willst, und niemand rechnet nach Datenvolumen ab. Nur wenn Dein Geschäftsmodell darin bestünde, Airbyte selbst als Dienstleistung anzubieten, wäre das ein Thema.

Airbyte selbst hosten

Für die Installation gibt es ein eigenes Kommandozeilenwerkzeug namens abctl, das den ganzen Aufbau übernimmt. Es startet im Hintergrund einen kleinen Kubernetes-Cluster innerhalb von Docker und installiert Airbyte samt Ingress hinein, ohne dass Du Dich mit Kubernetes beschäftigen musst.

Plan die Maschine großzügig, denn Airbyte ist kein Leichtgewicht: Empfohlen sind vier CPU-Kerne und mindestens 8 GB Arbeitsspeicher, dazu ein laufendes Docker. Für einen Server bedeutet das ein Droplet der Klasse 4 vCPU mit 8 GB RAM. Wenn Du noch keinen Server hast, bekommst Du über diesen Affiliate-Link zu DigitalOcean (Affiliate Link) Startguthaben, um das erst einmal auszuprobieren.

Installier zuerst abctl:

Code
curl -LsfS https://get.airbyte.com | bash -

Der Befehl lädt das Installationsskript und legt abctl auf Deinem System ab. Auf einem Mac geht das alternativ über Homebrew mit brew tap airbytehq/tap und anschließend brew install abctl.

Danach startest Du die Instanz:

Code
abctl local install

Dieser Schritt dauert beim ersten Mal einige Minuten, weil alle Container-Images geladen werden. Am Ende läuft Airbyte unter http://localhost:8000.

Die Zugangsdaten werden automatisch erzeugt und lassen sich jederzeit abfragen:

Code
abctl local credentials

Die Ausgabe enthält E-Mail-Adresse, Passwort und eine Client-ID für die API. Ein eigenes Passwort setzt Du mit abctl local credentials --password DEIN_PASSWORT, wobei Du DEIN_PASSWORT durch ein eigenes ersetzt.

Läuft Airbyte auf einem Server statt auf Deinem Rechner, muss es von außen erreichbar sein. Dafür gibst Du beim Installieren die Domain mit an:

Code
abctl local install --host airbyte.deine-domain.de

Ersetz airbyte.deine-domain.de durch einen Namen, dessen A-Record auf die IP-Adresse Deines Servers zeigt. Setz die Instanz danach hinter einen Reverse Proxy mit TLS und lass Port 8000 in der Firewall geschlossen, denn die Oberfläche gehört nicht ungeschützt ins offene Netz.

Auf einer knapp bemessenen Maschine hilft abctl local install --low-resource-mode, das mit zwei CPU-Kernen auskommt. Damit ist allerdings der Connector Builder nicht verfügbar; wenn Du eigene Connectors bauen willst, brauchst Du die volle Ausstattung.

Wofür man es in der Praxis einsetzt

Der Nutzen wird erst an konkreten Aufgaben greifbar. Diese fünf begegnen einem am häufigsten.

Ein Dashboard über mehrere Systeme hinweg. Stripe, HubSpot und die Bestelldatenbank laufen jede Nacht in eine gemeinsame Postgres-Datenbank. Erst dadurch lässt sich überhaupt fragen, was ein über eine bestimmte Kampagne gewonnener Kunde im ersten Jahr tatsächlich einbringt. Für die Auswertung darauf passt Metabase: Das Beste kostenlose Open Source Dashboard-Tool für Selbsthosting, das sich ebenfalls selbst hosten lässt.

Die Produktivdatenbank entlasten. Statt Auswertungen direkt auf der Datenbank laufen zu lassen, an der die Anwendung hängt, repliziert Airbyte sie regelmäßig in eine getrennte Analyse-Datenbank. Danach kann eine ungeschickt geschriebene Abfrage niemandem mehr den Shop langsam machen.

Marketingausgaben und Umsatz nebeneinanderlegen. Google Ads, Meta Ads und der Shop landen in derselben Datenbank. Der Return on Ad Spend pro Kampagne ist danach eine SQL-Abfrage statt einer Sitzung mit drei Browser-Tabs und einer Tabellenkalkulation.

Ein Archiv aufbauen, das Dir gehört. Viele SaaS-Dienste halten nur eine begrenzte Historie vor. Airbyte schreibt die Daten regelmäßig in Deinen eigenen Objektspeicher, etwa DigitalOcean Spaces oder S3. Das ist gleichzeitig die Versicherung gegen den Tag, an dem Du den Anbieter wechseln willst.

Daten für einen internen KI-Assistenten sammeln. Tickets, Dokumentation und Wiki-Inhalte fließen automatisch in eine Vektordatenbank, damit ein Assistent auf dem aktuellen Stand antwortet, statt auf einem einmaligen Export von vor drei Monaten.

Wo Airbyte nicht die richtige Wahl ist

Drei Grenzen solltest Du kennen, bevor Du anfängst.

Airbyte ist nicht für Echtzeit gebaut. Die Synchronisation läuft nach Zeitplan, üblicherweise stündlich oder täglich. Wenn Du Ereignisse in Sekunden weiterverarbeiten musst, brauchst Du ein anderes Werkzeug.

Airbyte transformiert nicht. Es bringt die Daten ans Ziel, das Aufbereiten machst Du danach mit SQL oder dbt. Wer erwartet, im selben Tool auch Kennzahlen zu modellieren, sucht am falschen Ort.

Und es ist schwerer als es aussieht. Acht Gigabyte Arbeitsspeicher für eine Handvoll Tabellen sind eine Ansage. Wenn Du täglich eine einzige CSV-Datei von einem SFTP-Server abholst, ist ein zwanzigzeiliges Skript ehrlicher als ein Kubernetes-Cluster.

Fazit

Der Punkt, an dem sich Airbyte lohnt, ist gut zu erkennen: Sobald Du drei oder mehr Datenquellen regelmäßig zusammenführen willst und die ersten selbstgeschriebenen Skripte anfangen, bei jeder API-Änderung zu brechen, sparst Du mit den fertigen Connectors mehr Zeit, als der Betrieb kostet. Bis dahin tut es ein Skript.

Und das Beste an der selbst gehosteten Variante ist die Rechnung: Bei den kommerziellen Anbietern in diesem Feld wird nach bewegten Datenzeilen abgerechnet, was mit dem Erfolg des Unternehmens mitwächst. Selbst gehostet zahlst Du den Server, sonst nichts, und die Daten verlassen Deine Infrastruktur nicht.

Weiterlesen.

  • Anleitung: n8n-Daten automatisch auf DigitalOcean Spaces sichern
    Web & Code

    n8n-Daten automatisch auf DigitalOcean Spaces sichern

    n8n speichert Deine Workflows und vor allem Deine Zugangsdaten in einem Docker-Volume auf dem Server. Geht das Droplet verloren, ist ohne Backup alles weg, denn ein automatisches Volume-Backup gibt es nicht. In dieser Anleitung sicherst Du Deine n8n-Daten jede Nacht automatisch auf DigitalOcean Spaces…

    Sonoya Redaktion
  • ClickHouse selbst hosten: Analysen in Millisekunden
    Web & Code

    ClickHouse selbst hosten: Analysen in Millisekunden

    ClickHouse beantwortet Auswertungen über Milliarden Zeilen in Sekundenbruchteilen, liegt unter Apache 2.0 auf GitHub und läuft mit einem Docker-Befehl. Was die Datenbank anders macht, warum sie gerade überall auftaucht und wofür sie sich lohnt…

    Sonoya Redaktion
  • Anleitung: Linkwarden mit Docker selbst hosten
    Web & Code

    Anleitung: Linkwarden mit Docker selbst hosten

    Linkwarden sammelt Deine Lesezeichen, liest Artikel im Reader-Modus und archiviert jede Seite als Screenshot, PDF und HTML. So richtest Du den Open-Source-Bookmark-Manager mit Docker Compose auf Deinem eigenen Server ein, damit alle Daten bei Dir bleiben …

    Sonoya Redaktion
  • Anleitung: linkding mit Docker selbst hosten
    Web & Code

    Anleitung: linkding mit Docker selbst hosten

    Deine Lesezeichen liegen verstreut in mehreren Browsern und werden über fremde Clouds synchronisiert? linkding ist ein minimalistischer, selbst gehosteter Bookmark-Manager. Hier richtest Du ihn Schritt für Schritt mit Docker auf Deinem eigenen Server ein, vom Container bis zur Browser-Erweiterung…

    Sonoya Redaktion
  • Postiz: Open-Source-Alternative zu Buffer & Co.
    Web & Code

    Postiz: Open-Source-Alternative zu Buffer & Co.

    Postiz plant Deine Social-Media-Posts für über 30 Netzwerke, ist quelloffen und lässt sich selbst hosten. Was das Tool kann, was es kostet, wie Du es kostenlos testest und drei Wege, wie Du daraus echten Nutzen oder ein eigenes Angebot machst.

    Sonoya Redaktion