Zugriff auf Daten, die vom Snowflake Connector for Google Analytics Raw Data erfasst wurden¶
Unter diesem Thema wird beschrieben, wie Sie über Ihr Snowflake-Konto auf Rohdaten in Google Analytics zugreifen können.
Unter diesem Thema:
Für jede Eigenschaft in BigQuery, die für die Synchronisierung konfiguriert ist, erstellt der Snowflake Connector for Google Analytics Raw Data Folgendes:
Die Tabelle
ANALYTICS_propertyId
mit demselben Namen wie der Eigenschaftsname. Diese Tabelle enthält die täglichen Rohdaten. Jeder Datensatz in der Tabelle wird in einer separaten Zeile gespeichert, und die Google Analytics-Ereignisdaten werden in einer einzigen Spalte vom Typ VARIANT gespeichert.Die Ansicht
ANALYTICS_propertyId__VIEW
, die die Ereignisdaten aus der obigen Tabelle in einzelne Spalten aufteilt.Die Tabelle
ANALYTICS_INTRADAY_propertyId
mit demselben Namen wie der Eigenschaftsname. Diese Tabelle enthält die Intraday-Rohdaten.Die Ansicht
ANALYTICS_INTRADAY_propertyId__VIEW
, die die Intraday-Ereignisdaten aus der obigen Tabelle in separate Spalten aufteilt.
Der temporäre Eigentümer der obigen Tabellen und Ansichten ist der Snowflake Connector for Google Analytics Raw Data. Die Eigentümerschaft sollten während der Deinstallation des Konnektors übertragen werden. Informationen dazu finden Sie unter Deinstallieren und Neuinstallieren des Snowflake Connector for Google Analytics Raw Data.
In den folgenden Abschnitten wird erläutert, wie Sie die Berechtigungen für den Zugriff auf diese Daten erteilen und wie Sie auf die Daten dieser Tabellen und Ansichten zugreifen können.
Erteilen von Berechtigungen für den Zugriff auf die Google Analytics-Daten in Snowflake¶
Nachdem der Snowflake Connector for Google Analytics Raw Data die Daten mit Snowflake synchronisiert hat, können Sie mit data_owner_role
auf die Daten zugreifen oder mit einer beliebigen andere Rolle, wenn diese die beiden folgenden Bedingungen erfüllt:
Hat USAGE-Berechtigung für die Datenbank und das Schema, die die Daten enthalten, die vom Snowflake Connector for Google Analytics Raw Data erfasst werden.
Ist die Anwendungsrolle DATA_READER zugewiesen, die über die SELECT-Berechtigung für Tabellen oder Ansichten in diesem Schema verfügt.
Wenn Sie beispielsweise den Snowflake Connector for Google Analytics Raw Data so konfiguriert haben, dass er die -Daten in der Datenbank dest_db
und im Schema dest_schema
speichert, können Sie die Rolle google_analytics_raw_data_reader_role
erstellen und dieser Rolle die Berechtigungen für den Zugriff auf die Daten erteilen.
Das folgende Beispiel zeigt, wie Sie diese Berechtigungen erteilen:
CREATE ROLE google_analytics_raw_data_reader_role; GRANT USAGE ON DATABASE dest_db TO ROLE google_analytics_raw_data_reader_role; GRANT USAGE ON SCHEMA dest_db.dest_schema TO ROLE google_analytics_raw_data_reader_role; GRANT APPLICATION ROLE SNOWFLAKE_CONNECTOR_FOR_GOOGLE_ANALYTICS_RAW_DATA.DATA_READER TO ROLE google_analytics_raw_data_reader_role;
Zugriff auf die Rohdaten¶
Für jede BigQuery-Tabelle, die Sie synchronisieren, erstellt der Snowflake Connector for Google Analytics Raw Data in Snowflake in der Datenbank und dem Schema, die zum Speichern des Snowflake Connector for Google Analytics Raw Data verwendet werden, eine neue Tabelle mit demselben Namen.
Wenn Sie beispielsweise den Konnektor so konfiguriert haben, dass die Daten in der Datenbank dest_db
und im Schema dest_schema
gespeichert werden und der Zugriff über die Rolle my_role
erfolgt, und wenn Sie den Konnektor so konfiguriert haben, dass die Tabelle analytics_12345
in BigQuery synchronisiert wird, erstellt der Konnektor die Tabelle dest_db.dest_schema.analytics_12345
.
Diese Tabelle enthält Rohdaten, die von BigQuery erfasst wurden. Die Tabelle enthält folgende Spalten:
Spaltenname |
Datentyp |
Beschreibung |
---|---|---|
|
VARIANT |
Die unformatierten Daten des Datensatzes. |
|
VARIANT |
ID des asynchronen Prozesses, der die Daten erfasst hat. |
|
DATE |
Name der Tagestabelle, aus der der Konnektor die Daten in die Tabelle aufgenommen hat. |
|
BOOLEAN |
„True“, wenn der Konnektor alle Daten aus der Tagestabelle aufgenommen hat, „false“, wenn ein Teil der Daten noch heruntergeladen wird. |
Es folgt ein Beispiel für die Ausgabe einer SELECT-Anweisung, die die Daten der Tabelle dest_db.dest_schema.analytics_12345
abruft:
SELECT * FROM DEST_DB.DEST_SCHEMA.ANALYTICS_12345 LIMIT 5; +---------------------------+--------------------------------------+--------------------+--------------------+ | RAW | RUN_ID | SOURCE_TABLE_DATE | INGESTION_COMPLETE | +---------------------------+--------------------------------------+--------------------+--------------------+ | { "app_info": null, ... } | f8edbf0e-1d0d-4ff5-9e5c-0e114b1fc44a | 2023-06-13 | TRUE | | { "app_info": null, ... } | f8edbf0e-1d0d-4ff5-9e5c-0e114b1fc44a | 2023-06-13 | TRUE | | { "app_info": null, ... } | f8edbf0e-1d0d-4ff5-9e5c-0e114b1fc44a | 2023-06-13 | TRUE | | { "app_info": null, ... } | d949ab70-6a7e-47a5-b876-d7e33d701b0d | 2023-06-14 | FALSE | | { "app_info": null, ... } | d949ab70-6a7e-47a5-b876-d7e33d701b0d | 2023-06-14 | FALSE | +---------------------------+--------------------------------------+--------------------+--------------------+
Zugriff auf die vereinfachten Daten¶
Der Konnektor erstellt für jede Tabelle, die Daten enthält, eine vereinfachte Ansicht der Rohdaten (Flattening). Der Name der Ansicht ist der Name der Tabelle mit dem Suffix __view
. So erstellt beispielsweise der Konnektor für die Tabelle namens analytics_12345
eine Ansicht namens dest_db.dest_schema.analytics_12345__view
.
Bemerkung
Es gibt keine Ansichten für Zeilen, bei denen ingestion_complete
den Wert FALSE
hat.
Das folgende Beispiel zeigt die Ausgabe einer SELECT-Anweisung, die die Daten aus der Ansicht dest_db.dest_schema.analytics_12345__view
abruft. In diesem Beispiel hat die Tabelle analytics_12345
die VARIANT
-Spalte raw
mit den Werten EVENT_DATE
, EVENT_TIMESTAMP
, EVENT_NAME
und EVENT_PREVIOUS_TIMESTAMP
.
USE ROLE MY_ROLE; SELECT EVENT_DATE, EVENT_TIMESTAMP, EVENT_NAME, EVENT_PREVIOUS_TIMESTAMP FROM DEST_DB.DEST_SCHEMA.ANALYTICS_12345__VIEW LIMIT 5; +------------+--------------------------+-------------------+--------------------------+ | EVENT_DATE | EVENT_TIMESTAMP | EVENT_NAME | EVENT_PREVIOUS_TIMESTAMP | +------------+--------------------------+-------------------+--------------------------+ | 2023-06-13 | 2023-06-13 18:27:20.775 | "page_view" | null | | 2023-06-13 | 2023-06-13 18:27:25.960 | "user_engagement" | null | | 2023-06-13 | 2023-06-13 19:26:49.130 | "scroll" | null | | 2023-06-13 | 2023-06-13 18:27:51.135 | "page_view" | null | | 2023-06-13 | 2023-06-13 18:27:56.343 | "user_engagement" | null | +------------+--------------------------+-------------------+--------------------------+