Zu Hauptinhalten wechseln
Procore

Exportieren in ADLS mit Spark

Übersicht

Dieser Leitfaden enthält detaillierte Anweisungen zur Einrichtung und Verwendung des Delta Sharing-Integrationspakets auf einem Windows-Betriebssystem , um Daten nahtlos in Ihre Workflows mit Procore Analytics zu integrieren. Das Paket unterstützt mehrere Ausführungsoptionen, so dass Sie die gewünschte Konfiguration und Integrationsmethode auswählen können.

Voraussetzungen

Stellen Sie sicher, dass Sie über Folgendes verfügen, bevor Sie fortfahren:

  • Procore Analytics 2.0 SKU
  • Delta-Sharing-Pofile-Datei:
    Rufen Sie Ihre *.share-Datei mit den Anmeldedatenfür die Deltafreigabe ab. Kopieren Sie es der Einfachheit halber in das Paketverzeichnis.
  • Python-Umgebung:  Installieren Sie Python 3 und pip auf Ihrem System.
    • Laden Sie Python herunter.
    • Alternativ können Sie auch den Microsoft Store verwenden.
      analytics-sql-windows.png

 

Schritte

Vorbereiten des Pakets

  1. Erstellen Sie eine neue Datei mit dem Namen config.share mit Ihren Delta Share-Anmeldedaten im JSON-Format.

