メインコンテンツへスキップ
Procore

Procore アナリティクス 2.0 の入門

Procore アナリティクス クラウド コネクタ

導入

Cloud Connector は、Procore がデータ、インテリジェンス、分析をお客様と共有する方法です。これは、Power BIやTableauなどのレポートツールに直接共有できます。また、顧客のデータウェアハウス、店舗、レイク、その他のアプリケーションと共有することもできます。お客様は、Cloud Connectorを使用してデータへのプログラムによるアクセスを構築し、真の自動化を実現することもできます。Cloud Connectorは、Delta Shareオープン共有プロトコルに基づいています。

Procore アナリティクス 2.0 ガイド付きデータ コネクタのオプション

Delta Sharing は、安全なデータ共有のための業界初のオープン プロトコルであり、使用するコンピューティング プラットフォームに関係なく、他の組織とデータを簡単に共有できます。多くのアプリケーションは、Delta Share を使用してデータにアクセスできます。ただし、カスタマー エクスペリエンスをさらに向上させるために、Procore は次のプラットフォーム用のコネクタ、事前構築済みコード、およびガイドを追加し、セットアップ時間と複雑さを軽減して、シームレスですぐに使用できる接続を可能にしました。

  • SQL Serverの
    • SSIS Python
    • Python ライブラリ
    • Python Spark
  • 紺碧
    • ADLS Azure Functions
    • ADLS Python
    • ADLS スパーク
    • レイクハウス ファブリック データ ファクトリ
    • レイクハウスファブリックノートブック
    • SQL Server Azure Functions
    • SQL Server ファブリック データ ファクトリ
    • SQL Server ファブリック ノートブック
  • Databricks(データブリック)
  • 雪片
  • Amazon S3
  • 自分で書くためのガイド (GitHub)

その他の通信用コネクタも近日公開予定です。

ドキュメントとコードへのアクセス

包括的なドキュメントとコード例は、Procore 管理者がアクセスできる Procore ウェブ アプリケーションで直接 Procore アナリティクス製品で利用できます。これらのリソースは、データ統合を効果的に設定して管理するのに役立つステップバイステップの手順、コードスニペット、およびベストプラクティスを提供します。

次のステップ

このガイドの次のセクションに進み、セットアップ プロセスを開始します。


ご不明な点やご不明な点がございましたら、アカウントマネージャーまたはサポートチームにお問い合わせください。

権限の確認

 
  • 会社の Procore アカウントの会社レベルで Procore アナリティクス ツールを有効にする必要があります。
  • Procore アナリティクス ツールへの「管理者」レベルのアクセス権を持つユーザーは、Procore アナリティクス ツールへのアクセス権を追加ユーザーに付与できます。
  • ユーザーがアクセス トークンを生成するには、Procore アナリティクス ツールに対する「管理者」レベルのアクセス権が必要です。
  • Procore アナリティクスのディレクトリ内のユーザー権限に対する変更が有効になるまでに最大 24 時間かかります。

Procore データを BI ソリューションに接続し始めることができるように、アクセス トークンを生成するための適切な権限が割り当てられていることを確認する必要があります。 Procore アナリティクスへのアクセスは Procore ログイン認証情報にリンクされており、1 つのアクセス トークンを生成できます。アクセストークンは、データにアクセスするためにBIシステムに入力する数字の文字列です。

通常、アクセス トークンを必要とするユーザーは、データ エンジニアまたは Power BI 開発者です。 複数の会社の Procore アナリティクスにアクセスできる場合、トークンを使用すると、すべての会社からデータを取得できます。 トークンは特定の会社ではなく、あなたに紐付けられているため、アクセスできるすべての会社で同じままです。

会社管理者とプロジェクト管理者には、既定で管理者ロールが付与されます。 Procore アナリティクス ツールでは、次のユーザー アクセス レベルが許可されます。

  • 何一つ: Procore アナリティクス データにはアクセスできません。
  • 管理者: すべてのツールとプロジェクトのデータに対するフル アクセス権限を持ちます (通信データなど、非公開としてマークされた特定のデータを除く)。

アクセス権の取り消し

ツールに対するユーザーの権限が削除されると、Procore アナリティクス ツールのデータへのアクセスは取り消されます。さらに、ユーザーの連絡先レコードが非アクティブになると、Procore アナリティクス データにもアクセスできなくなります。

データ アクセス認証情報の生成

Procore データへのアクセスを開始するには、データ アクセス認証情報を生成するための 2 つのオプションがあります: Databricks 直接接続方法またはデルタ共有トークン方法。アクセス トークンは、データにアクセスするために該当するデータ コネクタに入力する数字の文字列です。

検討事項

  • Procore アナリティクス ツールを有効にする必要があります。
  • 既定では、すべての会社管理者は、ディレクトリ内の Analytics に対する「管理者」レベルのアクセス権を持っています。
  • アナリティクスへの「管理者」レベルのアクセス権を持つユーザーは、追加のユーザーにアナリティクス ツールへのアクセス権を付与できます。
  • ユーザーがデータトークンを生成するには、分析ツールへの「管理者」レベルのアクセス権が必要です。

ステップ

  1. Procore にログインします。
  2. ナビゲーションバーの右上にある [ Account & Profile (アカウントとプロファイル)] アイコンをクリックします。
    Account Icon.png
  3. [ マイ プロファイル設定] をクリックします。
  4. [ Procore アナリティクスとの接続を選択] には、認証情報を生成するための 2 つのオプションがあります。
    • Databricks は直接接続するか、Delta Share を使用して個人用アクセス トークンを生成します。
  5. Databricks 直接接続方法の Databricks 共有識別子 を入力し、 [ 接続] をクリックします。詳細については、「 Procore データを Databricks ワークスペースに接続する 」を参照してください。
    clipboard_e1d2ed9e3cf25a79f259dba109f03e4ab.png
  6. トークンの方法として、 [ Delta Share Token](デルタ共有トークン) を選択します。
  7. 必ず有効期限を選択してください。
  8. トークンの生成」をクリックします。
    大事な!Procore はユーザーのトークンを保存しないため、将来の参照のためにトークンをコピーして保存することをお勧めします。
  9. ベアラー トークン、共有名、デルタ共有サーバーの URL、および共有資格情報のバージョンを使用して、データへのアクセスと統合を開始します。
    analytics-generate-token.png
  10. 目的のデータ接続方法に基づいてデータを接続するための次のステップについては、スタートガイドの追加セクションを参照してください。
 
  • トークンは 1 時間後に消えるか、ページから移動すると消えます。新しいトークンを生成するには、ステップ 1 に戻ります。
  • データが表示されるまでに最大 24 時間かかる場合があります。
  • この処理時間中にトークンを再生成すると、トークンに問題が発生する可能性があるため、トークンを再生成しないでください。

Power BI にレポートをアップロードする (該当する場合)

  1. 会社のツール メニューから Procore アナリティクスに移動します。
  2. はじめに 」セクションに移動します。
  3. [ Power BI ファイル] で、使用可能な Power BI レポートを選択してダウンロードします。
  4. Power BI ログイン認証情報を使用して Power BI サービス にログインします。
  5. 会社の Procore アナリティクス レポートを保存するワークスペースを作成します。詳細については 、Microsoft の Power BI サポート ドキュメント を参照してください。
    筆記: ライセンス要件が適用される場合があります。
  6. ワークスペースで、[ アップロード] をクリックします。
  7. 次に、[ 参照]をクリックします。
  8. コンピューター上の場所からレポート ファイルを選択し、[開く] をクリックします。
  9. ファイルをアップロードしたら、 [フィルター] をクリックし、 [セマンティック モデル] を選択します
  10. レポート名の行の上にカーソルを置き、垂直の 省略記号 icon-ellipsis-options-menu3.png アイコンをクリックします。
  11. [設定] をクリックします。
  12. 設定ページで、[データ ソースの資格情報] をクリックし、[資格情報の編集] をクリックします。
  13. 表示される「[レポート名] の構成」ウィンドウで、次の手順を実行します。
    • 認証方法: 「キー」を選択します。
    • アカウント キー: Procore のトークン生成ページから受け取ったトークンを入力します。
    • このデータ ソースのプライバシー レベル設定: プライバシー レベルを選択します。「非公開」または「組織」を選択することをお勧めします。見る Microsoft の Power BI サポート ドキュメント プライバシー レベルの詳細については、を参照してください。
  14. [サインイン] をクリックします。
  15. [R efresh] をクリックし、次の操作を行います。
    • タイム ゾーン: スケジュールされたデータ更新に使用するタイム ゾーンを選択します。
    • [ 更新スケジュールの構成] で、トグルを [オン] の位置にします。
    • 更新頻度: [毎日] を選択します。
    • [時間]: [別の時間を追加] をクリックし、午前 7:00 を選択します。
      手記:更新時間は最大 8 回まで追加できます。
    • オプション:
      • [データセットの所有者に更新失敗通知を送信する] チェックボックスをオンにして、更新失敗通知を送信します。
      • システムが更新失敗通知を送信する他の同僚の電子メール アドレスを入力します。
  16. [適用] をクリックします。
  17. 設定が正しく構成され、レポートのデータが適切に更新されることを確認するには、[フィルター処理してセマンティック モデルを選択] ページに戻り、次の手順を実行します。
    • レポート名の行の上にカーソルを置き、円形の矢印アイコンをクリックしてデータを手動で更新します。
    • 「更新済み」列をチェックして、警告icon-warning-estimating.pngアイコンがあるかどうかを確認します。
      • 警告アイコンが表示されない場合、レポートのデータは正常に更新されています。
      • 警告アイコンが表示された場合は、エラーが発生しています。 警告 icon-warning-estimating.pngアイコンをクリックすると、エラーの詳細が表示されます。
  18. Power BI サービスによって自動的に作成された空のダッシュボードを削除するには、次の手順を実行します。
    • ダッシュボードの名前の行の上にカーソルを置きます。省略記号icon-ellipsis-options-menu3.pngアイコンをクリックし、[削除] をクリックします。
  19. レポートが正しく表示されることを確認するには、[すべて] または [コンテンツ] ページに移動し、レポートの名前をクリックして Power BI サービスでレポートを表示します。
     ヒント
    「タイプ」列を参照して、別のアセットではなくレポートをクリックしてください。
  20. Power BI 内で、Procore アナリティクス レポート ファイルごとに上記の手順を繰り返します。

