Shopify-Daten in BigQuery laden
Mit dem BigQuery Data Transfer Service für Shopify Connector können Sie Daten von Shopify in BigQuery laden. Mit dem BigQuery Data Transfer Service können Sie wiederkehrende Übertragungsjobs planen, mit denen Ihre neuesten Daten von Shopify zu BigQuery hinzugefügt werden.
Der Shopify-Connector unterstützt die Datenübertragung von GraphQL-basierten Ressourcen wie Collections und Orders aus den folgenden Ressourcen:
- Abobasierte Konten
- Partnerkonten
Beschränkungen
Shopify-Datenübertragungen unterliegen den folgenden Einschränkungen:
- Damit das
GiftCards-Objekt in die Datenübertragung einbezogen wird, muss das mit dieser Datenübertragung verknüpfte Konto ein ShopifyPlus-Abo haben. - Damit die folgenden Datenobjekte für App-Abos in die Datenübertragung einbezogen werden, muss die im Shopify-Shop installierte App eine Vertriebskanal-App sein.
AppSubscriptionLineItemsAppSubscriptionsProductResourceFeedbacks
- Wenn Sie die folgenden Shopify-Datenobjekte einbeziehen möchten, für die eine Rabattfunktion erforderlich ist, müssen Sie die Shopify-Befehlszeile verwenden, um eine Shopify-App zu erstellen.
DiscountsCodeAppDiscountsCodeBasic
Hinweis
In den folgenden Abschnitten werden die Voraussetzungen beschrieben, die Sie erfüllen müssen, bevor Sie eine Shopify-Datenübertragung erstellen.
Voraussetzungen für Shopify
- Sie benötigen ein Shopify-Konto und einen Shopify-Shop.
- Sie benötigen eine benutzerdefinierte Shopify-App für Ihren Shopify-Shop. Weitere Informationen finden Sie unter Benutzerdefinierte Apps.
- Sie müssen Zugriff auf den erforderlichen Bereich für das Shopify-Datenobjekt haben, das Sie nach BigQuery übertragen möchten. Eine Liste der erforderlichen Bereiche für jedes Objekt finden Sie unter Unterstützte Objekte und erforderliche Bereiche.
Voraussetzungen für BigQuery
- Überprüfen Sie, ob Sie alle erforderlichen Aktionen ausgeführt haben, damit Sie den BigQuery Data Transfer Service aktivieren können.
- Erstellen Sie ein BigQuery-Dataset zum Speichern Ihrer Daten.
Erforderliche BigQuery-Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle BigQuery-Administrator (roles/bigquery.admin) für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen einer BigQuery Data Transfer Service-Datenübertragung benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierte Rolle enthält die Berechtigungen, die zum Erstellen einer BigQuery Data Transfer Service-Datenübertragung erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen, um die notwendigen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind zum Erstellen einer BigQuery Data Transfer Service-Datenübertragung erforderlich:
-
Berechtigungen für BigQuery Data Transfer Service:
-
bigquery.transfers.update -
bigquery.transfers.get
-
-
BigQuery-Berechtigungen:
-
bigquery.datasets.get -
bigquery.datasets.getIamPolicy -
bigquery.datasets.update -
bigquery.datasets.setIamPolicy -
bigquery.jobs.create
-
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Weitere Informationen finden Sie unter bigquery.admin-Zugriff gewähren.
Wenn Sie Benachrichtigungen zur Übertragungsausführung für Pub/Sub einrichten möchten, benötigen Sie die IAM-Berechtigung (Identity and Access Management) pubsub.topics.setIamPolicy. Pub/Sub-Berechtigungen sind nicht erforderlich, wenn Sie nur E-Mail-Benachrichtigungen einrichten. Weitere Informationen finden Sie unter Ausführungsbenachrichtigungen im BigQuery Data Transfer Service.
Shopify-Datenübertragung einrichten
Fügen Sie Shopify-Daten zu BigQuery hinzu, indem Sie eine Übertragungskonfiguration mit einer der folgenden Optionen einrichten:
Console
Rufen Sie in der Google Cloud Console die Seite „Datenübertragungen“ auf.
Klicken Sie auf Übertragung erstellen.
Wählen Sie im Abschnitt Quelltyp als Quelle die Option Shopify aus.
Führen Sie im Abschnitt Details zur Datenquelle folgende Schritte aus:
- Geben Sie unter Shopname den Namen Ihres Shopify-Shops ein.
Wenn Ihre Händlerkonto-ID beispielsweise
storename.myshopify.comlautet, ist der Name Ihres Shopsstorename. - Geben Sie unter Client-ID und Clientschlüssel die Client-ID und den Clientschlüssel für Ihre Shopify-App ein. Weitere Informationen finden Sie unter Clientschlüssel.
- Klicken Sie unter Zu übertragende Shopify-Objekte auf Durchsuchen:
- Wählen Sie alle Objekte aus, die an das BigQuery-Ziel-Dataset übertragen werden sollen. Sie können in dieses Feld auch manuell alle Objekte eingeben, die in die Datenübertragung einbezogen werden sollen.
- Geben Sie unter Shopname den Namen Ihres Shopify-Shops ein.
Wenn Ihre Händlerkonto-ID beispielsweise
Wählen Sie im Abschnitt Zieleinstellungen als Dataset das Dataset aus, das Sie zum Speichern Ihrer Daten erstellt haben.
Geben Sie im Abschnitt Konfigurationsname für Übertragung als Anzeigename einen Namen für die Datenübertragung ein.
Im Abschnitt Zeitplanoptionen:
- Wählen Sie in der Liste Wiederholungshäufigkeit aus, wie oft diese Datenübertragung ausgeführt werden soll. Wenn Sie eine benutzerdefinierte Wiederholungshäufigkeit angeben möchten, wählen Sie Benutzerdefiniert aus. Wenn Sie On demand auswählen, wird diese Datenübertragung ausgeführt, wenn Sie die Übertragung manuell auslösen.
- Wählen Sie gegebenenfalls Jetzt starten oder Zu festgelegter Zeit starten aus und geben Sie ein Startdatum und eine Laufzeit an.
Optional: Gehen Sie im Abschnitt Benachrichtigungsoptionen so vor:
- Klicken Sie zum Aktivieren von E‑Mail-Benachrichtigungen auf den Ein/Aus-Button E‑Mail-Benachrichtigung. Wenn Sie diese Option aktivieren, erhält der Übertragungsadministrator eine E‑Mail-Benachrichtigung, falls ein Übertragungsvorgang fehlschlägt.
- Klicken Sie auf den Ein/Aus-Button Pub/Sub-Benachrichtigungen, um Pub/Sub-Benachrichtigungen über die Ausführung von Übertragungen für diese Übertragung zu aktivieren. Sie können Ihr Thema auswählen oder auf Thema erstellen klicken, um eines zu erstellen.
Klicken Sie auf Speichern.
bq
Geben Sie den Befehl bq mk ein und geben Sie das Flag --transfer_config für die Übertragungserstellung an.
bq mk --transfer_config --project_id=PROJECT_ID --data_source=DATA_SOURCE --display_name=NAME --target_dataset=DATASET --params='PARAMETERS'
Wobei:
- PROJECT_ID (optional): Ihre Google Cloud -Projekt-ID.
Wenn
--project_idnicht bereitgestellt wird, um ein bestimmtes Projekt anzugeben, wird das Standardprojekt verwendet. - DATA_SOURCE. Die Datenquelle –
shopify. - NAME: Der Anzeigename für die Datenübertragungskonfiguration. Der Übertragungsname kann ein beliebiger Wert sein, mit dem Sie die Übertragung identifizieren können, wenn Sie sie später ändern müssen.
- DATASET: Das Ziel-Dataset für die Übertragungskonfiguration.
PARAMETERS: die Parameter für die erstellte Übertragungskonfiguration im JSON-Format. Beispiel:
--params='{"param":"param_value"}'. Im Folgenden finden Sie die Parameter für eine Shopify-Datenübertragung:assets: der Pfad zu den Shopify-Objekten, die in BigQuery übertragen werden sollen.connector.shopName: der Name Ihres Shopify-Shops. Wenn Ihre Händlerkonto-ID beispielsweisestorename.myshopify.comlautet, ist der Name Ihres Shopsstorename.connector.authentication.accessToken: das Zugriffstoken für die Shopify Admin API.
Mit dem folgenden Befehl wird eine inkrementelle Shopify-Datenübertragung im Standardprojekt erstellt.
bq mk --transfer_config --target_dataset=mydataset --data_source=shopify --display_name='My Transfer' --params='{"assets": ["Orders"] "connector.shopName": "storename", "connector.authentication.accessToken":"sk_test_123456789"}'
Wenn Sie eine Datenübertragung außerhalb Ihres regulären Zeitplans manuell ausführen möchten, können Sie einen Backfill-Vorgang starten.
Unterstützte Objekte und erforderliche Bereiche
In der folgenden Tabelle sind die Shopify-Datenobjekte aufgeführt, die an BigQuery übertragen werden können, sowie die erforderlichen Bereiche für jedes Objekt.
| Datenobjekt | Erforderlicher Bereich | |
|---|---|---|
| AppFeedbacks | Kein Bereich erforderlich | |
| AppSubscriptionLineItems | Kein Bereich erforderlich | |
| AppSubscriptions | Kein Bereich erforderlich | |
| Kataloge | read_products oder read_product_listings |
|
read_publications |
||
| Sammlungen | read_products |
|
read_publications |
||
| Unternehmen | read_customers oder read_companies |
|
| CompanyContactRoleAssignments | read_customers oder read_companies |
|
| CompanyContacts | read_customers oder read_companies |
|
| CompanyLocations | read_customers oder read_companies |
|
| Kunden | read_customers |
|
write_customers |
||
read_customer_merge |
||
read_locations oder read_inventory |
||
read_markets |
||
read_orders |
||
| DeliveryProfiles | read_products |
|
read_shipping |
||
| DiscountsAutomaticApp | read_discounts |
|
| DiscountsAutomaticBasic | read_discounts |
|
| DiscountsAutomaticBxgy | read_discounts |
|
| DiscountsCodeApp | read_discounts |
|
| DiscountsCodeBasic | read_discounts |
|
| DiscountsCodeBxgy | read_discounts |
|
| DraftOrders | read_customers |
|
read_draft_orders |
||
read_orders |
||
read_payment_terms |
||
| Dateien | read_files |
|
| FulfillmentEvents | read_orders |
|
| FulfillmentOrders | read_locations |
|
read_orders |
||
read_assigned_fulfillment_orders oder read_merchant_managed_fulfillment_orders oder read_third_party_fulfillment_orders |
||
| Auftragsausführungen | read_fulfillments oder read_products |
|
read_locations |
||
read_orders |
||
| FulfillmentServices | read_locations oder read_inventory |
|
read_fulfillments oder read_products oder read_custom_fulfillment_services oder assigned_fulfillment_orders |
||
| FulfillmentTrackingInfo | read_fulfillments oder read_products |
|
read_locations |
||
read_orders |
||
| GiftCards | read_gift_cards |
|
read_orders |
||
read_customers |
||
| InventoryItems | read_inventory |
|
read_products |
||
| Standorte | read_locations |
|
read_fulfillments |
||
| Metafields_Article | read_content |
|
| Metafields_Blog | read_content |
|
| Metafields_Collection | read_products |
|
read_publications |
||
| Metafields_Customer | read_customers |
|
write_customers |
||
read_customer_merge |
||
read_locations oder read_inventory |
||
read_markets |
||
read_orders |
||
| Metafields_Draft_Order | read_customers |
|
read_draft_orders |
||
read_orders |
||
read_payment_terms |
||
| Metafields_Order | read_customers |
|
read_inventory |
||
read_locations |
||
read_orders |
||
read_payment_terms |
||
| Metafields_Page | read_content |
|
| Metafields_Product | read_products |
|
read_product_listings |
||
read_publications |
||
| Metafields_Selling_Plan | read_products |
|
| Metafields_Shop | Kein Bereich erforderlich | |
| Metafields_Variant | read_products |
|
read_shipping |
||
| OrderLineItems | read_orders |
|
read_products |
||
| OrderRiskAssessments | read_orders |
|
| Bestellungen | read_customers |
|
read_inventory |
||
read_locations |
||
read_orders |
||
read_payment_terms |
||
read_draft_orders |
||
read_products oder read_fulfillments |
||
| OrderTransactions | read_orders |
|
read_products |
||
| PriceLists | read_products |
|
| ProductMediaImages | read_products |
|
| ProductOptions | read_products |
|
| ProductOptionValues | read_products |
|
| ProductResourceFeedbacks | read_resource_feedbacks |
|
read_products |
||
| Produkte | read_products |
|
read_product_listings |
||
read_publications |
||
| ProductVariants | read_products |
|
read_shipping |
||
| Publikationen | read_products |
|
read_publications |
||
| Erstattungen | read_products |
|
read_orders |
||
read_returns |
||
| Rückgabe | read_orders |
|
read_returns |
||
| ScriptTags | read_script_tags |
|
| Segmente | read_customers |
|
| SellingPlanGroups | read_products |
|
| StorefrontAccessTokens | Kein Bereich erforderlich | |
| UrlRedirects | read_online_store_navigation |
Datentypzuordnung
In der folgenden Tabelle werden Shopify-Datentypen den entsprechenden BigQuery-Datentypen zugeordnet:
| Shopify-Datentyp | BigQuery-Datentyp |
|---|---|
String |
STRING |
Int |
INT64 |
Decimal |
NUMERIC |
Double |
FLOAT64 |
Long |
BIGNUMERIC |
Bool |
BOOL |
Datetime |
TIMESTAMP |
Preise
Während sich dieses Feature in der Vorabversion befindet, fallen keine Kosten für die Übertragung von Shopify-Daten in BigQuery an.
Fehler bei der Übertragungseinrichtung beheben
Unterstützung bei Problemen mit der Einrichtung von Datenübertragungen finden Sie unter Shopify-Übertragungsprobleme.
Nächste Schritte
- Eine Übersicht über den BigQuery Data Transfer Service finden Sie unter Was ist BigQuery Data Transfer Service?.
- Informationen zum Verwenden von Übertragungen, einschließlich des Abrufs von Informationen zu einer Übertragungskonfiguration, des Auflistens von Übertragungskonfigurationen und des Aufrufs des Ausführungsverlaufs der Übertragung finden Sie unter Übertragungen verwalten.