{
"shareCredentialsVersion": 1,
"bearerToken": "xxxxxxxxxxxxxxx",
"endpoint": "https://nvirginia.cloud.databricks.c...astores/xxxxxx

  1. Abrufen von Pflichtfeldern.
    Anmerkung: Diese Details können über die Webanwendung von Procore Analytics abgerufen werden.
    • ShareCredentialsVersion: Versionsnummer (derzeit 1).
    • BearerToken: Ihr Delta Share-Zugriffstoken.
    • Endpunkt: Die URL Ihres Delta Share-Endpunkts.
  2. Laden Sie das Paket herunter und extrahieren Sie es.
  3. Entpacken Sie das Paket in ein Verzeichnis Ihrer Wahl.
  4. Kopieren Sie die *.share Delta Sharing-Profildatei in das Paketverzeichnis, um den Zugriff zu erleichtern.
    analytics-sql-windows2.png

Installieren von Abhängigkeiten

  1. Öffnen Sie ein Terminal im Paketverzeichnis.
  2. Führen Sie den folgenden Befehl aus, um die Abhängigkeiten zu installieren:
  3. pip install -r requirements.txt

Konfiguration generieren

  1. Generieren Sie die Datei config.yaml , indem Sie python user_exp.py ausführen:
    Dieses Skript hilft beim Generieren der Datei config.yaml, die die erforderlichen Anmeldedaten und Einstellungen enthält.
  2. Bei der Konfiguration der Datenquelle werden Sie aufgefordert, Folgendes anzugeben:
    • Liste der Tabellen (durch Kommas getrennt).
    • Lassen Sie das Feld leer, um alle Tabellen zu synchronisieren.
      Beispiel: 'Tabelle1, Tabelle2, Tabelle3'.
    • Pfad zu Ihrer 'config.share' Datei.
  3. Zum ersten Mal geben Sie Ihre Anmeldedaten wie den Speicherort der Delta Share-Quellkonfiguration, Tabellen, Datenbank, Host usw. an.
    Anmerkung: Danach können Sie die Konfiguration manuell oder durch das laufende Python-user_exp.py wiederverwenden oder aktualisieren.

Konfigurieren von Cron-Jobs und sofortiger Ausführung (optional)

  1. Entscheiden Sie, ob Sie einen Cronjob für die automatische Ausführung einrichten möchten.
  2. Stellen Sie einen Cron-Zeitplan bereit:
    • Format: * * * * * ( Minute, Stunde, Monatstag, Monat, Wochentag).
    • Beispiel für die tägliche Ausführung um 2 Uhr morgens: 0 2 * * *
    • Um die Planungsprotokolle zu überprüfen, wird die Datei 'procore_scheduling.log' erstellt, sobald die Terminplanung eingerichtet ist.

Sie können die Zeitplanung auch überprüfen, indem Sie den folgenden Befehl im Terminal ausführen:

Für Linux und MacOs:    

Bearbeiten/Löschen - Bearbeiten Sie den Terminplanungs-Cron mit:

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

  • Nachdem Sie den obigen Befehl ausgeführt haben, sollten Sie etwas Ähnliches wie das folgende sehen:
  • 2 * * * * /Benutzer/your_user/snowflake/venv/bin/python /Benutzer/your_user/snowflake/sql_server_python/connection_config.py 2>&1 | während der gelesenen Zeile; do echo "$(date) - $line"; Erledigt >> /Benutzer/your_user/snowflake/sql_server_python/procore_scheduling.log # procore-data-import
  • Sie können auch den Zeitplan anpassen oder die gesamte Zeile löschen, um zu verhindern, dass sie nach Zeitplan ausgeführt wird.

Für Windows:

  • Überprüfen Sie, ob die Terminplanaufgabe erstellt wurde:
    '''Powershell
    schtasks /query /tn "ProcoreDeltaShareScheduling" /fo LIST /v

    ```
  • So bearbeiten/löschen Sie die Planungsaufgabe:
    Öffnen Sie den Taskplaner:
    • Drücken Sie Win + R, geben Sie taskschd.msc ein. und drücken Sie die Eingabetaste.
    • Navigieren Sie zu den geplanten Aufgaben.
    • Erweitern Sie im linken Bereich die Taskplaner-Bibliothek.
    • Suchen Sie nach dem Ordner, in dem Ihre Aufgabe gespeichert ist (z. B. Taskplaner-Bibliothek oder ein benutzerdefinierter Ordner).
  • Finden Sie Ihre Aufgabe:
    • Suchen Sie nach dem Aufgabennamen ProcoreDeltaShareScheduling.
    • Klicken Sie darauf, um die Details im unteren Bereich anzuzeigen.
  • Überprüfen Sie den Zeitplan:
    • Überprüfen Sie die Registerkarte Trigger, um zu sehen, wann die Aufgabe ausgeführt werden soll.
    • Überprüfen Sie die Registerkarte Verlauf, um die letzten Ausführungen zu bestätigen.
  • So löschen Sie die Aufgabe:
    • Löschen Sie die Aufgabe aus der GUI.

Frage zur sofortigen Ausführung:

  • Option zum Ausführen eines Skripts zum Kopieren von Daten unmittelbar nach der Konfiguration.
  • Nach dem Generieren der config.yaml, Die CLI kann jederzeit unabhängig ausgeführt werden, indem je nach Paket ein Skript zum Kopieren von Daten ausgeführt wird. Siehe Beispiele unten:
    Python-delta_share_to_azure_panda.py
    ODER
    python delta_share_to_sql_spark.py
    ODER
    python delta_share_to_azure_dfs_spark.py

Ausführung und Wartung

Häufige Probleme und Lösungen

  1. Cron Job Einrichtung:
    • Stellen Sie sicher, dass die Systemberechtigungen korrekt konfiguriert sind.
    • Überprüfen Sie die Systemprotokolle, wenn der Auftrag nicht ausgeführt werden kann.
    •  Überprüfen Sie, ob das Skript über Ausführungsberechtigungen delta_share_to_azure_panda.py verfügt.
  2. Konfigurationsdatei:
    • Stellen Sie sicher, dass sich die Datei config.yaml im selben Verzeichnis wie das Skript befindet.
    • Sichern Sie die Datei, bevor Sie Änderungen vornehmen.

Unterstützen

Für weitere Hilfe:

  1. Überprüfen Sie die Skriptprotokolle auf detaillierte Fehlermeldungen.
  2. Überprüfen Sie die Datei config.yaml auf Fehlkonfigurationen.
  3. Wenden Sie sich an Ihren Systemadministrator, wenn Sie Fragen zu Berechtigungen haben.
  4. Wenden Sie sich bei Problemen im Zusammenhang mit dem Delta Share-Zugriff an den Procore Support.
  5. Überprüfen Sie das Protokoll auf fehlgeschlagene Tabellen: failed_tables.log.

Hinweise

  1. Sichern Sie immer Ihre Konfigurationsdateien, bevor Sie Änderungen vornehmen.
  2. Testen Sie neue Konfigurationen in einer Nicht-Produktionsumgebung, um Unterbrechungen zu vermeiden.