Power BI Desktop に接続する

 
これらの接続方法は、通常、データの専門家によって使用されます。

新しいデータの接続

  1. Power BI Desktop を開きます。
  2. [ データを取得する] をクリックし、[その他] を選択します。
  3. 検索バーに「Delta Sharing」と入力します。
  4. [ Delta Sharing] を選択し、 [ 接続] をクリックします。
  5. Procore から受け取った Delta Sharing Server の URL を入力するか貼り付けます。
  6. [OK] をクリックします。
  7. このソースに初めて接続する場合は、 Delta Sharing ベアラー トークンを提供するように求められます。
  8. [ 接続] をクリックします。
  9. 認証後、Power BI レポートに取り込む Procore アナリティクス テーブルを選択します。
  10. [ 読み込み ] を選択してレポートを表示するか、 [ データの変換 ] を選択して Power Query でさらに変換を行います。

既存のテンプレートに接続する

  1. Power BI Desktop を開きます。
  2. [ データの変換 ] ドロップダウンをクリックし、[ データ ソース 設定] を選択します。
  3. [ 権限の編集] を選択します。
  4. [ 編集] をクリックします。
  5. アナリティクス 2.0 から受け取ったトークンを入力します。
  6. [ 更新] をクリックします。
  7. カスタム予算列が [予算] テーブルと [BudgetSnapshots] テーブルに表示されます。

Python (SSIS) を使用した SQL Server への接続

概要

Procore アナリティクス クラウド コネクト アクセス ツールは、Procore から MS SQL Server へのデータ転送の構成と管理に役立つコマンドライン インターフェイス (CLI) です。これは、次の 2 つの主要コンポーネントで構成されています。

  • user_exp.py (設定設定ユーティリティ)
  • delta_share_to_azure_panda.py (データ同期スクリプト)

前提条件

  • システムにインストールされているPythonとpip。
  • Procore Delta Share へのアクセス。
  • MS SQL Server アカウントの資格情報。
  • 必要な依存関係をインストールします: pip install -r requirements.txt

ステップ

初期設定

  • 設定ユーティリティを実行します。
    Python user_exp.py

これは、次の設定に役立ちます。

  • Delta Share ソースの構成
  • MS SQL Server ターゲット構成
  • スケジュール設定

データ同期

構成後、データ同期を実行するには次の 2 つのオプションがあります。

  1. 直接実行 python
    delta_share_to_azure_panda.py
    又は
  2. スケジュールされた実行
    セットアップ時に設定した場合、ジョブはcronスケジュールに従って自動的に実行されます。

デルタ共有の構成

  1. JSON 形式の Delta Share 資格情報を使用して 、config.share という名前の 新しいファイルを作成します。

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

 

  1. 必須フィールドを取得します。
    手記:これらの詳細は、Procore アナリティクス ウェブ アプリケーションから取得できます。
    • ShareCredentialsVersion: バージョン番号 (現在は 1)。
    • BearerToken: Delta Share アクセス トークン。
    • エンドポイント: Delta Share エンドポイント URL。
    • ファイルを安全な場所に保存します。
  2. データ ソースを構成するときに、次の情報を提供するように求められます。
    • テーブルのリスト (カンマ区切り)。
    • すべてのテーブルを同期するには、空白のままにします。
    • 例: 'table1, t able2, table3'。
    • 「config.share」へのパス ファイル。

MS SQL Server の構成

次の MS SQL Server の詳細を指定する必要があります。

  • データベース
  • ホスト
  • パスワード
  • スキーマ
  • ユーザー名

SSIS の構成

  1. コマンドラインを使用して、「 cd <path to the folder>」と入力してフォルダに移動します。
  2. 「pip install -r requirements.txt」または「python -m pip install -r requirements.txt」を使用して、必要なパッケージをインストールします。
  3. SSIS を開き、新しいプロジェクトを作成します。
  4. SSIS ツールボックスから、「プロセス タスクの実行」アクティビティをドラッグ アンド ドロップします。

    analytics-data-connector-sql-ssis.png
  5. 「プロセスタスクの実行」をダブルクリックし、「プロセス」タブに移動します。
  6. 「実行可能ファイル」に、Pythonインストールフォルダ内のpython.exeへのパスを入力します。
  7. 「WorkingDirectory」に、実行するスクリプトが格納されているフォルダへのパスを入力します(スクリプトファイル名は含みません)。
  8. 「引数」に、スクリプトの名前「delta_share_to_azure_panda.py」を入力します .pyで実行したい拡張して保存します。

    analytics-sql-ssis2.png
     
  9. 上部ペインの[スタート]ボタンをクリックします。
    analytics-sql-ssis.png
  10. タスクの実行中、Python コンソールの出力が外部コンソール ウィンドウに表示されます。
  11. タスクが完了すると、緑色のチェックマークが表示されます。

    analytics-sql-ssis1.png

Python ライブラリを使用して SQL Server に接続する

概要

このガイドでは、Windows オペレーティング システムでデルタ共有統合パッケージを設定して使用し、Procore アナリティクスを使用してワークフローにデータをシームレスに統合するための詳細な手順について説明します。このパッケージは複数の実行オプションをサポートしているため、必要な構成と統合方法を選択できます。

前提条件

先に進む前に、次のものがあることを確認してください。

  • Procore アナリティクス 2.0 SKU
  • Delta Sharing pofile ファイル:
    Delta Sharing 資格情報 を含む *.share ファイルを取得します。便宜上、パッケージディレクトリにコピーしてください。
  • Python 環境: Python 3 と pip をシステムにインストールします。

 

ステップ

パッケージを準備する

  1. JSON 形式の Delta Share 資格情報を使用して 、config.share という名前の新しいファイルを作成します。

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

  1. 必須フィールドを取得します。
    手記: これらの詳細は、Procore アナリティクス ウェブ アプリケーションから取得できます。
    • ShareCredentialsVersion: バージョン番号 (現在は 1)。
    • BearerToken: Delta Share アクセス トークン。
    • エンドポイント: Delta Share エンドポイント URL。
  2. パッケージをダウンロードして解凍します。
  3. 任意のディレクトリにパッケージを解凍します。
  4. *.share Delta Sharing プロファイル ファイルをパッケージ ディレクトリにコピーして、簡単にアクセスできるようにします。
    analytics-sql-windows2.png

依存関係のインストール

  1. パッケージディレクトリでターミナルを開きます。
  2. 次のコマンドを実行して、依存関係をインストールします。
  3. pip install -r requirements.txtを実行します

コンフィギュレーションの生成

  1. python user_exp.py を実行して config.yaml ファイルを生成します。
    このスクリプトは、必要な資格情報と設定を含む config.yaml ファイルを生成するのに役立ちます。
  2. データ ソースを構成するときに、次の情報を提供するように求められます。
    • テーブルのリスト (カンマ区切り)。
    • すべてのテーブルを同期するには、空白のままにします。
      例: 'table1, table2, table3'
    • 「config.share」へのパスファイル。
  3. 初めて、Delta Share ソース構成の場所、テーブル、データベース、ホストなどの資格情報を指定します。
    手記:その後、手動で、またはpython user_exp.pyを実行して、構成を再利用または更新できます。

cron ジョブと即時実行の構成 (オプション)

  1. 自動実行用にcronジョブを設定するかどうかを決定します。
  2. cron スケジュールを指定します。
    • 形式: * * * * * ( 分、時、「月の日」、月、「曜日」)。
    • 毎日午前 2 時の実行の例: 0 2 * * *
    • スケジュール ログを確認するために、スケジュールが設定されるとすぐにファイル 'procore_scheduling.log' が作成されます。

また、ターミナルコマンドで実行してスケジュールを確認することもできます。

LinuxおよびMacOSの場合:

編集/削除 - 以下を使用してスケジューリングcronを編集します。

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

  • 上記のコマンドを実行すると、次のようなものが表示されます。
  • 2 * * * * /ユーザー/your_user/スノーフレーク/venv/bin/python /ユーザー/your_user/スノーフレーク/sql_server_python/connection_config.py 2>&1 |行を読み取っている間。do echo "$(日付) - $line";完了 >> /ユーザー/your_user/snowflake/sql_server_python/procore_scheduling.log # procore-data-import
  • また、schedule cron を調整したり、行全体を削除したりして、スケジュールによる実行を停止することもできます。

