Passer au contenu principal
Procore

Connectez vos données Procore en téléchargeant des modèles analytiques (bêta)

Objectif

Connecter vos données Procore à un système de BI en téléchargeant des modèles Analytics par programme. 

Éléments à considérer

  • Exigences :
    • Python 3.6 ou supérieur installé sur votre système.
    • Fichier « config.share » reçu de Procore.
    • Les paquets Python nécessaires installés sur votre système.
    • Le script prend en charge à la fois PySpark et Python.
    • Si vous utilisez PySpark, assurez-vous d'avoir installé Spark 3.5.1 ou version ultérieure, Java et configuré la variable d'environnement SPARK_HOME.
    • Si vous utilisez Python et que l'emplacement cible est la base de données MSSQL, installez le pilote ODBC 17 pour SQL Server sur votre système.

Étapes

Télécharger le fichier d'identifiants

  1. Créez un fichier appelé « config.share.
  2. Ajoutez les champs ci-dessous :
    {
        « shareCredentialsTableaux » : 1,
        « bearerToken » : « ,
        « point de terminaison » : « »,
        « expirationTime » : «
    }
  3. Ajoutez les valeurs bearerToken, endpoint, shareCredentialsVersion et expirationTime reçues de Procore au fichier config.share.

Exécuter le script user_exp.py

Vous pouvez utiliser les scripts suivants pour créer un fichier config.yaml avec les configurations nécessaires. 

  • For Azure Storage:
    cron_job: #true/false
    run_as: #pyspark/python
    source_config:
      config_path: #path to the config.share file
      tables:
      - '' # table name if you want to download a specific table. Leave it empty if you want to download all tables
    source_type: delta_share
    target_config:
      auth_type: service_principal
      client_id: #client_id
      secret_id: #secret_id
      storage_account: #storage-account name
      storage_path: #<container>@<storage-account>.dfs.core.windows.net/<directory>
      tenant_id: #tenant_id
    target_type: azure_storage
  • Pour MSSQL DB:
    cron_job : #true/faux
    run_as : #pyspark/python
    source_config :
      config_path : #path au fichier config.share
      Tables:
        - Nom du tableau « » si vous souhaitez télécharger un tableau spécifique. Laissez-le vide si vous souhaitez télécharger tous les tableaux
    source_type : delta_share
    target_config :
      base de données : base de données #target
      hôte : #target hostname :port
      mot de passe : #password
      schéma : schéma #target (par défaut à Procore_analytique)
      nom d’utilisateur : #username
    target_type : sql_server

Exécuter en tant que PySpark

Si votre environnement est déjà configuré avec Spark, choisissez l'option « pyspark » lorsque vous y êtes invité ou une fois que le « config.yaml » est généré, vous pouvez exécuter les commandes suivantes pour télécharger les rapports dans le répertoire de données.

  • Pour écrire sur le stockage ADLS Gen2:
    spark-submit --packages io.delta:delta-share-spark_2.12:3.1.0,org.apache.hadoop:hadoop-azure:3.4.0,com.microsoft.azure:azure-storage:8.6.6, org.apache.hadoop:hadoop-common:3.4.0 --exclude-packages com.sun.xml.bind:jaxb-impl delta_share_to_sql_spark.py
  • Pour écrire dans la base de données MSSQL :
    spark-submit --paquets io.delta:delta-share-spark_2.12:3.1.0 --jars <Emplacement du bocal mssql-jdbc> delta_share_to_sql_spark.py

Exécuter en tant que Python

  1. À partir de la ligne de commande, accédez au dossier en saisissant la <path to the folder> commande « cd » .
  2. Installez les paquets requis à l’aide de « pip install -r exigences.txt » ou « python -m pip installez -r exigences.txt ».
  3. Ouvrez SSIS et créez un nouveau projet.
  4. Dans la boîte à outils SSIS , glisser-déposer Exécuter la tâche de processus.
  5. Double-cliquez sur Exécuter la tâche de processus.
  6. Accédez à l'onglet Processus.
  7. À côté de Exécutable, entrez le chemin de python.exe dans le dossier d'installation de Python.
  8. Dans Répertoire de travail, entrez le chemin du dossier contenant le script que vous souhaitez exécuter (sans le nom du fichier de script).
  9. Dans Arguments, entrez le nom du script delta_share_to_azure_panda.py que vous souhaitez exécuter avec la .py extension et cliquez sur Enregistrer.
  10. Cliquez sur Démarrer dans le menu du ruban supérieur.
  11. Pendant l'exécution de la tâche, la sortie de la console Python est affichée dans la fenêtre de la console externe.
  12. Une fois la tâche terminée, une coche s'affiche.

Choisissez votre propre méthode

Delta Sharing est un protocole ouvert de partage sécurisé de données. Vous pouvez trouver le référentiel public GitHub pour Delta Sharing à l' adresse https://github.com/delta-io/delta-share. Le référentiel comprend des exemples et de la documentation pour accéder aux données partagées à l'aide de divers langages tels que Python et Spark Connector (SQL, Python, Scala, Java, R).

Remarque
Assurez-vous de disposer des permissions et des droits d'accès appropriés pour télécharger les fichiers requis et exécuter les conteneurs Docker sur votre système. Suivez toujours les meilleures pratiques en matière de sécurité et les directives fournies par Procore lors du traitement des données sensibles et des informations d'identification.