CiviCRM Datenbank & Metabase

Wir verbinden das Business Intelligence Tool Metabase mit der CiviCRM Datenbank und verwenden es, um Daten auszuwerten und zu visualisieren.

🧹 daten-organisieren: CiviCRM Datenbank und (partiell) in Metabase, direkte Anbindung der CiviCRM Datenbank an Metabase
🔢 daten-auswerten: Metabase
📊 daten-visualisieren: Metabase

Voraussetzungen

  • Direkter Zugriff auf eure CiviCRM Datenbank
  • Einen Account für eine Metabase Instanz mit Admin-Rechten

Anleitung

A. Setup

Fügt wie hier beschrieben eine Verbindung zu eurer Datenbank zu Metabase hinzu.

B. Daten analysieren und visualisieren

Sobald Metabase Zugriff auf eure CiviCRM-Datenbank habt, könnt ihr Fragen erstellen und diese in Dashboards visualisieren und darstellen. Mehr zur Analyse und Visualisierung in Metabase hier.

C. Daten organisieren

Die CiviCRM-Datenbank hat sehr viele Tabellen - verständlich bei so einer umfassenden Softwarelösung. Zum Beispiel sind in der Tabelle Kontakte nur numerische IDs für das Geschlecht vorhanden. Die Labels finden sich in einer eigenen Tabelle. Diese Tabellen bei jeder Frage zusammenzuführen, ist auf Dauer nervig und zeitraubend. Es lohnt es sich daher, ein bisschen Datenmodellierung in Metabase zu machen. Hierfür könnt ihr die Modell-Funktion verwenden. So könnt ihr z.B. ein Modell “Kontakte” anlegen, welches die Genderoptionen bereits an die Kontakte-Tabelle anfügt. Euer Modell könnt ihr dann in allen weiteren Fragen und verbundenen Analyse- und Visualisierungsschritten nutzen.

Use Case: Kontakt- und Spendendashboard

Als Teil des Datenvorhabens haben wir ein Dashboard erstellt, welches einen Überblick über die Kontakte und Spenden + Kampagnenbeiträge in unserer Testdatenbank gibt. Das Dashboard hat zwei Tabs:

  • Kontakte: Deskriptive Statistiken zu unseren Fake-Kontakten
  • Spenden: Deskriptive Statistiken zu Zuwendungen, spezifisch zu Spenden und Kampagnenbeiträgen.

Als kleiner Vorgeschmack hier die Visualisierung unserer fiktiven Spendenkampagne im Dezember 2024:

Vorteile

  • Über die Datenbank erhaltet ihr Zugriff auf den gesamten Umfang eurer Daten und seid somit sehr flexibel in euren Auswertungen
  • Tools wie BI-Tools funktionieren am besten mit einer direkten Verbindung mit der CiviCRM-Datenbank

Nachteile

  • Datensicherheit: ein direkter Zugriff auf die Datenbank ist auch immer ein Datensicherheitsrisiko. Deshalb kann euer CiviCRM-Dienstleister (berechtigte) Bedenken haben, euch diesen Zugriff zu gewähren. Greift wenn möglich auf die API zurück.
  • Komplexität: Die Daten liegen in der CiviCRM in zahlreichen Tabellen ab. Sich hier zurecht zu finden, erfordert eine Einarbeitung in SQL und einen gewissen Spürsinn: Die Entity-Relationship-Diagramme (ERDs) für CiviCRM sind zwar hier dokumentiert, aber trotzdem müsst ihr euch sicher zu einem gewissen Grad selbst durch die Daten "wühlen", v.a. wenn ihr Daten aus verschiedenen CiviCRM-Datentypen kombinieren wollt.

Fazit

Für die Verwendung von bestimmten externen Tools (v.a. BI-Tools) kann ein direkter Zugriff auf die CiviCRM-Datenbank sinnvoll sein. Aufgrund der Datensicherheitsrisiken solltet ihr sehr verantwortungsbewusst mit dieser Option umgehen und Rücksprache mit eurem CiviCRM-Dienstleister halten.

Falls ihr für externe Tools den Zugriff auf eine Datenbank benötigt, ist alternativ das Duplizieren eines Teils der CiviCRM Daten in eine Managed Datenbank über die API und Workflow-Tools eine Option. Siehe dafür das Kapitel zu ETL.