Windowsの場合:

  • スケジュール タスクが作成されたことを確認します。
    '''PowerShell
    schtasks /query /tn "ProcoreDeltaShareScheduling" /fo LIST /v

    ```
  • 編集/削除 - タスクのスケジュール設定:
    タスクスケジューラを開きます。
    • Win + Rを押し、taskschd.mscと入力し、と入力し、Enter キーを押します。
    • スケジュールされたタスクに移動します。
    • 左側のウィンドウで、[タスク スケジューラ ライブラリ] を展開します。
    • タスクが保存されているフォルダを探します (例: タスク スケジューラ ライブラリまたはカスタム フォルダ)。
  • タスクを見つける:
    • タスク名 ProcoreDeltaShareScheduling を探します。
    • それをクリックすると、下部のペインに詳細が表示されます。
  • スケジュールを確認します。
    • [トリガー] タブをチェックして、タスクがいつ実行されるかを確認します。
    • [履歴] タブをチェックして、最近の実行を確認します。
  • タスクを削除するには:
    • GUI からタスクを削除します。

即時実行の質問:

  • 設定後すぐにデータをコピーするためのスクリプトを実行するオプション。
  • config.yaml を生成した後、CLIは、パッケージに応じて、データをコピーするためのスクリプトを実行することで、いつでも個別に実行する準備ができています。以下の例を参照してください。
    Python delta_share_to_azure_panda.py
    又は
    Python delta_share_to_SQL_spark.py
    又は
    パイソンdelta_share_to_azure_dfs_spark.py

実行と保守

一般的な問題と解決策

  1. cronジョブのセットアップ:
    • システム権限が正しく設定されていることを確認します。
    • ジョブの実行に失敗した場合は、システムログを確認します。
    • スクリプト delta_share_to_azure_panda.pyに実行権限があることを確認します。
  2. 構成ファイル:
    • config.yaml ファイルがスクリプトと同じディレクトリにあることを確認します。
    • 変更を加える前にファイルをバックアップしてください。

サポート

さらにヘルプが必要な場合:

  1. スクリプト ログで詳細なエラー メッセージを確認します。
  2. config.yaml ファイルに設定ミスがないか再確認してください。
  3. 権限関連の問題については、システム管理者に問い合わせてください。
  4. Delta Share アクセスに関連する問題については、Procore サポートにお問い合わせください。
  5. 失敗したテーブルのログを確認する: failed_tables.log

  1. 変更を加える前に、必ず構成ファイルをバックアップしてください。
  2. 中断を防ぐために、非運用環境で新しい構成をテストします。

Python Spark を使用して SQL Server に接続する

概要

このガイドでは、Windows オペレーティング システムでデルタ共有統合パッケージを設定して使用し、Procore アナリティクスを使用してワークフローにデータをシームレスに統合するための詳細な手順について説明します。このパッケージは複数の実行オプションをサポートしているため、必要な構成と統合方法を選択できます。

前提条件

先に進む前に、次のものがあることを確認してください。

  • Procore アナリティクス 2.0 SKU
  • Delta Sharing pofile ファイル:
    Delta Sharing 資格情報 を含む *.share ファイルを取得します。便宜上、パッケージディレクトリにコピーしてください。
  • Python 環境: Python 3 と pip をシステムにインストールします。

 

ステップ

パッケージを準備する

  1. JSON 形式の Delta Share 資格情報を使用して 、config.share という名前の新しいファイルを作成します。

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

  1. 必須フィールドを取得します。
    手記: これらの詳細は、Procore アナリティクス ウェブ アプリケーションから取得できます。
    • ShareCredentialsVersion: バージョン番号 (現在は 1)。
    • BearerToken: Delta Share アクセス トークン。
    • エンドポイント: Delta Share エンドポイント URL。
  2. パッケージをダウンロードして解凍します。
  3. 任意のディレクトリにパッケージを解凍します。
  4. *.share Delta Sharing プロファイル ファイルをパッケージ ディレクトリにコピーして、簡単にアクセスできるようにします。
    analytics-sql-windows2.png

依存関係のインストール

  1. パッケージディレクトリでターミナルを開きます。
  2. 次のコマンドを実行して、依存関係をインストールします。
  3. pip install -r requirements.txtを実行します

コンフィギュレーションの生成

  1. python user_exp.py を実行して config.yaml ファイルを生成します。
    このスクリプトは、必要な資格情報と設定を含む config.yaml ファイルを生成するのに役立ちます。
  2. データ ソースを構成するときに、次の情報を提供するように求められます。
    • テーブルのリスト (カンマ区切り)。
    • すべてのテーブルを同期するには、空白のままにします。
      例: 'table1, table2, table3'
    • 「config.share」へのパスファイル。
  3. 初めて、Delta Share ソース構成の場所、テーブル、データベース、ホストなどの資格情報を指定します。
    手記:その後、手動で、またはpython user_exp.pyを実行して、構成を再利用または更新できます。

cron ジョブと即時実行の構成 (オプション)

  1. 自動実行用にcronジョブを設定するかどうかを決定します。
  2. cron スケジュールを指定します。
    • 形式: * * * * * ( 分、時、「月の日」、月、「曜日」)。
    • 毎日午前 2 時の実行の例: 0 2 * * *
    • スケジュール ログを確認するために、スケジュールが設定されるとすぐにファイル 'procore_scheduling.log' が作成されます。

また、ターミナルコマンドで実行してスケジュールを確認することもできます。

LinuxおよびMacOSの場合:

編集/削除 - 以下を使用してスケジューリングcronを編集します。

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

  • 上記のコマンドを実行すると、次のようなものが表示されます。
  • 2 * * * * /ユーザー/your_user/スノーフレーク/venv/bin/python /ユーザー/your_user/スノーフレーク/sql_server_python/connection_config.py 2>&1 |行を読み取っている間。do echo "$(日付) - $line";完了 >> /ユーザー/your_user/snowflake/sql_server_python/procore_scheduling.log # procore-data-import
  • また、schedule cron を調整したり、行全体を削除したりして、スケジュールによる実行を停止することもできます。

Windowsの場合:

  • スケジュール タスクが作成されたことを確認します。
    '''PowerShell
    schtasks /query /tn "ProcoreDeltaShareScheduling" /fo LIST /v

    ```
  • 編集/削除 - タスクのスケジュール設定:
    タスクスケジューラを開きます。
    • Win + Rを押し、taskschd.mscと入力し、と入力し、Enter キーを押します。
    • スケジュールされたタスクに移動します。
    • 左側のウィンドウで、[タスク スケジューラ ライブラリ] を展開します。
    • タスクが保存されているフォルダを探します (例: タスク スケジューラ ライブラリまたはカスタム フォルダ)。
  • タスクを見つける:
    • タスク名 ProcoreDeltaShareScheduling を探します。
    • それをクリックすると、下部のペインに詳細が表示されます。
  • スケジュールを確認します。
    • [トリガー] タブをチェックして、タスクがいつ実行されるかを確認します。
    • [履歴] タブをチェックして、最近の実行を確認します。
  • タスクを削除するには:
    • GUI からタスクを削除します。

即時実行の質問:

  • 設定後すぐにデータをコピーするためのスクリプトを実行するオプション。
  • config.yaml を生成した後、CLIは、パッケージに応じて、データをコピーするためのスクリプトを実行することで、いつでも個別に実行する準備ができています。以下の例を参照してください。
    Python delta_share_to_azure_panda.py
    又は
    Python delta_share_to_SQL_spark.py
    又は
    パイソンdelta_share_to_azure_dfs_spark.py

実行と保守

一般的な問題と解決策

  1. cronジョブのセットアップ:
    • システム権限が正しく設定されていることを確認します。
    • ジョブの実行に失敗した場合は、システムログを確認します。
    • スクリプト delta_share_to_azure_panda.pyに実行権限があることを確認します。
  2. 構成ファイル:
    • config.yaml ファイルがスクリプトと同じディレクトリにあることを確認します。
    • 変更を加える前にファイルをバックアップしてください。

サポート

さらにヘルプが必要な場合:

  1. スクリプト ログで詳細なエラー メッセージを確認します。
  2. config.yaml ファイルに設定ミスがないか再確認してください。
  3. 権限関連の問題については、システム管理者に問い合わせてください。
  4. Delta Share アクセスに関連する問題については、Procore サポートにお問い合わせください。
  5. 失敗したテーブルのログを確認する: failed_tables.log

  1. 変更を加える前に、必ず構成ファイルをバックアップしてください。
  2. 中断を防ぐために、非運用環境で新しい構成をテストします。

Azure Functions を使用して ADLS に接続する

概要

このガイドでは、Delta Sharing データを Procore Analytics と統合するための Azure 関数の設定とデプロイについて説明します。Azure 関数を使用すると、Delta Sharing プロファイルを使用した効率的なデータ処理と共有ワークフローが可能になります。

前提条件

  • Procore アナリティクス 2.0 SKU。
  • Delta Sharing プロファイル ファイル:
    • Delta Sharing 資格情報 を含む *.share ファイル。便宜上、ダウンロードしたパッケージ内に配置してください。
    • Python環境:
      • システムにPython3.9+と pip をインストールしました。
  • Azure のセットアップ:
    • Azure CLI がインストールされ、ログインしています。
    • Azure Functions Core Tools がインストールされていること。

ステップ

パッケージを準備する

  1. 必要なパッケージ (adls_azure_function または sql_server_azure_function) をダウンロードします。
  2. パッケージファイルをローカルディレクトリに抽出します。
  3. Delta Sharing ファイルを配置します。
    • *.share Delta Sharing プロファイル ファイルを抽出したディレクトリにコピーします。

依存関係のインストール

  1. パッケージディレクトリでターミナルを開きます。
  2. 次のコマンドを実行して、必要な Python 依存関係をインストールします。
    • pip install -r requirements.txtを実行します

コンフィギュレーションの生成

  1. 次のコマンドを実行して、config.yaml ファイルを生成します。
    • Python user_exp.py
  2. スクリプトでは、次のような資格情報を入力するように求められます。
    • テーブル
    • データベース名
    • ホスト
    • 追加の資格情報..
  3. 構成は、手動で、または python user_exp.py を再実行することで、再利用または更新できます。

 Azure CLI のセットアップ

  1. Azure にログインします。
  2. 次のコマンドを実行してログインします。
    az ログイン
  3. Azure アカウントを確認します。
    • azアカウント表示
    • az コマンドが使用できない場合は、Microsoft Learn の手順に従って Azure CLI をインストールします。

Azure Functions Core Tools をインストールする

行きます

Azure Functions Core Tools のインストール手順については、「」を参照してください。

Azure 関数を準備する

  1. 代わりに、以下を作成するには:
    • 関数アプリ
    • リソース グループ
    • 従量課金プラン
    • ストレージ アカウント
  2. カスタムCronスケジュールを設定します(オプション)。
    • エディタでfunction_app.pyを開きます。
    • 次の行を見つけます: @app.timer_trigger(schedule="00 */8 * * *"、
  3. スケジュールをカスタムCron式に置き換えて、ファイルを保存します。

配備

  1. パッケージディレクトリ(adls_azure_function)でターミナルを開きます。
  2. 次のデプロイ コマンドを実行します。
    • func azure functionapp publish <FunctionAppName> --build remote --python --clean
  3. <FunctionAppName> は、Azure サブスクリプション内の Azure 関数アプリの名前に置き換えます。

検証

  • Azure Portal で関数アプリの状態を確認して、デプロイが成功したことを確認します。
  • ログを監視して、関数が期待どおりに実行されていることを確認します。

 

Python を使用して ADLS に接続する

概要

このガイドでは、Windows オペレーティング システムでデルタ共有統合パッケージを設定して使用し、Procore アナリティクスを使用してワークフローにデータをシームレスに統合するための詳細な手順について説明します。このパッケージは複数の実行オプションをサポートしているため、必要な構成と統合方法を選択できます。

前提条件

先に進む前に、次のものがあることを確認してください。

  • Procore アナリティクス 2.0 SKU
  • Delta Sharing pofile ファイル:
    Delta Sharing 資格情報 を含む *.share ファイルを取得します。便宜上、パッケージディレクトリにコピーしてください。
  • Python 環境: Python 3 と pip をシステムにインストールします。

 

ステップ

パッケージを準備する

  1. JSON 形式の Delta Share 資格情報を使用して 、config.share という名前の新しいファイルを作成します。

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

  1. 必須フィールドを取得します。
    手記: これらの詳細は、Procore アナリティクス ウェブ アプリケーションから取得できます。
    • ShareCredentialsVersion: バージョン番号 (現在は 1)。
    • BearerToken: Delta Share アクセス トークン。
    • エンドポイント: Delta Share エンドポイント URL。
  2. パッケージをダウンロードして解凍します。
  3. 任意のディレクトリにパッケージを解凍します。
  4. *.share Delta Sharing プロファイル ファイルをパッケージ ディレクトリにコピーして、簡単にアクセスできるようにします。
    analytics-sql-windows2.png

依存関係のインストール

  1. パッケージディレクトリでターミナルを開きます。
  2. 次のコマンドを実行して、依存関係をインストールします。
  3. pip install -r requirements.txtを実行します

コンフィギュレーションの生成

  1. python user_exp.py を実行して config.yaml ファイルを生成します。
    このスクリプトは、必要な資格情報と設定を含む config.yaml ファイルを生成するのに役立ちます。
  2. データ ソースを構成するときに、次の情報を提供するように求められます。
    • テーブルのリスト (カンマ区切り)。
    • すべてのテーブルを同期するには、空白のままにします。
      例: 'table1, table2, table3'
    • 「config.share」へのパスファイル。
  3. 初めて、Delta Share ソース構成の場所、テーブル、データベース、ホストなどの資格情報を指定します。
    手記:その後、手動で、またはpython user_exp.pyを実行して、構成を再利用または更新できます。

cron ジョブと即時実行の構成 (オプション)

  1. 自動実行用にcronジョブを設定するかどうかを決定します。
  2. cron スケジュールを指定します。
    • 形式: * * * * * ( 分、時、「月の日」、月、「曜日」)。
    • 毎日午前 2 時の実行の例: 0 2 * * *
    • スケジュール ログを確認するために、スケジュールが設定されるとすぐにファイル 'procore_scheduling.log' が作成されます。

また、ターミナルコマンドで実行してスケジュールを確認することもできます。

LinuxおよびMacOSの場合:

編集/削除 - 以下を使用してスケジューリングcronを編集します。

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

  • 上記のコマンドを実行すると、次のようなものが表示されます。
  • 2 * * * * /ユーザー/your_user/スノーフレーク/venv/bin/python /ユーザー/your_user/スノーフレーク/sql_server_python/connection_config.py 2>&1 |行を読み取っている間。do echo "$(日付) - $line";完了 >> /ユーザー/your_user/snowflake/sql_server_python/procore_scheduling.log # procore-data-import
  • また、schedule cron を調整したり、行全体を削除したりして、スケジュールによる実行を停止することもできます。

Windowsの場合:

  • スケジュール タスクが作成されたことを確認します。
    '''PowerShell
    schtasks /query /tn "ProcoreDeltaShareScheduling" /fo LIST /v

    ```
  • 編集/削除 - タスクのスケジュール設定:
    タスクスケジューラを開きます。
    • Win + Rを押し、taskschd.mscと入力し、と入力し、Enter キーを押します。
    • スケジュールされたタスクに移動します。
    • 左側のウィンドウで、[タスク スケジューラ ライブラリ] を展開します。
    • タスクが保存されているフォルダを探します (例: タスク スケジューラ ライブラリまたはカスタム フォルダ)。
  • タスクを見つける:
    • タスク名 ProcoreDeltaShareScheduling を探します。
    • それをクリックすると、下部のペインに詳細が表示されます。
  • スケジュールを確認します。
    • [トリガー] タブをチェックして、タスクがいつ実行されるかを確認します。
    • [履歴] タブをチェックして、最近の実行を確認します。
  • タスクを削除するには:
    • GUI からタスクを削除します。

