Wie Apache Ossie versucht, Analysten und Entwickler zusammenzubringen
Eine bekannte Geschichte: Das Marketing berechnet die Kundenakquisitionskosten mit einer Formel in Excel, das BI-Tool liefert andere Zahlen, und im dbt-Projekt hat der Analyst eine dritte Logik eingebaut. Wenn das Business fragt, warum die Daten nicht übereinstimmen, beginnt ein langer Prozess, um die genaue Stelle zu finden, an der die Formel falsch war.
Dieses Problem wird als semantische Fragmentierung bezeichnet. Jedes Tool im Data-Stack – ob Tableau, Superset oder ein KI-Agent – existiert in seiner eigenen Blase und interpretiert Metadaten auf seine eigene Weise. Die Leute bei der Apache Software Foundation haben sich entschieden, dem ein Ende zu setzen, und präsentierten das Ossie-Projekt (ehemals bekannt als Open Semantic Interchange).
Warum brauchen wir einen weiteren Standard
Kurz gesagt: damit du einmal definieren kannst, was „Umsatz" oder „aktiver Nutzer" bedeutet, und diese Definition überall verwenden kannst. Wenn du gerade von einem BI-Tool zu einem anderen wechselst, musst du derzeit die gesamte Business-Logik von Grund auf neu schreiben. Ossie bietet ein herstellerneutrales Format, das eine Art „Esperanto" für die Analytics-Welt werden soll.
Das Projekt befindet sich derzeit im Apache Incubator. Das bedeutet, es ist noch in der Entstehung, aber es steht bereits eine ernstzunehmende Community dahinter. Die Idee ist, eine einzige Quelle der Wahrheit zu schaffen, die sowohl SQL-Engines als auch ausgefeilte LLM-Bots verstehen können.
Was befindet sich im Repository
Es gibt keine komplexe Binärsoftware, die stundenlang kompiliert werden muss. Im Wesentlichen handelt es sich um eine Sammlung von Spezifikationen und Hilfstools für die Arbeit damit.
Spezifikations-Kern
Der Ordner core-spec enthält eine Beschreibung, wie die semantische Schicht aussehen sollte. Dies sind gewöhnliche JSON- und YAML-Dateien. Ein maschinenlesbares Schema ermöglicht es, automatisch zu überprüfen, ob du deine Metrikdefinitionen nicht durcheinandergebracht hast.
Konverter
Dies ist wahrscheinlich der nützlichste Teil für Praktiker. Der Ordner converters enthält Tools zum Übersetzen vom Ossie-Format in andere beliebte Systeme. Derzeit gibt es Implementierungen für dbt, GoodData, Polaris und sogar Salesforce. Dies ermöglicht es, die Spezifikation nicht einfach nur „in der Schublade" zu speichern, sondern sie tatsächlich in deine Arbeitstools zu überführen.
Beispiele und Validierung
Für alle, die keine trockene Dokumentation lesen möchten, gibt es den Ordner examples. Er enthält ein vollständiges TPC-DS-Modell – den Standard-Benchmark für analytische Systeme. Du kannst einfach sehen, wie komplexe Beziehungen und Aggregationen mit echten Daten beschrieben werden.
Wie es in der Praxis funktioniert
Stell dir vor, du beschreibst dein Datenmodell in einer YAML-Datei. Du gibst die Tabellen an, die Beziehungen zwischen ihnen und vor allem die berechneten Metriken.
{
"name": "total_sales",
"description": "Сумма всех успешных транзакций без учета возвратов",
"expression": "sum(order_amount)",
"filters": ["status = 'completed'"]
}
Danach führst du diese Datei durch einen Konverter. Die Ausgabe ist eine Konfiguration für dein BI-Tool. Wenn das Business morgen beschließt, das Tool zu wechseln, musst du nicht mehr wissen, welche Filter in den alten Berichten waren. Du führst einfach einen anderen Konverter aus.
Dies ist besonders relevant für KI-Agenten. Damit ein neuronales Netz Fragen zu einer Datenbank adäquat beantworten kann, benötigt es Kontext. Ossie stellt diesen Kontext in einem strukturierten Format bereit und eliminiert Halluzinationen darüber, „wie berechne ich den durchschnittlichen Bestellwert".
Solltest du es jetzt nutzen
Das Projekt befindet sich in der Inkubationsphase, und das zeigt sich. Es gibt noch nicht Tausende von GitHub-Sternen (etwa 700 zum Zeitpunkt der Erstellung), und die Dokumentation zwingt einen manchmal dazu, sich durch den Quellcode zu wühlen. Allerdings steht Apache hinter dem Projekt, und Mitwirkende von großen Analytics-Unternehmen erscheinen in der Liste.
Wer sollte Ossie definitiv genauer ansehen:
- Teams, die es leid sind, dass dbt-Metriken nicht mit dem übereinstimmen, was der Manager im BI-Tool sieht.
- Entwickler von Analytics-Plattformen, die Import/Export-Unterstützung für Modelle hinzufügen möchten.
- Diejenigen, die komplexe Systeme mit LLMs erstellen und dem neuronalen Netz eine klare Datenstruktur geben möchten.
Wenn du in einem kleinen Startup arbeitest, mit einer Datenbank und ein paar Diagrammen, könnte Ossie überdimensioniert erscheinen. Aber sobald du mehr als zwei Tools hast, taucht das Problem „gleiche Namen mit unterschiedlicher Bedeutung" mit voller Wucht auf.
Du kannst das Projekt im offiziellen Repository ausprobieren. Es gibt auch einen Link zur Slack-Community, in der Entwickler recht prompt auf Fragen zur Spezifikation antworten. Je mehr Anbieter diesen Standard übernehmen, desto weniger Kopfschmerzen werden wir bei Migrationen und Analytics-Setup haben.
Ähnliche Projekte