Aller au contenu principal

Ingérer des données à partir de Zoho CRM

info

Bêta

Cette fonctionnalité est en Bêta. Pour l’utiliser, un administrateur de workspace doit activer Lakeflow Connect for Zoho CRM à partir de la page Previews . Consultez Gérer les aperçus Databricks.

Cette page montre comment créer un pipeline d’ingestion Zoho CRM managé avec Lakeflow Connect.

Exigences​

  • Pour créer un pipeline d’ingestion, veuillez d’abord satisfaire aux exigences suivantes :

    • Votre Workspace doit être activé pour Unity Catalog.

    • Le compute serverless doit être activé pour votre workspace. Voir Conditions requises pour le compute serverless.

    • Pour créer une nouvelle connexion, vous devez disposer des privilèges CREATE CONNECTION sur le metastore. Consultez Gérer les privilèges dans Unity Catalog.

      Si le connecteur prend en charge la création de pipelines basée sur l’interface utilisateur, un administrateur peut créer la connexion et le pipeline en même temps en suivant les étapes décrites sur cette page. Toutefois, si les utilisateurs qui créent des pipelines utilisent la création de pipelines basée sur l’API ou ne sont pas des utilisateurs administrateurs, un administrateur doit d’abord créer la connexion dans l’Explorateur de catalogue. Voir Se connecter à des sources d’ingestion gérées.

    • Pour utiliser une connexion existante, vous devez avoir des privilèges USE CONNECTION ou ALL PRIVILEGES sur l'objet de connexion.

    • Vous devez avoir les privilèges USE CATALOG sur le catalogue cible.

    • Vous devez avoir les privilèges USE SCHEMA et CREATE TABLE sur un schéma existant ou les privilèges CREATE SCHEMA sur le catalogue cible.

  • Pour ingérer depuis Zoho CRM, configurez d'abord l'authentification depuis Databricks et créez une connexion. Voir Configurer l'authentification auprès de Zoho CRM et Créer une connexion Zoho CRM.

Options de connecteur​

Définissez des options de portée de pipeline dans source_configurations. Voir Exemples pour l’utilisation.

Option

Portée

Obligatoire

S'applique à

Description

start_datetime

Pipeline

Oui

Toutes les tables incrémentielles

La date et l'heure les plus anciennes à partir desquelles ingérer les données, au format yyyy-MM-ddTHH:mm:ssXXX (par exemple, 2024-01-01T00:00:00+00:00). S'applique uniquement à la première synchronisation de chaque table ; les synchronisations ultérieures reprennent à partir du curseur stocké.

Option

Portée

Obligatoire

S'applique à

Description

start_datetime

Pipeline

Oui

Toutes les tables incrémentielles

La date et l'heure les plus anciennes à partir desquelles ingérer les données, au format yyyy-MM-ddTHH:mm:ssXXX (par exemple, 2024-01-01T00:00:00+00:00). S'applique uniquement à la première synchronisation de chaque table ; les synchronisations ultérieures reprennent à partir du curseur stocké.

Créer un pipeline d'ingestion​

Pour obtenir la liste des tables sources prises en charge, consultez la section Tables sources prises en charge.

Utilisez les Declarative Automation Bundles pour gérer les pipelines Zoho CRM en tant que code. Les bundles peuvent contenir des définitions YAML de Jobs et de tâches, sont gérés à l'aide de la CLI Databricks et peuvent être partagés et exécutés dans différents Workspace cibles (tels que le développement, la pré-production et la production). Pour plus d'informations, consultez Que sont les Declarative Automation Bundles ?.

  1. Créer un bundle à l’aide de la CLI Databricks :

    Bash
    databricks bundle init
  2. Ajoutez deux nouveaux fichiers de ressources au bundle :

    • Fichier de définition de pipeline (par exemple, resources/zoho_crm_pipeline.yml). Voir pipeline.ingestion_definition et Exemples.
    • Un fichier de définition de job qui contrôle la fréquence d’ingestion de données (par exemple, resources/zoho_crm_job.yml).
  3. Déployer le pipeline à l'aide de la CLI Databricks :

    Bash
    databricks bundle deploy

Exemples​

Le connecteur Zoho CRM rend disponibles ses tables sources dans le schéma source default. Ingérer des tables individuelles ou la totalité du schéma. Chaque pipeline doit définir start_datetime.

Ingérer des tables spécifiques​

Utilisez cette option pour ingérer un sous-ensemble spécifique de tables ou pour personnaliser le nommage des destinations pour chaque table.

Le fichier de définition de pipeline suivant ingère des tables Zoho CRM individuelles :

YAML
resources:
pipelines:
zoho_crm_pipeline:
name: zoho_crm_pipeline
catalog: 'main'
target: 'zoho_crm_data'
ingestion_definition:
connection_name: zoho_crm_connection
source_configurations:
- api_source_connector_config:
configs:
start_datetime: '<start-datetime>'
objects:
- table:
source_schema: 'default'
source_table: 'leads'
destination_catalog: 'main'
destination_schema: 'zoho_crm_data'
destination_table: 'leads'
- table:
source_schema: 'default'
source_table: 'contacts'
destination_catalog: 'main'
destination_schema: 'zoho_crm_data'
destination_table: 'contacts'
- table:
source_schema: 'default'
source_table: 'deals'
destination_catalog: 'main'
destination_schema: 'zoho_crm_data'
destination_table: 'deals'

Ingérer tout le schéma​

Utilisez cette option pour ingérer toutes les tables sources Zoho CRM, y compris les tables de modules personnalisées, dans un schéma de destination unique avec une seule déclaration.

Le fichier de définition de pipeline suivant ingère toutes les tables Zoho CRM prises en charge dans un schéma de destination :

YAML
resources:
pipelines:
zoho_crm_pipeline:
name: zoho_crm_pipeline
catalog: 'main'
target: 'zoho_crm_data'
ingestion_definition:
connection_name: zoho_crm_connection
source_configurations:
- api_source_connector_config:
configs:
start_datetime: '<start-datetime>'
objects:
- schema:
source_schema: 'default'
destination_catalog: 'main'
destination_schema: 'zoho_crm_data'

Fichier de définition de job Declarative Automation Bundles​

Voici un exemple de fichier de définition de job à utiliser avec Declarative Automation Bundles. Le job s'exécute quotidiennement.

YAML
resources:
jobs:
zoho_crm_job:
name: zoho_crm_job
schedule:
quartz_cron_expression: '0 0 0 * * ?'
timezone_id: 'UTC'
tasks:
- task_key: zoho_crm_ingestion
pipeline_task:
pipeline_id: ${resources.pipelines.zoho_crm_pipeline.id}

Modèles courants​

Pour les configurations de pipeline avancées, voir Modèles courants pour les pipelines d’ingestion gérés.

Étapes suivantes​

Start, planifiez et définissez des alertes sur votre pipeline. Voir Tâches de maintenance courantes du pipeline.

Ressources supplémentaires​