即時実行の質問:

  • 設定後すぐにデータをコピーするためのスクリプトを実行するオプション。
  • config.yaml を生成した後、CLIは、パッケージに応じて、データをコピーするためのスクリプトを実行することで、いつでも個別に実行する準備ができています。以下の例を参照してください。
    Python delta_share_to_azure_panda.py
    又は
    Python delta_share_to_SQL_spark.py
    又は
    パイソンdelta_share_to_azure_dfs_spark.py

実行と保守

一般的な問題と解決策

  1. cronジョブのセットアップ:
    • システム権限が正しく設定されていることを確認します。
    • ジョブの実行に失敗した場合は、システムログを確認します。
    • スクリプト delta_share_to_azure_panda.pyに実行権限があることを確認します。
  2. 構成ファイル:
    • config.yaml ファイルがスクリプトと同じディレクトリにあることを確認します。
    • 変更を加える前にファイルをバックアップしてください。

サポート

さらにヘルプが必要な場合:

  1. スクリプト ログで詳細なエラー メッセージを確認します。
  2. config.yaml ファイルに設定ミスがないか再確認してください。
  3. 権限関連の問題については、システム管理者に問い合わせてください。
  4. Delta Share アクセスに関連する問題については、Procore サポートにお問い合わせください。
  5. 失敗したテーブルのログを確認する: failed_tables.log

  1. 変更を加える前に、必ず構成ファイルをバックアップしてください。
  2. 中断を防ぐために、非運用環境で新しい構成をテストします。

 

Spark を使用した ADLS への接続

概要

このガイドでは、Windows オペレーティング システムでデルタ共有統合パッケージを設定して使用し、Procore アナリティクスを使用してワークフローにデータをシームレスに統合するための詳細な手順について説明します。このパッケージは複数の実行オプションをサポートしているため、必要な構成と統合方法を選択できます。

前提条件

先に進む前に、次のものがあることを確認してください。

  • Procore アナリティクス 2.0 SKU
  • Delta Sharing pofile ファイル:
    Delta Sharing 資格情報 を含む *.share ファイルを取得します。便宜上、パッケージディレクトリにコピーしてください。
  • Python 環境: Python 3 と pip をシステムにインストールします。

 

ステップ

パッケージを準備する

  1. JSON 形式の Delta Share 資格情報を使用して 、config.share という名前の新しいファイルを作成します。

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

  1. 必須フィールドを取得します。
    手記: これらの詳細は、Procore アナリティクス ウェブ アプリケーションから取得できます。
    • ShareCredentialsVersion: バージョン番号 (現在は 1)。
    • BearerToken: Delta Share アクセス トークン。
    • エンドポイント: Delta Share エンドポイント URL。
  2. パッケージをダウンロードして解凍します。
  3. 任意のディレクトリにパッケージを解凍します。
  4. *.share Delta Sharing プロファイル ファイルをパッケージ ディレクトリにコピーして、簡単にアクセスできるようにします。
    analytics-sql-windows2.png

依存関係のインストール

  1. パッケージディレクトリでターミナルを開きます。
  2. 次のコマンドを実行して、依存関係をインストールします。
  3. pip install -r requirements.txtを実行します

コンフィギュレーションの生成

  1. python user_exp.py を実行して config.yaml ファイルを生成します。
    このスクリプトは、必要な資格情報と設定を含む config.yaml ファイルを生成するのに役立ちます。
  2. データ ソースを構成するときに、次の情報を提供するように求められます。
    • テーブルのリスト (カンマ区切り)。
    • すべてのテーブルを同期するには、空白のままにします。
      例: 'table1, table2, table3'
    • 「config.share」へのパスファイル。
  3. 初めて、Delta Share ソース構成の場所、テーブル、データベース、ホストなどの資格情報を指定します。
    手記:その後、手動で、またはpython user_exp.pyを実行して、構成を再利用または更新できます。

cron ジョブと即時実行の構成 (オプション)

  1. 自動実行用にcronジョブを設定するかどうかを決定します。
  2. cron スケジュールを指定します。
    • 形式: * * * * * ( 分、時、「月の日」、月、「曜日」)。
    • 毎日午前 2 時の実行の例: 0 2 * * *
    • スケジュール ログを確認するために、スケジュールが設定されるとすぐにファイル 'procore_scheduling.log' が作成されます。

また、ターミナルコマンドで実行してスケジュールを確認することもできます。

LinuxおよびMacOSの場合:

編集/削除 - 以下を使用してスケジューリングcronを編集します。

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

  • 上記のコマンドを実行すると、次のようなものが表示されます。
  • 2 * * * * /ユーザー/your_user/スノーフレーク/venv/bin/python /ユーザー/your_user/スノーフレーク/sql_server_python/connection_config.py 2>&1 |行を読み取っている間。do echo "$(日付) - $line";完了 >> /ユーザー/your_user/snowflake/sql_server_python/procore_scheduling.log # procore-data-import
  • また、schedule cron を調整したり、行全体を削除したりして、スケジュールによる実行を停止することもできます。

