Saltar al contenido principal
Procore

Conecte sus datos de Procore descargando modelos de Análisis (Beta)

Objetivo

Conectar sus datos de Procore a un sistema BI descargando modelos Analytics de forma programática. 

Aspectos para tener en cuenta

  • Requerimientos:
    • Python 3.6 o superior instalado en su sistema.
    • Archivo "config.share" recibido de Procore.
    • Los paquetes de Python necesarios instalados en su sistema.
    • El script admite tanto PySpark como Python.
    • Si está utilizando PySpark, asegúrese de haber instalado Spark 3.5.1 o posterior, Java y configuró la variable de entorno SPARK_HOME.
    • Si está utilizando Python y la ubicación de destino se MSSQL DB, instale el controlador ODBC 17 para SQL Server en su sistema.

Pasos

Descargar archivo de credenciales

  1. Cree un archivo llamado 'config.share.
  2. Agregue los campos a continuación:
    {
        "shareCredentialsVersion": 1,
        "portadorToken": "",
        "extremo": "",
        "expiraciónTime": ""
    }
  3. Agregue el portadorToken, el extremo, shareCredentialsVersion y los valores de expiración recibidos de Procore al archivo config.share.

Ejecutar user_exp.py script

Puede utilizar los siguientes scripts para crear un archivo config.yaml con las configuraciones necesarias. 

  • Para Azure Storage:
    cron_job: #true/falso
    run_as: #pyspark/python
    source_config:
      config_path: #path al archivo config.share
      Mesas:
      - Nombre de la tabla "" si desea descargar una tabla específica. Déjalo vacío si quieres descargar todas las tablas
    source_type: delta_share
    target_config:
      auth_type: service_principal
      client_id:
      N° client_id secret_id: N° secret_id
      storage_cuenta: nombre #storage cuenta
      storage_path: #<container>@<storage-account>.dfs.core.windows.net/<directory>
      tenant_id: N° tenant_id
    target_type: azure_storage
  • Para MSSQL base de datos:
    cron_job: #true/falso
    run_as: #pyspark/python
    source_config:
      config_path: #path al archivo config.share
      Mesas:
        - Nombre de la tabla "" si desea descargar una tabla específica. Déjalo vacío si quieres descargar todas las tablas
    source_type: delta_share
    target_config:
      base de datos: base de datos #target
      host: #target nombre de host:port
      contraseña: #password
      esquema: #target esquema (predeterminado para procore_analytics)
      nombre de usuario: #username
    target_type: sql_server

Ejecutar como PySpark

Si su entorno ya está configurado con Spark, elija la opción 'pyspark' cuando se solicita o una vez que se genera la 'config.yaml', puede ejecutar los siguientes comandos para descargar los reportes en el directorio de datos.

  • Para escribir en almacenamiento de ADLS Gen2:
    spark-submit --packages io.delta-sharing-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 --exclusion-paquetes com.sun.xml.jaxb-impl delta_share_to_sql_spark.py
  • Para escribir para MSSQL DB:
    spark-submit --packages io.delta:delta-sharing-spark_2.12:3.1.0 --jars <Ubicación de mssql-jdbc jar> delta_share_to_sql_spark.py

Ejecutar como Python

  1. Desde la línea de comandos, navegue hasta la carpeta ingresando el <path to the folder> comando "CD ".
  2. Instale paquetes requeridos usando "instalación de pip -r requirements.txt" o "python -m pip instala -r requirements.txt".
  3. Abra SSIS y cree un nuevo proyecto.
  4. Desde la caja de herramientas SSIS arrastrar y soltar ejecutar tarea de proceso.
  5. Haga doble clic en Ejecutar tarea de proceso.
  6. Vaya a la pestaña Proceso.
  7. Junto a Ejecutable, ingrese la ruta a python.exe en la carpeta de instalación de Python.
  8. En WorkingDirectory, ingrese la ruta a la carpeta que contiene el script que desea ejecutar (sin el nombre del archivo de script).
  9. En argumentos, ingrese el nombre del script delta_share_to_azure_panda.py desea ejecutar con la .py extensión y haga clic en Guardar.
  10. Haga clic en Iniciar en el menú de cinta de opciones superior.
  11. Durante la ejecución de la tarea, la salida de la consola de Python se muestra en la ventana de consola externa.
  12. Una vez que se haga la tarea, se mostrará un marca de verificación.

Elija su propio método

Delta Sharing es un protocolo abierto para compartir datos seguros. Puedes encontrar el repositorio público de GitHub para Compartir en https://github.com/delta-io/delta-sharing. El repositorio incluye ejemplos y documentación para acceder a datos compartidos utilizando varios idiomas, como Python y Spark Connector (SQL, Python, Scala, Java, R).

 Nota:
Asegúrese de tener permisos y derechos de acceso adecuados para descargar los archivos requeridos y ejecutar contenedores Docker en su sistema. Siempre siga los mejores prácticas y las pautas de seguridad proporcionadas por Procore al manejar datos y credenciales confidenciales.