Campaign: Langsame Datenübertragungen von Adobe Campaign zu Databricks (DBX)

In diesem Artikel wird ein Leistungsproblem beschrieben, bei dem die Datenübertragungen von Adobe Campaign zu Databricks deutlich langsamer als erwartet verlaufen. Das Verhalten tritt auf, wenn Campaign seinen Bulk-Load-Mechanismus nicht verwenden kann und stattdessen auf eine langsamere Einfügestrategie Zeile für Zeile zurückgreift.

Beschreibung description

In einigen Adobe Campaign-Workflows können Daten, die in Databricks geschrieben werden, extrem langsam sein, auch wenn andere Datenbankübertragungspfade normal funktionieren.

Typische Symptome sind:

  • Übertragungen von Adobe Campaign oder Federated Data Sources in Databricks dauern viel länger als erwartet.
  • Umgekehrte oder alternative Datenflüsse können weiterhin normal funktionieren.
  • Das Problem ist über mehrere Workflows oder Umgebungen hinweg reproduzierbar.
  • Workflow- oder Auditprotokolle enthalten eine Warnung ähnlich der folgenden:

Das für das Massenladen verwendete Speicherkonto wurde nicht gefunden. Verwenden Sie die standardmäßige Massenladestrategie

Diese Warnung weist darauf hin, dass Campaign die verknüpfte Speicherkonfiguration, die für den Massenladepfad erforderlich ist, nicht finden konnte. Daher greift der Connector auf eine standardmäßige zeilenweise Einfügemethode über ODBC zurück.

Lösung resolution

Die langsame Datenübertragungsleistung, die beim Schreiben von Daten aus Adobe Campaign in Databricks beobachtet wird, ist eine direkte Folge davon, dass das externe Databricks-Konto kein verknüpftes Cloud-Speicherkonto (Azure Blob oder AWS S3) konfiguriert hat.

Ursache

Beim Schreiben von Daten in Databricks versucht Campaign, einen Massenladepfad zu verwenden, der auf einem verknüpften Cloud-Speicherkonto als zwischengeschalteten Staging-Bereich beruht. Der Prozess ist wie folgt aufgebaut:

  • Campaign serialisiert ausgehende Daten als komprimierte CSV-Dateien.
  • Campaign lädt diese Dateien in das verknüpfte Cloud-Speicherkonto (Azure Blob oder S3) hoch.
  • Campaign gibt den Befehl Databricks KOPIEREN IN aus, der Databricks anweist, die bereitgestellten Dateien direkt aus dem Cloud-Speicher aufzunehmen.
  • Databricks liest die Dateien parallel mit nativer Geschwindigkeit.

Wenn kein verknüpftes Speicherkonto konfiguriert ist, kann Campaign diesen Massenladepfad nicht verwenden. Das System protokolliert die folgende Warnung:

Das für das Massenladen verwendete Speicherkonto wurde nicht gefunden. Verwenden Sie die standardmäßige Massenladestrategie

Diese Warnung wird im Administratorprotokoll des Workflows angezeigt. Nach dieser Warnung sendet Campaign INSERT-Anweisungen auf Zeilenebene über die ODBC-Verbindung. Jede Zeile erfordert einen separaten Netzwerk-Roundtrip zum DataBricks SQL Warehouse, was zu einer Leistung führt, die linear mit dem Datenvolumen abnimmt.

Dieses Fallback-Verhalten ist kein verschlechterter „langsamerer Modus“ - es ist nicht für Datenvolumen im Produktionsmaßstab geeignet. Sie existiert nur als letztes Mittel.

Durch Hinzufügen eines verknüpften Speicherkontos (Azure Blob oder AWS S3) zum externen Datenbricks-Konto wird dieses Leistungsproblem behoben. Wenn ein Speicherkonto konfiguriert ist, verwendet Campaign den Pfad IN Massen-Lade kopieren , den empfohlenen Datenaufnahmemechanismus von Databricks.

recommendation-more-help
experience-cloud-kcs-help-kbarticles