Windowsの場合:

  • スケジュール タスクが作成されたことを確認します。
    '''PowerShell
    schtasks /query /tn "ProcoreDeltaShareScheduling" /fo LIST /v

    ```
  • 編集/削除 - タスクのスケジュール設定:
    タスクスケジューラを開きます。
    • Win + Rを押し、taskschd.mscと入力し、と入力し、Enter キーを押します。
    • スケジュールされたタスクに移動します。
    • 左側のウィンドウで、[タスク スケジューラ ライブラリ] を展開します。
    • タスクが保存されているフォルダを探します (例: タスク スケジューラ ライブラリまたはカスタム フォルダ)。
  • タスクを見つける:
    • タスク名 ProcoreDeltaShareScheduling を探します。
    • それをクリックすると、下部のペインに詳細が表示されます。
  • スケジュールを確認します。
    • [トリガー] タブをチェックして、タスクがいつ実行されるかを確認します。
    • [履歴] タブをチェックして、最近の実行を確認します。
  • タスクを削除するには:
    • GUI からタスクを削除します。

即時実行の質問:

  • 設定後すぐにデータをコピーするためのスクリプトを実行するオプション。
  • config.yaml を生成した後、CLIは、パッケージに応じて、データをコピーするためのスクリプトを実行することで、いつでも個別に実行する準備ができています。以下の例を参照してください。
    Python delta_share_to_azure_panda.py
    又は
    Python delta_share_to_SQL_spark.py
    又は
    パイソンdelta_share_to_azure_dfs_spark.py

実行と保守

一般的な問題と解決策

  1. cronジョブのセットアップ:
    • システム権限が正しく設定されていることを確認します。
    • ジョブの実行に失敗した場合は、システムログを確認します。
    • スクリプト delta_share_to_azure_panda.pyに実行権限があることを確認します。
  2. 構成ファイル:
    • config.yaml ファイルがスクリプトと同じディレクトリにあることを確認します。
    • 変更を加える前にファイルをバックアップしてください。

サポート

さらにヘルプが必要な場合:

  1. スクリプト ログで詳細なエラー メッセージを確認します。
  2. config.yaml ファイルに設定ミスがないか再確認してください。
  3. 権限関連の問題については、システム管理者に問い合わせてください。
  4. Delta Share アクセスに関連する問題については、Procore サポートにお問い合わせください。
  5. 失敗したテーブルのログを確認する: failed_tables.log

  1. 変更を加える前に、必ず構成ファイルをバックアップしてください。
  2. 中断を防ぐために、非運用環境で新しい構成をテストします。

 

Data Factory を使用して Fabric Lakehouse に接続する

概要

Delta Sharing を Microsoft Fabric Data Factory と統合すると、Procore Analytics 2.0 を使用した分析ワークフローで共有 Delta テーブルにシームレスにアクセスして処理できるようになります。Delta Sharingは、安全なデータコラボレーションのためのオープンプロトコルであり、組織が重複することなくデータを共有できるようにします。

前提条件

  • Procore アナリティクス 2.0 SKU
  • Delta Sharing 資格情報:
    • データ プロバイダーから share.json (または同等の) Delta Sharing 資格情報 ファイルを取得します。
    • このファイルには、次のものが含まれている必要があります。
      • エンドポイント URL: Delta Sharing Server の URL。
      • ベアラートークン: 安全なデータアクセスに使用されます。
  • Microsoft ファブリックのセットアップ:
    • アクティブなサブスクリプションを持つMicrosoft Fabricテナント アカウント。
    • Microsoft Fabric 対応ワークスペースへのアクセス。

ステップ

Data Factory エクスペリエンスに切り替える

  1. Microsoft Fabric ワークスペースに移動します。
    clipboard_efd065fed3e214b84c9b311d011d8ae67.png
     
  2. [ 新規] を選択し、[ Dataflow Gen2] を選択します。
    clipboard_e73cb72aa551cc8730795b5bd53bb8a7a.png

データフローの設定

  1. データフローエディターに移動します。
  2. [ データを取得する ] をクリックし、[ その他] を選択します。
  3. [新しいソース] で、データ ソースとして [Delta Sharing Other] を選択します。
    clipboard_efb6b95e01a2211ba291f186035b8b4ab.png
  4. 次の詳細を入力します。
    • URL: Delta Sharing 構成ファイルから。
    • ベアラー トークン: config.share ファイルにあります。
      clipboard_eb997dd0c67cf6e2bcf47cfc9d7e5d71c.png
  5. [ 次へ ] をクリックし、目的のテーブルを選択します。
  6. [ 作成 ] をクリックしてセットアップを完了します。

データ変換の実行

データフローを設定したら、共有デルタデータに変換を適用できるようになりました。以下のリストから [Delta Sharing Data] オプションを選択します。

  • データ送信先を追加
  • レイクハウスを作成/開く

データ送信先を追加

  1. Data Factory に移動します。
  2. [Add Data Destination] をクリックします。
  3. ターゲットとして 「Lakehouse 」を選択し、「 次へ」をクリックします。
  4. 宛先ターゲットを選択し、[ 次へ] をクリックして確定します。

レイクハウスの作成-オープン

  1. レイクハウスを作成して開き、[データを取得する]をクリックします。
  2. [新しいデータフロー Gen2] を選択します。
  3. [ データの取得]、[ その他 ] の順にクリックして、[ Delta Sharing] を見つけます。
  4. config.share ファイルから URL ベアラー トークンを入力し、 [ Next] を選択します。
  5. ダウンロードするデータ/テーブルを選択し、[次へ] をクリックします
  6. これらの操作の後、選択したすべてのデータが Fabric Lakehouse にあるはずです。

検証と監視

データパイプラインとフローをテストして、円滑な実行を確保します。データ内で監視ツールを使用する
各アクティビティの進行状況とログを追跡するファクトリ。

Fabric ノートブックを使用した Fabric Lakehouse への接続

概要

Microsoft Fabric の Data Factory を Delta Sharing と共に使用すると、Procore アナリティクス 2.0 による分析ワークフローの一部として、共有 Delta テーブルのシームレスな統合と処理が可能になります。Delta Sharing は、安全なデータ共有のためのオープン プロトコルであり、データを複製することなく組織間のコラボレーションを可能にします。

このガイドでは、Delta Sharing を使用して Fabric で Data Factory を設定して使用し、ノートブックを使用してデータを処理してレイクハウスにエクスポートする手順について説明します。

前提条件

  • Procore アナリティクス 2.0 SKU
  • Delta Sharing 資格情報:
    • データ プロバイダーによって提供される Delta Sharing 資格情報へのアクセス。
    • 共有プロファイル ファイル (config.share)含有:
      • エンドポイント URL (Delta Sharing Server URL)。
      • アクセストークン(安全なデータアクセスのためのベアラートークン)。
  • 特定の認証情報を使用して config.yaml ファイルを作成します。
  • Microsoftファブリック環境:
    • アクティブなサブスクリプションを持つMicrosoft Fabricテナント アカウント。
    • ファブリック対応のワークスペース。
  • パッケージとスクリプト:
    • fabric-lakehouse パッケージをダウンロードします。ディレクトリには次のものが含まれている必要があります。
      • ds_to_lakehouse.py:ノートブック コード。
      • readme.md:指示。

ステップ

構成のセットアップ

  1. config.yaml を作成します ファイルを作成し、次の構造で構成を定義します
    source_config:
    config_path: path/to/your/delta-sharing-credentials-file.share
    tables: # オプション - すべてのテーブルを処理するには空のままにします
    - table_name1
    - table_name2
    target_config:
    lakehouse_path: path/to/your/fabric/lakehouse/tables/ # ファブリックのレイクハウスへのパス

レイクハウスをセットアップする

  1. Microsoft Fabric ワークスペースを開きます。
  2. Lakehouse に移動し、[ ノートブックを開く]、[ 新しいノートブック] の順にクリックします。
  3. config.yaml#lakehouse_pathの値がわからない場合は、画面からコピーできます。
  4. [ファイル] の省略記号をクリックし、[ABFS パスのコピー] を選択します。
    clipboard_e5dd266d8c6a622cceb30dd893a9106d7.png
    clipboard_e08827dbe6aeae6ac8f2bec7f5c758325.png
    clipboard_e390331535300f7f89fd0a91c9a3adebe.png

3. ds_to_lakehouse.py のコードをコピーしてノートブックウィンドウに貼り付けます(Pyspark Python)。

clipboard_e5b5d27813f9bebdfbe7dae73291cb3ae.png

次のステップは、独自のconfig.yamlとconfig.shareをLakehouseの Resources フォルダーにアップロードすることです。独自のディレクトリを作成するか、組み込み ディレクトリ( Lakehouseによってリソース用にすでに作成されています)を使用できます。


clipboard_eb5765c4bbf3ac93bd7c51ba6373f8049.png
clipboard_e86d913b62d37d237524537676680e4f3.png

以下の例は、 config.yaml ファイルの標準 の組み込み ディレクトリを示しています。
注: 両方のファイルを同じレベルにアップロードし、 プロパティ config_pathにアップロードしてください。

clipboard_e8ca378a5a0937b4b675d00adc2ec965f.png

4. ノートブックのコード、170 行目から 175 行目を確認します。
以下の例は、必要な行の変更を示しています。

config_path = "./env/config.yaml"

宛先

config_path = "./builtin/config.yaml"

ファイルはカスタム環境ではなく組み込みフォルダーにあるため、ファイルの独自の構造を必ず監視してください。別のフォルダーにアップロードすることもできますが、そのような場合は、ノートブックのコードを更新して config.yaml ファイルを正しく見つけてください。
 

clipboard_e44e5ad3be4a06929aba88716b0fdaa23.png

5. [セルの実行]をクリックします。


clipboard_e381c59ce2e4e9471efc0e9e4cc663b6d.png

検証

  • ジョブが完了したら、データがレイクハウスに正常にコピーされたことを確認します。
  • 指定したテーブルを確認し、データが共有 Delta テーブルと一致することを確認します。
  • ジョブが終了するまで待つと、すべてのデータがコピーされます。

Azure Functions を使用して SQL Server に接続する

概要

このガイドでは、Delta Sharing データを Procore Analytics と統合するための Azure 関数の設定とデプロイについて説明します。Azure 関数を使用すると、Delta Sharing プロファイルを使用した効率的なデータ処理と共有ワークフローが可能になります。

前提条件

  • Procore アナリティクス 2.0 SKU。
  • Delta Sharing プロファイル ファイル:
    • Delta Sharing 資格情報 を含む *.share ファイル。便宜上、ダウンロードしたパッケージ内に配置してください。
    • Python環境:
      • システムにPython3.9+と pip をインストールしました。
  • Azure のセットアップ:
    • Azure CLI がインストールされ、ログインしています。
    • Azure Functions Core Tools がインストールされていること。

ステップ

パッケージを準備する

  1. 必要なパッケージ (adls_azure_function または sql_server_azure_function) をダウンロードします。
  2. パッケージファイルをローカルディレクトリに抽出します。
  3. Delta Sharing ファイルを配置します。
    • *.share Delta Sharing プロファイル ファイルを抽出したディレクトリにコピーします。

依存関係のインストール

  1. パッケージディレクトリでターミナルを開きます。
  2. 次のコマンドを実行して、必要な Python 依存関係をインストールします。
    • pip install -r requirements.txtを実行します

コンフィギュレーションの生成

  1. 次のコマンドを実行して、config.yaml ファイルを生成します。
    • Python user_exp.py
  2. スクリプトでは、次のような資格情報を入力するように求められます。
    • テーブル
    • データベース名
    • ホスト
    • 追加の資格情報..
  3. 構成は、手動で、または python user_exp.py を再実行することで、再利用または更新できます。

 Azure CLI のセットアップ

  1. Azure にログインします。
  2. 次のコマンドを実行してログインします。
    az ログイン
  3. Azure アカウントを確認します。
    • azアカウント表示
    • az コマンドが使用できない場合は、Microsoft Learn の手順に従って Azure CLI をインストールします。

Azure Functions Core Tools をインストールする

行きます

Azure Functions Core Tools のインストール手順については、「」を参照してください。

Azure 関数を準備する

  1. 代わりに、以下を作成するには:
    • 関数アプリ
    • リソース グループ
    • 従量課金プラン
    • ストレージ アカウント
  2. カスタムCronスケジュールを設定します(オプション)。
    • エディタでfunction_app.pyを開きます。
    • 次の行を見つけます: @app.timer_trigger(schedule="00 */8 * * *"、
  3. スケジュールをカスタムCron式に置き換えて、ファイルを保存します。

配備

  1. パッケージディレクトリ(adls_azure_function)でターミナルを開きます。
  2. 次のデプロイ コマンドを実行します。
    • func azure functionapp publish <FunctionAppName> --build remote --python --clean
  3. <FunctionAppName> は、Azure サブスクリプション内の Azure 関数アプリの名前に置き換えます。

検証

  • Azure Portal で関数アプリの状態を確認して、デプロイが成功したことを確認します。
  • ログを監視して、関数が期待どおりに実行されていることを確認します。

Data Factory を使用した SQL Server への接続

概要

このドキュメントでは、Delta Share から SQL ウェアハウスにデータを転送するために Microsoft Fabric でデータ パイプラインを設定する手順について説明します。この構成により、Delta Lake ソースと SQL 宛先間のシームレスなデータ統合が可能になります。

前提条件

  • 適切なアクセス許可を持つアクティブな Microsoft ファブリック アカウント。
  • Delta Share の資格情報。
  • SQL ウェアハウスの資格情報。
  • ファブリック内のデータ フロー Gen2 へのアクセス。

ステップ

Access Data Flow Gen2

  1. Microsoft Fabricアカウントにログインします。
  2. ワークスペースに移動します。
  3. 使用可能なオプションから [データ フロー Gen2] を選択します。

データ・ソースの構成

  1. 「別のソースからのデータ」をクリックして設定を開始します。
  2. [データの取得] 画面で、次の操作を行います。
    • [データ ソースの選択] というラベルの付いた検索バーを見つけます。
    • 検索フィールドに「差分共有」と入力します。
    • 結果から [Delta Sharing] を選択します。

デルタ共有接続の設定

  1. プロンプトが表示されたら、Delta Share の認証情報を入力します。
    • すべての必須フィールドに正確に入力されていることを確認します。
    • 可能であれば、接続を検証します。
  2. 「次へ」をクリックして次に進みます。
  3. 使用可能なテーブルのリストを確認します。
    • アクセスできるすべてのテーブルが表示されます。
    • 転送するテーブルを選択します。

データ送信先の構成

  1. 「Add Data Destination」をクリックします。
  2. 宛先として [SQL ウェアハウス] を選択します。
  3. SQL 資格情報を入力します。
    • サーバーの詳細。
    • 認証情報。
    • データベースの仕様。
    • 接続設定を確認します。

ファイナライズとデプロイ

  1. すべての構成を確認します。
  2. [公開] をクリックしてデータ フローをデプロイします。
  3. 確認メッセージが表示されるのを待ちます。

検証

  1. SQL ウェアハウスにアクセスします。
  2. データが使用可能であり、適切に構造化されていることを確認します。
  3. テスト クエリを実行して、データの整合性を確認します。

トラブルシューティング

一般的な問題と解決策:

  • 接続エラー: 資格情報とネットワーク接続を確認します。
  • 不足しているテーブル: 差分共有のアクセス許可を確認します。
  • パフォーマンスの問題: リソースの割り当てと最適化の設定を確認します。

Fabric Notebook を使用した SQL Server への接続

概要

Microsoft Fabric の Data Factory を Delta Sharing と共に使用すると、Procore アナリティクス 2.0 による分析ワークフローの一部として、共有 Delta テーブルのシームレスな統合と処理が可能になります。Delta Sharing は、安全なデータ共有のためのオープン プロトコルであり、データを複製することなく組織間のコラボレーションを可能にします。

このガイドでは、Delta Sharing を使用して Fabric で Data Factory を設定して使用し、ノートブックを使用してデータを処理してレイクハウスにエクスポートする手順について説明します。

前提条件

  • Procore アナリティクス 2.0 SKU
  • Delta Sharing 資格情報:
    • データ プロバイダーによって提供される Delta Sharing 資格情報へのアクセス。
    • 共有プロファイル ファイル (config.share)含有:
      • エンドポイント URL (Delta Sharing Server URL)。
      • アクセストークン(安全なデータアクセスのためのベアラートークン)。
  • 特定の認証情報を使用して config.yaml ファイルを作成します。
  • Microsoftファブリック環境:
    • アクティブなサブスクリプションを持つMicrosoft Fabricテナント アカウント。
    • ファブリック対応のワークスペース。
  • パッケージとスクリプト:
    • fabric-lakehouse パッケージをダウンロードします。ディレクトリには次のものが含まれている必要があります。
      • ds_to_lakehouse.py:ノートブック コード。
      • readme.md:指示。

ステップ

構成のセットアップ

  1. config.yaml を作成します ファイルを作成し、次の構造で構成を定義します
    source_config:
    config_path: path/to/your/delta-sharing-credentials-file.share
    tables: # オプション - すべてのテーブルを処理するには空のままにします
    - table_name1
    - table_name2
    target_config:
    lakehouse_path: path/to/your/fabric/lakehouse/tables/ # ファブリックのレイクハウスへのパス

レイクハウスをセットアップする

  1. Microsoft Fabric ワークスペースを開きます。
  2. Lakehouse に移動し、[ ノートブックを開く]、[ 新しいノートブック] の順にクリックします。
  3. config.yaml#lakehouse_pathの値がわからない場合は、画面からコピーできます。
  4. [ファイル] の省略記号をクリックし、[ABFS パスのコピー] を選択します。
    clipboard_e5dd266d8c6a622cceb30dd893a9106d7.png
    clipboard_e08827dbe6aeae6ac8f2bec7f5c758325.png
    clipboard_e390331535300f7f89fd0a91c9a3adebe.png

3. ds_to_lakehouse.py のコードをコピーしてノートブックウィンドウに貼り付けます(Pyspark Python)。

clipboard_e5b5d27813f9bebdfbe7dae73291cb3ae.png

次のステップは、独自のconfig.yamlとconfig.shareをLakehouseの Resources フォルダーにアップロードすることです。独自のディレクトリを作成するか、組み込み ディレクトリ( Lakehouseによってリソース用にすでに作成されています)を使用できます。


clipboard_eb5765c4bbf3ac93bd7c51ba6373f8049.png
clipboard_e86d913b62d37d237524537676680e4f3.png

以下の例は、 config.yaml ファイルの標準 の組み込み ディレクトリを示しています。
注: 両方のファイルを同じレベルにアップロードし、 プロパティ config_pathにアップロードしてください。

clipboard_e8ca378a5a0937b4b675d00adc2ec965f.png

4. ノートブックのコード、170 行目から 175 行目を確認します。
以下の例は、必要な行の変更を示しています。

config_path = "./env/config.yaml"

宛先

config_path = "./builtin/config.yaml"

ファイルはカスタム環境ではなく組み込みフォルダーにあるため、ファイルの独自の構造を必ず監視してください。別のフォルダーにアップロードすることもできますが、そのような場合は、ノートブックのコードを更新して config.yaml ファイルを正しく見つけてください。
 

clipboard_e44e5ad3be4a06929aba88716b0fdaa23.png

5. [セルの実行]をクリックします。


clipboard_e381c59ce2e4e9471efc0e9e4cc663b6d.png

検証

  • ジョブが完了したら、データがレイクハウスに正常にコピーされたことを確認します。
  • 指定したテーブルを確認し、データが共有 Delta テーブルと一致することを確認します。
  • ジョブが終了するまで待つと、すべてのデータがコピーされます。

 

Databricks に接続する

 
この接続方法は、通常、データの専門家によって使用されます。
  1. Databricks 環境にログインします。
  2. [カタログ] セクションに移動します。
  3. トップ メニューから [Delta Sharing] を選択します。
  4. [ 自分と共有] を選択します。 
  5. 提供された 共有識別子をコピーします。
    analytics-delta-sharing1.png
  6. 共有識別子を Procore サポート チームと共有します。
    手記:共有識別子が Procore のシステムに追加されると、Procore Databricks 接続が Databricks 環境の [プロバイダー] の下の [自分と共有] タブに表示されます。データが表示されるまでに最大 24 時間かかる場合があります。
    analytics-delta-sharing2.png
  7. Procore Databricks 接続が [自分と共有 ] タブに表示されるようになったら、[Procore 識別子] を選択し、[カタログの作成] をクリックします。
  8. 共有カタログの任意の名前を入力し、[ 作成] をクリックします。
    analytics-delta-sharing3.png
  9. 共有カタログとテーブルは、指定された名前で 「カタログエクスプローラ」(Catalog Explorer)
    analytics-delta-sharing4.png

ご質問やサポートが必要な場合は、Procore サポートまでご連絡ください。

Pythonを使用したSnowflakeへの接続

概要

Procore Analytics Cloud Connect Access ツールは、Procore から Snowflake へのデータ転送の構成と管理に役立つコマンドラインインターフェイス (CLI) です。

これは、次の 2 つの主要コンポーネントで構成されています。

  • user_exp.py:構成セットアップ ユーティリティ
  • ds_to_snowflake.py:データ同期スクリプト

前提条件

  • Pythonがシステムにインストールされている
  • Procore Delta Share へのアクセス
  • Snowflakeアカウントの認証情報
  • 以下を使用して、必要な依存関係をインストールします。
    • pip install -r requirements.txtを実行します

ステップ

初期設定

python user_exp.pyを使用して設定ユーティリティを実行します。

データ同期

構成後、データ同期を実行するには次の 2 つのオプションがあります。

  • 直接実行:
    • Python ds_to_snowflake.py
  • スケジュールされた実行
    • セットアップ時に設定した場合、ジョブは Cron スケジュールに従って自動的に実行されます。
    • スケジュールログを確認するために、スケジュールが設定されるとすぐにファイル 「procore_scheduling.log」 が作成されます。
    • また、ターミナルコマンドで実行してスケジュールを確認することもできます。

LinuxおよびMacOSの場合:

  • 編集/削除 - 以下を使用してスケジューリングcronを編集します。

    '''bash

    EDITOR=nano crontab -e

    ```

  • 上記のコマンドを実行すると、次のようなものが表示されます。

    2 * * * *
    /ユーザー/your_user/snowflake/venv/bin/python

     
    /ユーザー/your_user/snowflake/sql_server_python/connection_config.py
    2>&1 |行を読み取っている間。do echo "$(日付) - $line";これで完了です>>

     
    /Users/your_user/snowflake/sql_server_python/procore_scheduling.log # procore-data-import

     
  • また、schedule cron を調整したり、行全体を削除したりして、スケジュールによる実行を停止することもできます。

Windowsの場合:

  • スケジュール タスクが作成されていることを確認します。

    ```
    PowerShellの

    schtasks /query /tn "ProcoreDeltaShareScheduling" /fo LIST /v

    ```

  • スケジューリングタスクを編集/削除するには、タスクスケジューラを開きます。
  • Win + Rを押し、 taskschd.mscと入力し、と入力し、[Enter]を押します。
  • スケジュールされたタスクに移動します。
  • 左側のウィンドウで、[タスク スケジューラ ライブラリ] を展開します。
  • タスクが保存されているフォルダを探します。
    例: タスク スケジューラ ライブラリまたはカスタム フォルダー。
  • タスクを見つけます。
  • タスク名 ProcoreDeltaShareScheduling を探します
  • それをクリックすると、下部のペインに詳細が表示されます。
  • スケジュールを確認します。
    • [トリガー] タブをチェックして、タスクがいつ実行されるかを確認します。
    • [履歴] タブをチェックして、最近の実行を確認します。
  • タスクを削除するには:
    • GUI からタスクを削除します。

デルタ共有の構成

  • config.shareファイルの作成
  • 構成ユーティリティを実行する前に、Delta Share 資格情報を使用して config.share ファイルを作成する必要があります。ファイルはJSON形式である必要があります。

    {

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

    }

     

  • 必須フィールド:
    • ShareCredentialsVersion: バージョン番号 (現在は 1)。
    • BearerToken: Delta Share アクセス トークン。
    • エンドポイント: Delta Share エンドポイント URL。
    • これらの詳細は、Procore Web UI から取得できます。
  • config.shareを作成する手順:
    • config.share という名前の新しいファイルを作成します。
    • 上記の JSON テンプレートをコピーします。
    • プレースホルダーの値を実際の資格情報に置き換えます。
    • ファイルを安全な場所に保存します。
    • 構成時に、このファイルへのパスを指定する必要があります。データ ソースを構成するときに、次の情報を提供するように求められます。
      • テーブルのリスト (カンマ区切り)。
      • すべてのテーブルを同期するには、空白のままにします。
      • 例: table1、table2、table3。
  • config.share ファイルへのパス。

Snowflakeの構成

次のSnowflakeの詳細を提供する必要があります。

  • 認証 (いずれか選択):
    • ユーザー認証
      • ユーザー名
      • パスワード(安全に入力)
  • キーペア認証
    • ユーザー名
    • 秘密キーのファイルパス
    • 秘密鍵ファイルのパスワード
  • 接続の詳細:
    • アカウント識別子
    • 倉庫名
    • データベース名
    • スキーマ名
    • 同時スレッドの数

スケジュール オプション

このツールには、自動データ同期をスケジュールする機能があります。

  • cronジョブの構成
    • 日次ジョブを設定するかどうかを選択する
    • 「はい」の場合は、cron スケジュールを指定します
    • 形式: * * * * * (分、時間、日、月、日、曜日)
    • 毎日午前 2 時の例: 0 2 * * *
  • 即時実行 
    • 設定後すぐにds_to_snowflake.pyを実行するオプション
  • ファイル構造

    解除
    ├── requirements.txt# 依存関係
    ├── user_exp.py# 設定ユーティリティ
    ├── ds_to_snowflake.py# データ同期スクリプト
    ├── config.yaml# 生成された設定
    ├── config.share# Delta Share 構成ファイル
    ├── procore_scheduling.log# スケジューリング実行のログ


    使用例
    • ステップ 1: 依存関係をインストールする
      $ pip install -r requirements.txt
    • ステップ2:構成ユーティリティを実行する
      $ python user_exp.py 
    • Procore アナリティクス クラウド コネクトへのアクセス 
      • この CLI は、Procore データをSnowflakeにアクセス/書き込みするためのソースストアとデスティネーションストアを選択するのに役立ちます。
      • [Enter]を押して続行します。
      • テーブルのリストを (コンマ区切りで) 入力し、すべてのテーブル (projects、users、tasks) を空白のままにします。
      • config.shareへのパスを入力します。/path/to/config.shareです。
      • ユーザー名に「snowflake_user」と入力します。
      • どの認証タイプを使用しますか?(ユーザー/key_pair): 入力します。
      • ユーザーの場合は 1、
      • キーペアの場合は 2:
      • パスワードを入力してください:********
      • アカウントを入力:my_account
      • 入庫: my_warehouse
      • Enter database name: procore_db (データベース名を入力:
      • スキーマ名を入力: procore_schema
      • スレッド数を入力してください: 4
      • これをcronの日常のジョブとして構成しますか?(はい/いいえ):はい
      • スケジュールを cron 形式で入力します (例: * * * * * ): 0 2 * * *
      • ジョブを今すぐ実行しますか?(はい/いいえ):はい
    • ステップ 3: 手動実行 (必要な場合)
      $ pythonのds_to_snowflake.py 
  • 設定の再利用
    このツールは、構成を config.yaml ファイルに保存し、以前に保存した設定を再利用することを提案します。
    • ソース構成は再利用できます。
    • ターゲット(Snowflake)構成は再利用できます。
    • いずれかの構成を個別に更新することを選択できます。

ベストプラクティス

  • 認証
    • 可能な場合は、キーペア認証を使用します。
    • 資格情報を定期的にローテーションします。
    • 必要最小限の権限を使用します。
  • パフォーマンス
    • システムの機能に基づいてスレッド数を調整します。
    • テスト用のテーブルの小さなサブセットから始めます。

トラブルシューティング

  • 一般的な問題と解決策:
    • 無効な認証タイプ
      • プロンプトが表示されたら、必ず「1」(ユーザー)または「2」(key_pair)のいずれかを選択してください。
  • cronジョブのセットアップ
    • 適切なシステム権限があることを確認します。
    • ジョブの実行に失敗した場合は、システムログを確認します。
    • ds_to_snowflake.pyに正しい権限があることを確認します。
    • システムログを確認して、cronジョブの設定を確認します。
      「procore_scheduling.log」ファイルを参照してください。
  • 構成ファイル
    • スクリプトと同じディレクトリにあり、
    • 名前は config.yaml です。
    • 変更を加える前にバックアップしてください。
  • サポート
    • スクリプトのログ出力を確認します。
    • config.yaml ファイルを確認します。
    • 権限関連の問題については、システム管理者に問い合わせてください。
    • Delta Share アクセスの問題について、Procore サポートにお問い合わせください。

手記: 変更を加える前に必ず構成をバックアップし、最初に非運用環境で新しい構成をテストすることを忘れないでください。
 

Python を使用して Amazon S3 に接続する

概要

Procore アナリティクス クラウド接続アクセスツールは、Procore アナリティクス 2.0 を使用して Procore から Amazon S3 へのデータ転送を設定および管理するのに役立つコマンドライン インターフェイス (CLI) です。

これは、次の 2 つの主要コンポーネントで構成されています。

  • user_exp.py:構成セットアップ ユーティリティ
  • delta_share_to_s3.py:データ同期スクリプト

前提条件

  • Procore アナリティクス 2.0 SKU
  • Pythonがシステムにインストールされている
  • Procore Delta Share へのアクセス
  • S3 アクセスキー
  • 以下を使用した必要な依存関係のインストール:
    • pip install -r requirements.txtを実行します

ステップ

初期設定

python user_exp.pyを使用して設定ユーティリティを実行します。

これは、次の設定に役立ちます。

  • デルタ共有の構成
  • S3 ターゲット設定
  • スケジュール設定

デルタ共有の構成

  • config.shareファイルの作成
  • 構成ユーティリティを実行する前に、Delta Share 資格情報を使用して config.share ファイルを作成する必要があります。ファイルはJSON形式である必要があります。

    {

    "shareCredentialsVersion":1、
    "bearerToken": "xxxxxxxxxxxxx",
    "エンドポイント": "xxxxxx"

    }

  • 必須フィールド:
    • ShareCredentialsVersion: バージョン番号 (現在は 1)。
    • BearerToken: Delta Share アクセス トークン。
    • エンドポイント: Delta Share エンドポイント URL。
    • これらの詳細は、Procore Web UI から取得できます。
  • config.shareを作成する手順:
    • config.share という名前の新しいファイルを作成します。
    • 上記の JSON テンプレートをコピーします。
    • プレースホルダーの値を実際の資格情報に置き換えます。
    • ファイルを安全な場所に保存します。
    • 構成時に、このファイルへのパスを指定する必要があります。データ ソースを構成するときに、次の情報を提供するように求められます。
      • テーブルのリスト (カンマ区切り)。
      • すべてのテーブルを同期するには、空白のままにします。
      • 例: table1、table2、table3。
  • config.share ファイルへのパス。

S3 設定

次の S3 の詳細を指定する必要があります。

  • 認証:
    • アクセスキー
    • 秘密鍵
    • s3:// を含まないバケット名
    • key - ディレクトリ

スケジュール オプション

このツールには、自動データ同期をスケジュールする機能があります。

  • cronジョブの構成
    • 日次ジョブを設定するかどうかを選択します。
    • 「はい」の場合は、cron スケジュールを指定します。
    • 形式: * * * * * (分、時間、日、月、日、曜日)。
    • 毎日午前 2 時の例: 0 2 * * *
    • スケジュールログを確認するために、スケジュールが設定されるとすぐにファイル 「procore_scheduling.log」が作成されます。

ターミナルコマンドで実行してスケジュールを確認することもできます

LinuxおよびMacOSの場合:

編集/削除 - 以下を使用してスケジューリングcronを編集します。

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

  • 上記のコマンドを実行すると、次のようなものが表示されます。
  • 2 * * * * /ユーザー/your_user/スノーフレーク/venv/bin/python /ユーザー/your_user/スノーフレーク/sql_server_python/connection_config.py 2>&1 |行を読み取っている間。do echo "$(日付) - $line";完了 >> /ユーザー/your_user/snowflake/sql_server_python/procore_scheduling.log # procore-data-import
  • また、schedule cron を調整したり、行全体を削除したりして、スケジュールによる実行を停止することもできます。

Windowsの場合:

  • スケジュール タスクが作成されたことを確認します。
    '''PowerShell
    schtasks /query /tn "ProcoreDeltaShareScheduling" /fo LIST /v

    ```
  • 編集/削除 - タスクのスケジュール設定:
    タスクスケジューラを開きます。
    • Win + Rを押し、taskschd.mscと入力し、と入力し、Enter キーを押します。
    • スケジュールされたタスクに移動します。
    • 左側のウィンドウで、[タスク スケジューラ ライブラリ] を展開します。
    • タスクが保存されているフォルダを探します (例: タスク スケジューラ ライブラリまたはカスタム フォルダ)。
  • タスクを見つける:
    • タスク名 ProcoreDeltaShareScheduling を探します。
    • それをクリックすると、下部のペインに詳細が表示されます。
  • スケジュールを確認します。
    • [トリガー] タブをチェックして、タスクがいつ実行されるかを確認します。
    • [履歴] タブをチェックして、最近の実行を確認します。
  • タスクを削除するには:
    • GUI からタスクを削除します。
  • 即時実行 
    • delta_share_to_s3_.pyを実行するオプションファイル 構造
  • 解除

    ├── requirements.txt# 依存関係
    ├── user_exp.py# 設定ユーティリティ
    ├── delta_share_to_s3.py# データ同期スクリプト
    ├── config.yaml# 生成された設定
    ├── config.share# Delta Share 構成ファイル
    ├── procore_scheduling.log# スケジューリング実行のログ


    使用例
    • ステップ 1: 依存関係をインストールする
      $ pip install -r requirements.txt
    • ステップ2:構成ユーティリティを実行する
      $ python user_exp.py 
    • Procore アナリティクス クラウド コネクトへのアクセス 
      • この CLI は、Procore データを S3 にアクセス/書き込みするためのソースと宛先ストアを選択するのに役立ちます。
      • [Enter]を押して続行します。
      • テーブルのリストを (コンマ区切りで) 入力し、すべてのテーブル (projects、users、tasks) を空白のままにします。
      • config.shareへのパスを入力します。/path/to/config.shareです。
      • 「access key: s3 key」と入力します。
      • 「secret: secret」と入力します。
      • bucket: bucket name を入力します。
      • これをcronの日常のジョブとして構成しますか?(はい/いいえ):はい
      • スケジュールを cron 形式で入力します (例: * * * * * ): 0 2 * * *
      • ジョブを今すぐ実行しますか?(はい/いいえ):はい
    • ステップ 3: 手動実行 (必要な場合)
      $ pythonのdelta_share_to_s3.py 
  • 設定の再利用
    このツールは、構成を config.yaml ファイルに保存し、以前に保存した設定を再利用することを提案します。
    • ソース構成は再利用できます。
    • ターゲット(S3)構成は再利用できます。
    • いずれかの構成を個別に更新することを選択できます。

