Snowflake Connector for Google Analytics Aggregate Data-Datenaufnahmemodell

Der Snowflake Connector für Google Analytics Aggregate Data unterliegt den Nutzungsbedingungen für Konnektoren.

Dieses Thema beschreibt, wie Snowflake Connector for Google Analytics Aggregate Data Daten von Google Analytics Data API aufnimmt und wie sich Sampling auf die aufgenommenen Daten auswirken kann.

Strategie für die Datenaufnahme

Der Konnektor verwendet zwei Datenaufnahmemodi:

  • Das erste Laden von Daten erfolgt direkt nach der Konfiguration des Berichts. Das erfolgreiche Erstladen endet mit der Aufnahme von Daten von einem ausgewählten Startdatum bis zum heutigen Tag.

  • Das fortlaufende Laden von Daten beginnt nach Abschluss des ersten Ladens. Inkrementelle Aktualisierungen erfolgen nach einem gewählten, regelmäßigen Zeitplan.

Die Aufnahme der einzelnen Berichte ist ein unabhängiger Prozess. Datenaufnahmeprozesse können parallel durchgeführt werden.

Unter Datenaufnahme für Ihre Snowflake Connector for Google Analytics Aggregate Data-Instanz einrichten erfahren Sie, wie Sie einen Bericht konfigurieren oder einen Synchronisationszeitplan und ein Startdatum auswählen.

Wahl der Intervalllänge

Die Google Analytics Data API erfordert die Angabe des Datumsbereichs jeder Anfrage (startDate und endDate). Der Konnektor kann mehrere Anfragen während eines Datenaufnahmeworkloads stellen und die Intervalllänge nach Bedarf anpassen. Das Standardintervall beträgt 31 Tage. Das Intervall kann in den folgenden Situationen automatisch verkürzt werden:

  • Die API hat mit einem Fehler geantwortet, den der Konnektor durch einen erneuten Versuch der Anfrage mit einem kürzeren Intervall abmildern kann.

  • Die API hat mit Beispielen geantwortet (nur wenn bei der Konfiguration des Berichts die Option Sampling vermeiden gewählt wurde).

  • Der Bericht enthält eine große Menge an Daten. In diesem Fall wird das Intervall verkürzt, um das Risiko eines API-Fehlers beim Abrufen der nachfolgenden Ergebnisseiten zu verringern.

Der Benutzer kann die Intervalllänge nicht einstellen.

Überwachung der Datenaufnahme

Die Metadaten für die Datenaufnahme sind in der Ansicht CONNECTOR_STATS verfügbar. Mehr anzeigen: Überwachen des Snowflake Connector for Google Analytics Aggregate Data.

SELECT * FROM PUBLIC.CONNECTOR_STATS ORDER BY COMPLETED_AT DESC;
Copy

Die Spalte METADATA enthält u. a. den Body der Anfrage, die an die Google Analytics Data API gesendet wurde. Der Body der Anfrage enthält Informationen über startDate und endDate.

Die Spalte STATUS kann gleich einem der folgenden Werte sein:
  • COMPLETED – Die Datenaufnahme war erfolgreich.

  • CANCELED – Die Intervalllänge wurde verkürzt, und die Datenaufnahme wird mit angepassten Datumsbereichen fortgesetzt.

  • FAILED – Die Datenaufnahme scheiterte und wurde nicht fortgesetzt.

Bemerkung

FAILED bedeutet nicht unbedingt, dass die Daten verloren gegangen sind. Der Konnektor kann sich von einigen Fehlern erholen, indem er versucht, alle fehlenden Daten während der nächsten geplanten Berichtsaktualisierung herunterzuladen. Wenn die nachfolgenden Datenaufnahmedurchgänge erfolgreich waren, hat der Konnektor alle fehlenden Daten eingelesen.

Wenn Sie Benachrichtigungen über fehlgeschlagene Datenaufnahmedurchgänge per E-Mail erhalten möchten, richten Sie eine Einstellung für die Benachrichtigung ein. Mehr anzeigen: Snowflake Connector for Google Analytics Aggregate Data verwalten.

Über Sampling

Unter Sampling versteht man die Auswahl und Analyse einer Teilmenge von Daten aus einem größeren Datensatz, um das Ergebnis zu extrapolieren. Das bedeutet, dass Sampling die Qualität der Daten verringert. Die Datenqualität hängt von der Anzahl der verwendeten Stichproben ab. Weitere Informationen finden Sie unter Google Analytics Sampling.

Bemerkung

Standardmäßig versucht der Konnektor nicht, Sampling zu vermeiden. Diese Einstellung kann nur während der ersten Konfiguration des Berichts geändert werden.

Beschaffung von Metadaten für das Sampling

Die Spalte METADATA aus der Ansicht CONNECTOR_STATS enthält auch Metadaten für das Sampling. Sie kann mit den in einer Zieltabelle gespeicherten Daten verknüpft werden.

Verwenden Sie die folgende Anweisung, um Informationen über die Daten zu erhalten, die in der Stichprobe enthalten sind:

SELECT d.date, d.raw, d.last_update_date, cs.metadata:samplingMetadata:samplesReadCount::INTEGER as samplesReadCount, cs.metadata:samplingMetadata:samplingSpaceSize::INTEGER as samplingSpaceSize, samplesReadCount/samplingSpaceSize as ratio
FROM <destination_table> as d
LEFT JOIN <connector_stats_view> as cs
ON d.ingestion_run_id = cs.run_id
WHERE cs.metadata:samplingMetadata:samplingOccurred::BOOLEAN = true;
Copy

Ersetzen Sie die Platzhalter durch die tatsächlichen Werte, wie im folgenden Beispiel für einen Bericht namens REPORT_1.

SELECT d.date, d.raw, d.last_update_date, cs.metadata:samplingMetadata:samplesReadCount::INTEGER as samplesReadCount, cs.metadata:samplingMetadata:samplingSpaceSize::INTEGER as samplingSpaceSize, samplesReadCount/samplingSpaceSize as ratio
FROM google_analytics_aggregate_data_dest_db.google_analytics_aggregate_data_dest_schema.report_1__raw as d
LEFT JOIN snowflake_connector_for_google_analytics_aggregate_data.public.connector_stats as cs
ON d.ingestion_run_id = cs.run_id
WHERE cs.metadata:samplingMetadata:samplingOccurred::BOOLEAN = true;
Copy

Das Ergebnis enthält die folgenden Informationen über die Stichproben.

Name

Beschreibung

samplesReadCount

Die Gesamtzahl der Ereignisse, die in diesem Stichprobenbericht für einen Datumsbereich gelesen wurden.

samplingSpaceSize

Die Gesamtzahl der Ereignisse in den Daten dieser Eigenschaft, die in diesem Bericht für einen Datumsbereich hätten analysiert werden können.

ratio

Die Anzahl der analysierten Ereignisse im Verhältnis zu der Anzahl der Ereignisse, die hätten analysiert werden können.

Die Metadaten-Dokumentation zu Google Analytics Sampling bietet weitere Informationen über die Bedeutung der Sampling-Metadatenwerte.

Bemerkung

Metadaten über Datenaufnahmen, die vor dem Upgrade auf die Version 1.4.0 durchgeführt wurden, enthalten keine Informationen über das Vorkommen von Sampling. Es ist nur dann sicher, dass die Daten nicht gesampelt werden, wenn das Flag samplingOccurred gleich „false“ ist.