Zu Hauptinhalten wechseln
Procore

Verbinden Sie Ihre Procore-Daten durch Herunterladen von Analysemodellen (Beta)

Ziel

So verbinden Sie Ihre Procore-Daten mit einem BI-System, indem Sie Analytics-Modelle programmgesteuert herunterladen . 

Wichtige Hinweise

  • Anforderungen:
    • Python 3.6 oder höher auf Ihrem System installiert.
    • 'config.share'-Datei, die von Procore erhalten wurde.
    • Die erforderlichen Python-Pakete müssen auf Ihrem System installiert sein.
    • Das Skript unterstützt sowohl PySpark als auch Python.
    • Wenn Sie PySpark verwenden, stellen Sie sicher, dass Sie Spark 3.5.1 oder höher, Java installiert und die SPARK_HOME Umgebungsvariable konfiguriert haben.
    • Wenn Sie Python verwenden und der Zielspeicherort MSSQL DB ist, installieren Sie den ODBC-Treiber 17 für SQL Server auf Ihrem System.

Schritte

Datei mit Anmeldeinformationen herunterladen

  1. Erstellen Sie eine Datei mit dem Namen "config.share.
  2. Fügen Sie die folgenden Felder hinzu:
    {
        "shareCredentialsVersion": 1,
        "bearerToken": "",
        "Endpunkt": "",
        "expirationTime": ""
    }
  3. Fügen Sie die von Procore empfangenen Werte bearerToken, endpoint, shareCredentialsVersion und expirationTime zur Datei config.share hinzu.

Ausführen user_exp.py Skripts

Sie können die folgenden Skripts verwenden, um eine config.yaml-Datei mit den erforderlichen Konfigurationen zu erstellen. 

  • Für Azure Storage:
    cron_job: #true/false
    run_as: #pyspark/Python
    source_config:
      config_path: #path zur Datei config.share
      Tabellen:
      - '' # Tabellenname, wenn Sie eine bestimmte Tabelle herunterladen möchten. Lassen Sie es leer, wenn Sie alle Tabellen herunterladen möchten
    source_type: delta_share
    target_config:
      auth_type: service_principal
      client_id: #client_id
      secret_id: #secret_id
      storage_account: Name des #storage-Kontos
      storage_path: #<container>@<storage-account>.dfs.core.windows.net/<directory>
      tenant_id: #tenant_id
    target_type: azure_storage
  • Für MSSQL DB:
    cron_job: #true/false
    run_as: #pyspark/Python
    source_config:
      config_path: #path zur Datei config.share
      Tabellen:
        - '' # Tabellenname, wenn Sie eine bestimmte Tabelle herunterladen möchten. Lassen Sie es leer, wenn Sie alle Tabellen herunterladen möchten
    source_type: delta_share
    target_config:
      Datenbank: #target Datenbank
      Host: #target Hostname:Port
      Passwort: #password
      Schema: #target Schema (standardmäßig procore_analytics)
      Benutzername: #username
    target_type: sql_server

Als PySpark ausführen

Wenn Ihre Umgebung bereits mit Spark eingerichtet ist, wählen Sie die Option 'pyspark', wenn Sie dazu aufgefordert werden, oder sobald die 'config.yaml' generiert ist, können Sie die folgenden Befehle ausführen, um die Berichte in das Datenverzeichnis herunterzuladen.

  • Zum Schreiben in ADLS Gen2-Speicher:
    spark-submit --packages io.delta: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 --exclude-packages com.sun.xml.bind:jaxb-impl delta_share_to_sql_spark.py
  • Zum Schreiben in MSSQL DB:
    spark-submit --packages io.delta:delta-sharing-spark_2.12:3.1.0 --jars <Speicherort der mssql-jdbc-jar> delta_share_to_sql_spark.py

Als Python ausführen

  1. Navigieren Sie in der Befehlszeile zu dem Ordner, indem Sie den Befehl "cd <path to the folder>" eingeben.
  2. Installieren Sie die erforderlichen Pakete mit "pip install -r requirements.txt" oder "python -m pip install -r requirements.txt".
  3. Öffnen Sie SSIS, und erstellen Sie ein neues Projekt.
  4. In der SSIS-Toolbox Drag & Drop Task Prozess ausführen.
  5. Doppelklicken Sie auf Task Prozess ausführen.
  6. Gehen Sie zur Registerkarte Prozess.
  7. Geben Sie neben Ausführbare Datei den Pfad zu python.exe im Python-Installationsordner ein.
  8. Geben Sie in WorkingDirectory den Pfad zu dem Ordner ein, der das Skript enthält, das Sie ausführen möchten (ohne den Namen der Skriptdatei).
  9. Geben Sie unter Argumente den Namen des Skripts ein delta_share_to_azure_panda.py das Sie mit der .py und klicken Sie auf Speichern.
  10. Klicken Sie im oberen Menüband auf Start .
  11. Während der Ausführung der Aufgabe wird die Ausgabe der Python-Konsole im Fenster der externen Konsole angezeigt.
  12. Sobald die Aufgabe erledigt ist, wird ein Häkchen angezeigt.

Wählen Sie Ihre eigene Methode

Delta Sharing ist ein offenes Protokoll für den sicheren Datenaustausch. Das öffentliche GitHub-Repository für Delta Sharing finden Sie unter https://github.com/delta-io/delta-sharing. Das Repository enthält Beispiele und Dokumentationen für den Zugriff auf gemeinsam genutzte Daten in verschiedenen Sprachen wie Python und Spark Connector (SQL, Python, Scala, Java, R).

 Hinweis
Stellen Sie sicher, dass Sie über die entsprechenden Berechtigungen und Zugriffsrechte verfügen, um die erforderlichen Dateien herunterzuladen und Docker-Container auf Ihrem System auszuführen. Befolgen Sie beim Umgang mit sensiblen Daten und Anmeldedaten stets die Sicherheits bewährte Praktiken und Richtlinien von Procore.