トラブルシューティング

一般的な問題と解決策:

  • cronジョブのセットアップ
    • システム権限が正しく設定されていることを確認します。
    • ジョブの実行に失敗した場合は、システムログを確認します。
    • スクリプトを確認する (delta_share_to_s3.py) 実行権限。
  • 構成ファイル
    • config.yaml ファイルがスクリプトと同じディレクトリにあることを確認します。
    • 変更を加える前にバックアップしてください。
  • サポート
    • スクリプト ログで詳細なエラー メッセージを確認します。
    • config.yaml ファイルの設定ミスを確認します。
    • 権限関連の問題については、システム管理者に問い合わせてください。
    • Delta Share アクセスの問題について、Procore サポートにお問い合わせください。
    • システムログをチェックしてcronジョブの設定を確認します:「 procore_scheduling_log」 ファイルを参照してください。

筆記:

  1. 変更を加える前に、必ず設定をバックアップしてください。
  2. まず、非運用環境で新しい構成をテストします。

独自の接続を構築する

概要

Delta Sharingは、安全なリアルタイムデータ共有のためのオープンプロトコルであり、組織が異なるコンピューティングプラットフォーム間でデータを共有できるようにします。このガイドでは、Delta Sharing を介してデータに接続してデータにアクセスするプロセスについて説明します。

