Carga datos de Shopify en BigQuery
Puedes cargar datos de Shopify a BigQuery con el Servicio de transferencia de datos de BigQuery para Shopify. Con el Servicio de transferencia de datos de BigQuery, puedes programar trabajos de transferencia recurrentes que agreguen tus datos más recientes de Shopify a BigQuery.
El conector de Shopify admite la transferencia de datos de recursos basados en GraphQL, como Collections y Orders, desde los siguientes recursos:
- Cuentas basadas en suscripciones
- Cuentas de socios
Limitaciones
Las transferencias de datos de Shopify están sujetas a las siguientes limitaciones:
- Para incluir el objeto
GiftCardsen la transferencia de datos, la cuenta asociada con esta transferencia de datos debe tener una suscripción a ShopifyPlus. - Para incluir los siguientes objetos de datos de suscripción a la app en la transferencia de datos,
la app instalada en la tienda de Shopify debe ser una app de canal de ventas.
AppSubscriptionLineItemsAppSubscriptionsProductResourceFeedbacks
- Para incluir los siguientes objetos de datos de Shopify que requieren una
función de descuento, debes
usar la CLI de Shopify
para crear una app de Shopify.
DiscountsCodeAppDiscountsCodeBasic
Antes de comenzar
En las siguientes secciones, se describen los requisitos previos que debes cumplir antes de crear una transferencia de datos de Shopify.
Requisitos previos de Shopify
- Debes tener una cuenta y una tienda de Shopify.
- Debes tener una app personalizada de Shopify para tu tienda de Shopify. Para obtener más información, consulta Apps personalizadas.
- Debes tener acceso a todos los alcances de acceso requeridos. Para obtener una lista de todos los alcances de acceso requeridos, consulta Alcances de acceso autenticados.
Requisitos previos de BigQuery
- Verifica si completaste todas las acciones necesarias para habilitar el Servicio de transferencia de datos de BigQuery
- Crea un conjunto de datos de BigQuery para almacenar tus datos.
Roles de BigQuery requeridos
Para obtener los permisos que
necesitas para crear una transferencia de datos del Servicio de transferencia de datos de BigQuery,
pídele a tu administrador que te otorgue el
rol de IAM de administrador de BigQuery (roles/bigquery.admin) en tu proyecto.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene los permisos necesarios para crear una transferencia de datos del Servicio de transferencia de datos de BigQuery. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para crear una transferencia de datos del Servicio de transferencia de datos de BigQuery:
-
Permisos del Servicio de transferencia de datos de BigQuery:
-
bigquery.transfers.update -
bigquery.transfers.get
-
-
Permisos de BigQuery:
-
bigquery.datasets.get -
bigquery.datasets.getIamPolicy -
bigquery.datasets.update -
bigquery.datasets.setIamPolicy -
bigquery.jobs.create
-
También puedes obtener estos permisos con roles personalizados o otros roles predefinidos.
Para obtener más información, consulta Cómo otorgar acceso a bigquery.admin.
Si quieres configurar las notificaciones de ejecución de transferencias para Pub/Sub, asegúrate de tener el permiso de Identity and Access Management (IAM) pubsub.topics.setIamPolicy. Los permisos de Pub/Sub no son necesarios si solo configuras las notificaciones por correo electrónico. Para obtener más información, consulta la sección sobre
notificaciones de ejecución del Servicio de transferencia de datos de BigQuery.
Configura una transferencia de datos de Shopify
Agrega datos de Shopify a BigQuery configurando una transferencia con una de las siguientes opciones:
Console
Ve a la página Transferencia de datos en la Google Cloud consola.
Haz clic en Crear transferencia.
En la sección Tipo de fuente, en Fuente, elige Shopify.
En la sección Detalles de fuente de datos, haz lo siguiente:
- En Nombre de la tienda, ingresa el nombre de tu tienda de Shopify.
Por ejemplo, si el ID de tu cuenta de comerciante es
storename.myshopify.com, el nombre de tu tienda esstorename. - En ID del cliente y Secreto del cliente, ingresa el ID y el secreto del cliente para tu app de Shopify. Para obtener más información, consulta Acerca de los secretos del cliente.
- En Objetos de Shopify para transferir, haz clic en Browse:
- Selecciona los objetos que se transferirán al conjunto de datos de destino de BigQuery. También puedes ingresar de forma manual los objetos que se incluirán en la transferencia de datos en este campo.
- En Nombre de la tienda, ingresa el nombre de tu tienda de Shopify.
Por ejemplo, si el ID de tu cuenta de comerciante es
En la sección Configuración de destino, en Conjunto de datos, elige el conjunto de datos que creaste para almacenar tus datos.
En la sección Nombre de configuración de la transferencia (Transfer config name), en Nombre visible (Display name), ingresa un nombre para la transferencia de datos.
En la sección Opciones de programación, haz lo siguiente:
- En la lista Frecuencia de repetición, selecciona una opción para especificar la frecuencia con la que se ejecuta esta transferencia de datos. Para especificar una frecuencia de repetición personalizada, selecciona Personalizado. Si seleccionas Según demanda, esta transferencia se ejecuta cuando activas la transferencia de forma manual.
- Si corresponde, selecciona Comenzar ahora o Comenzar a la hora definida y detalla una fecha de inicio y una hora de ejecución.
Opcional: En la sección Opciones de notificación, haz lo siguiente:
- Para habilitar las notificaciones por correo electrónico, haz clic en el botón de activar o desactivar Notificación por correo electrónico. Si habilitas esta opción, el administrador de transferencias recibirá una notificación por correo electrónico cuando falle la ejecución de una transferencia.
- Si quieres habilitar las notificaciones de ejecución de transferencias de Pub/Sub para esta transferencia, haz clic en el botón de activar Notificaciones de Pub/Sub. Puedes seleccionar el nombre del tema o hacer clic en Crear un tema para crear uno.
Haz clic en Guardar.
bq
Ingresa el comando bq mk y suministra la marca de creación de transferencias --transfer_config.
bq mk --transfer_config --project_id=PROJECT_ID --data_source=DATA_SOURCE --display_name=NAME --target_dataset=DATASET --params='PARAMETERS'
Aquí:
- PROJECT_ID (opcional): Es el ID de tu Google Cloud proyecto.
Si no se proporciona
--project_idpara especificar un proyecto en particular, se usa el proyecto predeterminado. - DATA_SOURCE: La fuente de datos:
shopify. - NAME: el nombre visible de la configuración de transferencia de datos. El nombre de la transferencia puede ser cualquier valor que te permita identificarla con facilidad si es necesario hacerle modificaciones más tarde.
- DATASET es el conjunto de datos de destino para la configuración de transferencia.
PARAMETERS son los parámetros de la configuración de transferencia creada en formato JSON. Por ejemplo:
--params='{"param":"param_value"}'. Los siguientes son los parámetros para una transferencia de datos de Shopify:assets: la ruta de acceso a los objetos de Shopify que se transferirán a BigQuery.connector.shopName: el nombre de tu tienda de Shopify. Por ejemplo, si el ID de tu cuenta de comerciante esstorename.myshopify.com, el nombre de tu tienda esstorename.connector.authentication.accessToken: el token de acceso a la API de administrador de Shopify.
El siguiente comando crea una transferencia de datos incremental de Shopify en el proyecto predeterminado.
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"}'
Para ejecutar manualmente una transferencia de datos fuera de tu programación habitual, puedes iniciar una ejecución de reabastecimiento.
Tablas compatibles
El conector de Shopify admite los siguientes objetos de datos:
AppFeedbacksAppSubscriptionLineItems(requiere una app de canal de ventas)AppSubscriptions(requiere una app de canal de ventas)CatalogsCollectionsCompaniesCompanyContactRoleAssignmentsCompanyContactsCompanyLocationsCustomersDeliveryProfilesDiscountsAutomaticApp(requiere una función de descuento)DiscountsAutomaticBasic(requiere una función de descuento)DiscountsAutomaticBxgyDiscountsCodeAppDiscountsCodeBasicDiscountsCodeBxgyDraftOrdersFilesFulfillmentEventsFulfillmentOrdersFulfillmentsFulfillmentServicesFulfillmentTrackingInfoGiftCards(requiere una suscripción a ShopifyPlus)InventoryItemsLocationsMetafieldobjetos, comometafield_productometafield_order.OrderRiskAssessmentsOrdersOrderTransactionsPriceListsProductMediaImagesProductOptionsProductOptionValuesProductResourceFeedbacks(requiere una app de canal de ventas)ProductsProductVariantsPublicationsRefundsReturnsScriptTagsSegmentsSellingPlanGroupsStorefrontAccessTokensUrlRedirects
Asignación de tipos de datos
En la siguiente tabla, se asignan los tipos de datos de Shopify a los tipos de datos de BigQuery correspondientes:
| Tipo de datos de Shopify | Tipo de datos de BigQuery |
|---|---|
String |
STRING |
Int |
INT64 |
Decimal |
NUMERIC |
Double |
FLOAT64 |
Long |
BIGNUMERIC |
Bool |
BOOL |
Datetime |
TIMESTAMP |
Precios
No se aplican costos por transferir datos de Shopify a BigQuery mientras esta función está en vista previa.
Soluciona problemas con la configuración de una transferencia
Si tienes problemas para configurar tu transferencia de datos, consulta Problemas de transferencia de Shopify.
¿Qué sigue?
- Si deseas obtener una descripción general del Servicio de transferencia de datos de BigQuery, consulta ¿Qué es el Servicio de transferencia de datos de BigQuery?.
- Para obtener información sobre el uso de las transferencias (por ejemplo, cómo obtener información sobre una configuración de transferencia, mostrar distintas configuraciones o visualizar su historial de ejecuciones), consulta Manejar transferencias.