Saltar al contenido principal
Procore

Exportar a ADLS mediante Spark

Descripción general

Esta guía proporciona instrucciones detalladas para configurar y usar el paquete de integración Delta Sharing en un sistema operativo Windows para integrar sin problemas los datos en sus flujos de trabajo con Procore Analytics. El paquete admite múltiples opciones de ejecución, lo que le permite elegir la configuración y el método de integración que desee.

Requisitos previos

Asegúrese de tener lo siguiente antes de continuar:

  • SKU de Procore Analytics 2.0
  • Archivo pofile de uso compartido de Delta:
    Obtenga el archivo *.share que contiene las credenciales de uso compartido delta. Para mayor comodidad, cópielo en el directorio de paquetes.
  • Entorno Python: Instale Python 3 y pip en su sistema.

 

Pasos

Preparar el paquete

  1. Cree un nuevo archivo denominado config.share con sus credenciales de Delta Share en formato JSON.

{
"shareCredentialsVersion": 1,
"bearerToken": "xxxxxxxxxxxxx",
"endpoint": "[1]"

  1. Obtener campos obligatorios.
    Nota: Estos detalles se pueden obtener de la aplicación web Procore Analytics.
    • ShareCredentialsVersion: número de versión (actualmente 1).
    • BearerToken: Su token de acceso a Delta Share.
    • Punto de conexión: la URL del punto de conexión de Delta Share.
  2. Descargue y extraiga el paquete.
  3. Descomprima el paquete en un directorio de su elección.
  4. Copie el archivo de perfil *.share Delta Sharing en el directorio del paquete para facilitar el acceso.
    analytics-sql-windows2.png

Instalar dependencias

  1. Abra una terminal en el directorio de paquetes.
  2. Ejecute el siguiente comando para instalar las dependencias:
  3. pip install -r requirements.txt

Generar configuración

  1. Genere el archivo config.yaml ejecutando python user_exp.py:
    Este script ayuda a generar el archivo config.yaml que contiene las credenciales y la configuración necesarias.
  2. Al configurar la fuente de datos, se le pedirá que proporcione:
    • Lista de tablas (separadas por comas).
    • Dejar en blanco para sincronizar todas las tablas.
      Ejemplo: 'tabla1, tabla2, tabla3'.
    • Ruta a su 'config.share' archivo.
  3. Por primera vez, proporcionará sus credenciales, como la ubicación de configuración de origen de Delta Share, las tablas, la base de datos, el host, etc.
    Nota: Después, puede reutilizar o actualizar la configuración manualmente o mediante el user_exp.py python en ejecución nuevamente.

Configurar cron jobs y ejecución inmediata (opcional)

  1. Decida si desea configurar un cron job para su ejecución automática.
  2. Proporcione un cron schedule:
    • Formato: * * * * * ( minuto, hora, día del mes, mes, día de la semana).
    • Ejemplo de ejecución diaria a las 2 de la madrugada: 0 2 * * *
    • Para verificar los registros de programación, el archivo 'procore_scheduling.log' se creará tan pronto como se configure la programación.

También puede verificar la programación ejecutando el comando en la terminal:

Para Linux y MacOs:    

Para editar/eliminar - edite el cron de programación usando:

'''bash
EDITOR=nano crontab -e
```

  • Después de ejecutar el comando anterior, debería ver algo similar a:
  • 2 * * * * /Usuarios/your_user/copo de nieve/venv/bin/python /Usuarios/your_user/copo de nieve/sql_server_python/connection_config.py 2>&1 | mientras se lee la línea; do echo "$(fecha) - $line"; done >> /Usuarios/your_user/copo de nieve/sql_server_python/procore_scheduling.log # procore-data-import
  • También puede ajustar el cron de programación o eliminar toda la línea para que deje de ejecutarse según el programa.

Para Windows:

  • Compruebe que se ha creado la tarea de programa:
    '''PowerShell
    schtasks /query /tn "ProcoreDeltaShareScheduling" /fo LIST /v

    ```
  • Para editar/eliminar - tarea de programación:
    Abra el Programador de tareas:
    • Presione Win + R, escriba taskschd.msc, y presione Enter.
    • Navegue hasta las tareas programadas.
    • En el panel izquierdo, expanda la Biblioteca del programador de tareas.
    • Busque la carpeta donde está guardada su tarea (por ejemplo, Biblioteca del programador de tareas o una carpeta personalizada).
  • Encuentre su tarea:
    • Busque el nombre de la tarea: ProcoreDeltaShareScheduling.
    • Haga clic en él para ver sus detalles en el panel inferior.
  • Verifica su horario:
    • Compruebe la pestaña Desencadenadores para ver cuándo está configurada la tarea para ejecutarse.
    • Compruebe la pestaña Historial para confirmar las ejecuciones recientes.
  • Para eliminar la tarea:
    • Eliminar tarea de la GUI.

Pregunta de ejecución inmediata:

  • Opción de ejecutar un script para copiar datos inmediatamente después de la configuración.
  • Después de generar el archivo config.yaml, la CLI está lista para ejecutarse en cualquier momento de forma independiente, mediante la ejecución de un script para copiar datos, según el paquete. Vea los ejemplos a continuación:
    Python delta_share_to_azure_panda.py
    O
    python delta_share_to_sql_spark.py
    O
    python delta_share_to_azure_dfs_spark.py

Ejecución y Mantenimiento

Problemas comunes y soluciones

  1. Configuración de Cron Job:
    • Asegúrese de que los permisos del sistema estén configurados correctamente.
    • Compruebe los registros del sistema si el trabajo no se puede ejecutar.
    •  Compruebe que el script delta_share_to_azure_panda.py tiene permisos de ejecución.
  2. Archivo de configuración:
    • Asegúrese de que el archivo config.yaml esté en el mismo directorio que el script.
    • Haga una copia de seguridad del archivo antes de realizar cambios.

Soporte

Para obtener ayuda adicional:

  1. Revise los registros de scripts para ver los mensajes de error detallados.
  2. Vuelva a comprobar si hay errores de configuración en el archivo config.yaml .
  3. Póngase en contacto con el administrador del sistema si tiene problemas relacionados con los permisos.
  4. Comuníquese con el soporte de Procore para problemas relacionados con el acceso a Delta Share.
  5. Registro de revisión de tablas con errores: failed_tables.log.

Notas

  1. Siempre haga una copia de seguridad de sus archivos de configuración antes de realizar cambios.
  2. Pruebe nuevas configuraciones en un entorno que no sea de producción para evitar interrupciones.