Delta Sharing コネクタのオプション

  • Python コネクタ
  • Apache Spark コネクタ
  • 対話型シェルのセットアップ
  • スタンドアロン プロジェクトを設定する

Python コネクタ

Delta Sharing Python コネクタは、Delta Sharing サーバーからテーブルを読み取るための Delta Sharing Protocol を実装する Python ライブラリです。共有テーブルは、 pandas DataFrame として、または Apache Spark コネクタがインストールされた PySpark で実行されている場合は Apache Spark DataFrame として読み込むことができます。

システム要件

  • Python 3.8+ (デルタ共有バージョン 1.1+ 用)
  • Python 3.6+ (古いバージョンの場合)
  • Linux を実行している場合、glibc バージョン >= 2.31
  • delta-kernel-rust-sharing-wrapper パッケージの自動インストールについては、次のセクションで詳細を参照してください。

インストールプロセス

解除
pip3はデルタ共有をインストールします

  • Databricks Runtime を使用している場合は、Databricks ライブラリのドキュメントに従って、クラスターにライブラリをインストールできます。
  • delta-kernel-rust-sharing-wrapper のダウンロード中に問題が発生したためにこれが機能しない場合は、次のことを試してください。
    • python3バージョン> = 3.8を確認してください
    • pip3を最新バージョンにアップグレードします

共有データへのアクセス

コネクターは、 プロファイル ファイル (Delta Sharing サーバーにアクセスするためのユーザーの資格情報を含む JSON ファイル) に基づいて共有テーブルにアクセスします。開始するには、いくつかの方法があります。

始める前に

  • データ プロバイダーからプロファイル ファイルをダウンロードします。

共有データ・オプションへのアクセス

プロファイルファイルを保存したら、コネクターでそれを使用して共有テーブルにアクセスできます。

インポートdelta_sharing

  • プロファイル ファイルを指定します。これは、ローカル・ファイル・システム上のファイルでも、リモート・ストレージ上のファイルでもかまいません。
    • profile_file = "<profile-file-path> "
  • SharingClient を作成します。
    • クライアント = delta_sharing。SharingClient(profile_file)
  • すべての共有テーブルを一覧表示します。
    • client.list_all_tables()
  • 共有テーブルにアクセスするための URL を作成します。
  • テーブル・パスは、プロファイル・ファイル・パスの後に「#」とテーブルの完全修飾名が続きます。
  • (''<share-name>.<schema-name>.<table-name>') です。
    • table_url = profile_file + "#..<share-name> <schema-name><table-name>"
  • テーブルから 10 行をフェッチし、それを Pandas DataFrame に変換します。これは、メモリに収まらないテーブルからサンプルデータを読み取るために使用できます。
    • delta_sharing.load_as_pandas(table_url、制限= 10)
  • テーブルを Pandas DataFrame として読み込みます。これは、メモリに収まるテーブルを処理するために使用できます。
    • delta_sharing.load_as_pandas(table_url)
  • Delta 形式を使用してテーブルを Pandas DataFrame として明示的に読み込む
    • delta_sharing.load_as_pandas(table_url, use_delta_format = True)
  • コードが PySpark で実行されている場合は、'load_as_spark' を使用してテーブルを Spark DataFrame として読み込むことができます。
    • delta_sharing.load_as_spark(table_url)
  • テーブルが履歴共有をサポートしている場合 (OSS Delta Sharing Server では tableConfig.cdfEnabled=true)、コネクターはテーブルの変更をクエリできます。
  • バージョン 0 からバージョン 5 へのテーブルの変更を Pandas DataFrame として読み込みます。
    • delta_sharing.load_table_changes_as_pandas(table_url, starting_version=0, ending_version=5)
  • コードが PySpark で実行されている場合は、テーブルの変更を Spark DataFrame として読み込むことができます。
    • delta_sharing.load_table_changes_as_spark(table_url, starting_version=0, ending_version=5)

Apache Spark コネクタ

Apache Spark コネクタは、Delta Sharing Server から共有テーブルを読み取るための Delta Sharing Protocol を実装します。SQL、Python、Java、Scala、Rで使用できます。

システム要件

共有データへのアクセス

コネクタは、プロファイル ファイルからユーザー資格情報を読み込みます。

Apache Spark の構成

Delta Sharing コネクタを読み込むように Apache Spark を設定するには、次の 2 つの
方法:

  • 対話形式で実行する: Delta Sharing コネクタを使用して Spark シェル (Scala または Python) を起動し、シェルでコード スニペットを対話形式で実行します。
  • プロジェクトとして実行する: Delta Sharing コネクタを使用して Maven または SBT プロジェクト (Scala または Java) を設定し、コード スニペットをソース ファイルにコピーして、プロジェクトを実行します。

Databricks Runtime を使用している場合は、このセクションをスキップし、Databricks ライブラリのドキュメントに従ってクラスターにコネクタをインストールできます。

対話型シェルを設定する

Delta Sharing コネクタを Spark の Scala/Python シェル内で対話的に使用するには、次のようにシェルを起動します。

PySpark シェル

解除
pyspark --packages io.delta:delta-sharing-spark_2.12:3.1.0

 

Scala シェル

解除
bin/spark-shell --packages (ビン/スパークシェル --パッケージ)
io.delta:デルタ共有-spark_2.12:3.1.0

スタンドアロン プロジェクトを設定する

Maven Central Repository から Delta Sharing コネクタを使用して Java/Scala プロジェクトをビルドする場合は、次の Maven 座標を使用できます。

メイヴン

Delta Sharing コネクタを Maven プロジェクトに含めるには、POM ファイルに依存関係として追加します。Delta Sharing コネクタは Scala 2.12 でコンパイルされています。

<dependency>


<groupId>io.delta</groupId>


<artifactId>delta-sharing-spark_2.12</artifactId>


<version>3.1.0</version>


</dependency>