Openflow Connector for Box を設定する

注釈

コネクタには、 コネクタ利用規約 が適用されます。

このトピックでは、 Openflow Connector for Box を設定する手順について説明します。

前提条件

  1. Openflow Connector for Box について を確認してください。

  2. Openflowを設定した ことを確認します。

認証情報を取得する

Box開発者 または Box管理者 として、 Box プラットフォームアプリケーション を以下のように作成します。

  1. Box Developer Console に移動します。

  2. Create Platform App を選択します。

  3. アプリケーションタイプとして Custom App を選択します。

  4. アプリの名前と説明を入力し、ドロップダウンリストから目的を選択します。

  5. 認証方法として Server Authentication (with JWT) を選択します。

  6. Create App を選択します。

  7. アプリを構成するには、 Configuration タブに移動します。

  8. App Access Level セクションで、 App + Enterprise Access を選択します。

  9. Application Scopes セクションで、以下のオプションを選択します。

    • Read all files and folders stored in Box

    • Write all files and folders stored in Box: ファイルやフォルダーをダウンロードします。コネクタはファイルをアップロードできないことに注意してください。Snowflakeでは、サービスアカウントにViewerロールのみを付与することを推奨しています。アプリケーションにBox内のファイルへのアクセス権を付与するには、同期するフォルダーを選択します。ステップnのサービスアカウントのメールを使って、アプリのサービスアカウントと共有します。 Openflow Connector for Box は、指定したフォルダーとそのすべてのサブフォルダーからファイルを検出してダウンロードできますが、ファイルを変更することはできません。

    • Manage users: エンタープライズ内のユーザーを読み取ります。

    • Manage groups: エンタープライズ内のグループとそのメンバーを読み取ります。

    • Manage enterprise properties: エンタープライズイベントを読み取ります。

  10. Add and Manage Public Keys セクションで、公開キー/秘密キーのペアを生成します。Boxは秘密キー付きの JSON 構成ファイルをダウンロードします。

  11. 変更を保存します。

  12. Authorization タブに移動し、エンタープライズへのアクセスを認証するためにアプリを送信します。

  13. エンタープライズ管理者にアプリの承認をリクエストします。

  14. 承認後、 General Settings タブに移動し、アプリサービスアカウントのメールアドレスを保存します。

    詳細については、 JWT を使用した設定 をご参照ください。

Snowflakeアカウントを設定する

Snowflakeアカウント管理者として、以下のタスクを手動で、または下記に含まれるスクリプトを使用して実行します。

  1. 新しいロールを作成するか、既存のロールを使用して データベース権限 を付与します。

  2. タイプを SERVICE として、新しいSnowflakeサービスユーザーを作成します。

  3. Snowflakeサービスユーザーに、前の手順で作成したロールを付与します。

  4. ステップ2のSnowflake SERVICE ユーザーを key-pair auth で構成します。

  5. Snowflakeではこの手順を強く推奨します。Openflowがサポートするシークレットマネージャ(AWS、Azure、Hashicorpなど)を構成し、公開キーと秘密キーを秘密ストアに格納します。

    注釈

    何らかの理由でシークレットマネージャを使用したくない場合は、組織のセキュリティポリシーに従って、キーペア認証に使用する公開キーと秘密キーファイルを保護する責任があります。

    1. シークレットマネージャを構成したら、その認証方法を決定します。AWS 上では、Openflowに関連付けられた EC2 インスタンスロールが推奨されます。こうすることで、他の秘密を永続化する必要がなくなるからです。

    2. Openflowで、右上のハンバーガーメニューから、このシークレットマネージャに関連付けられたParameter Providerを構成します。 Controller Settings » Parameter Provider に移動し、パラメーターの値をフェッチします。

    3. この時点で、すべての認証情報を関連するパラメーターパスで参照することができるため、機密性の高い値をOpenflow内で永続化する必要はありません。

  6. 他のSnowflakeユーザーが、コネクタによって取り込まれた生の取り込みドキュメントやとテーブルへのアクセスを必要とする場合は(Snowflakeでのカスタム処理のためなど)、それらのユーザーにステップ1で作成したロールを付与します。

  7. コネクタが使用するウェアハウスを指定します。まずは最小のウェアハウスサイズから始め、複製するテーブルの数や転送するデータ量に応じて異なるサイズを試してみてください。テーブル数が大きい場合は、通常、ウェアハウスのサイズを大きくするよりも、 マルチクラスターウェアハウス を使用した方がスケーリングが向上します。

設定例

--The following script assumes you'll need to create all required roles, users, and objects.
--However, you may want to reuse some that are already in existence.

--Create a Snowflake service user to manage the connector
USE ROLE USERADMIN;
CREATE USER <openflow_service_user> TYPE=SERVICE COMMENT='Service user for Openflow automation';

--Create a pair of secure keys (public and private). For more information, see
--key-pair authentication. Store the private key for the user in a file to supply
--to the connector’s configuration. Assign the public key to the Snowflake service user:
ALTER USER <openflow_service_user> SET RSA_PUBLIC_KEY = '<pubkey>';


--Create a role to manage the connector and the associated data and
--grant it to that user
USE ROLE SECURITYADMIN;
CREATE ROLE <openflow_connector_admin_role>;
GRANT ROLE <openflow_connector_admin_role> TO USER <openflow_service_user>;


--The following block is for the use case: Ingest files and perform processing with Cortex
--Create a role for read access to the cortex search service created by this connector.
--This role should be granted to any role that will use the service
CREATE ROLE <cortex_search_service_read_only_role>;
GRANT ROLE <cortex_search_service_read_only_role> TO ROLE <whatever_roles_will_access_search_service>;

--Create the database the data will be stored in and grant usage to the roles created
USE ROLE ACCOUNTADMIN; --use whatever role you want to own your DB
CREATE DATABASE IF NOT EXISTS <destination_database>;
GRANT USAGE ON DATABASE <destination_database> TO ROLE <openflow_connector_admin_role>;

--Create the schema the data will be stored in and grant the necessary privileges
--on that schema to the connector admin role:
USE DATABASE <destination_database>;
CREATE SCHEMA IF NOT EXISTS <destination_schema>;
GRANT USAGE ON SCHEMA <destination_schema> TO ROLE <openflow_connector_admin_role>;
GRANT CREATE TABLE, CREATE DYNAMIC TABLE, CREATE STAGE, CREATE SEQUENCE, CREATE CORTEX
SEARCH SERVICE ON SCHEMA <destination_schema> TO ROLE <openflow_connector_admin_role>;

--The following block is for use case: Ingest files and perform processing with Cortex
--Grant the Cortex read-only role access to the database and schema
GRANT USAGE ON DATABASE <destination_database> TO ROLE <cortex_search_service_read_only_role>;
GRANT USAGE ON SCHEMA <destination_schema> TO ROLE <cortex_search_service_read_only_role>;

--Create the warehouse this connector will use if it doesn't already exist. Grant the
--appropriate privileges to the connector admin role. Adjust the size according to your needs.
CREATE WAREHOUSE <openflow_warehouse>
WITH
   WAREHOUSE_SIZE = 'MEDIUM'
   AUTO_SUSPEND = 300
   AUTO_RESUME = TRUE;
GRANT USAGE, OPERATE ON WAREHOUSE <openflow_warehouse> TO ROLE <openflow_connector_admin_role>;
Copy

ユースケース

以下のユースケースにコネクタを構成できます。

ファイルの取り込みのみ

コネクタ定義を使用して、次を行います。

  • Document AI で取り込んだファイルを処理します。

  • 取り込んだファイルにカスタム処理を実行します。

コネクタを設定する

データエンジニアとして、以下のタスクを実行してコネクタをインストールおよび構成します。

コネクタをインストールする
  1. Openflowの概要ページに移動します。 Featured connectors セクションで、 View more connectors を選択します。

  2. Openflowのコネクタページでコネクタを探し、 Add to runtime を選択します。

  3. Select runtime ダイアログで、 Available runtimes ドロップダウンリストからランタイムを選択します。

  4. Add を選択します。

    注釈

    コネクタをインストールする前に、コネクタが取り込んだデータを格納するためのデータベースとスキーマをSnowflakeで作成したことを確認します。

  5. Snowflakeアカウント認証情報でデプロイメントを認証し、Snowflakeアカウントへのランタイムアプリケーションのアクセスを許可するよう求められたられたら、 Allow を選択します。コネクタのインストールプロセスは数分で完了します。

  6. Snowflakeアカウント認証情報でランタイムを認証します。

コネクタプロセスグループが追加されたOpenflowキャンバスが表示されます。

コネクタを構成する
  1. インポートしたプロセスグループを右クリックし、 Parameters を選択します。

  2. Box取り込みパラメーターBox宛先パラメーターBoxソースパラメーター の説明に従って、必要なパラメーター値を入力します。

Boxソースパラメーター

パラメーター

説明

Box App 構成 JSON

アプリケーション作成時にダウンロードされたアプリケーションの JSON 構成。

Box App構成ファイル

アプリケーション作成時にダウンロードしたアプリケーションのjsonファイル。「Box App構成ファイル」または「Box App構成 JSON」のいずれかを設定する必要があります。構成ファイルをアップロードするには、 Reference asset チェックボックスを選択します。

Box宛先パラメーター

パラメーター

説明

宛先データベース

データが永続化されるデータベース。既にSnowflakeに存在している必要があります。

宛先スキーマ

データが永続化されるスキーマ。既にSnowflakeに存在している必要があります。

Snowflakeアカウント識別子

データが永続化されるSnowflakeアカウント名(形式: [organization-name]- [account-name])。

Snowflake認証ストラテジー

Snowflakeへの認証のストラテジー。可能な値: SPCS でフローを実行している場合は SNOWFLAKE_SESSION_TOKEN、秘密キーを使用してアクセスを設定する場合は KEY_PAIR

Snowflake秘密キー

認証に使用される RSA 秘密キー。RSA キーは、 PKCS8 標準に従って書式設定され、標準的な PEM ヘッダーとフッターを持つ必要があります。Snowflake秘密キーファイルまたはSnowflake秘密キーのいずれかを定義する必要があることに注意してください。

Snowflake秘密キーファイル

Snowflakeへの認証に使用される RSA 秘密キーを含むファイル。 PKCS8 標準に従って書式設定され、標準的な PEM ヘッダーとフッターを持ちます。ヘッダー行は -----BEGIN PRIVATE で始まります。 Reference asset チェックボックスを選択し、秘密キーファイルをアップロードします。

Snowflake秘密キーパスワード

Snowflake秘密キーファイルに関連付けられたパスワード

Snowflakeロール

クエリ実行時に使用されるSnowflakeロール

Snowflakeのユーザー名

Snowflakeインスタンスへの接続に使用するユーザー名

Snowflakeウェアハウス

クエリの実行に使用されるSnowflakeウェアハウス

Box取り込みパラメーター

パラメーター

説明

Boxフォルダー ID

ファイルを読み込むフォルダーの ID。Boxアプリがアクセスできるすべてのフォルダーを同期するには、これを 0 に設定します。https://app.box.com/folder/FOLDER_ID などの URL から取得できます。

取り込むファイルの拡張子

取り込むファイルの拡張子を指定するコンマ区切りリスト。コネクタは、可能であれば最初にファイルを PDF 形式に変換しようとします。それにもかかわらず、元のファイル拡張子に対して拡張子チェックが実行されます。指定されたファイル拡張子の一部がCortex Parse Documentでサポートされていない場合、コネクタはそれらのファイルを無視し、イベントログに警告メッセージを記録して、他のファイルの処理を続行します。

Snowflakeファイルのハッシュテーブル名

コンテンツが変更されたかどうかを判断するためにファイルのハッシュを格納するテーブルの名前。このパラメーターは通常、変更すべきではありません。

フローを実行する

  1. プレーンを右クリックし、 Enable all Controller Services を選択します。

  2. インポートしたプロセスグループを右クリックし、 Start を選択します。コネクタがデータの取り込みを開始します。

コネクタを起動すると、指定したフォルダーからすべてのファイルを取得し、過去14日間の admin_logs_streaming イベントを消費します。これは、初期化プロセス中に見落とされる可能性のあるデータをキャプチャするために行われます。この間、 not found エラーが発生することがあります。これは、イベントに表示されたものの、もはや存在しないファイルが原因です。

Cortexを使用してファイルを取り込み、処理を実行する

コネクタ定義を使用して、次を行います。

  • 組織内のBoxエンタープライズで公開ドキュメント用の AI アシスタントを作成します。

  • AI アシスタントが、組織のBoxエンタープライズで指定されたアクセス制御を順守できるようにします。

コネクタを設定する

データエンジニアとして、以下のタスクを実行してコネクタをインストールおよび構成します。

コネクタをインストールする
  1. Openflowの概要ページに移動します。 Featured connectors セクションで、 View more connectors を選択します。

  2. Openflowのコネクタページでコネクタを探し、 Add to runtime を選択します。

  3. Select runtime ダイアログで、 Available runtimes ドロップダウンリストからランタイムを選択します。

  4. Add を選択します。

    注釈

    コネクタをインストールする前に、コネクタが取り込んだデータを格納するためのデータベースとスキーマをSnowflakeで作成したことを確認します。

  5. Snowflakeアカウント認証情報でデプロイメントを認証し、Snowflakeアカウントへのランタイムアプリケーションのアクセスを許可するよう求められたられたら、 Allow を選択します。コネクタのインストールプロセスは数分で完了します。

  6. Snowflakeアカウント認証情報でランタイムを認証します。

コネクタプロセスグループが追加されたOpenflowキャンバスが表示されます。

コネクタを構成する
  1. インポートしたプロセスグループを右クリックし、 Parameters を選択します。

  2. Box Cortex Connect取り込みパラメーターBox Cortex Connect宛先パラメーター および Box Cortex Connectソースパラメーター の説明に従って、必要なパラメーター値を入力します。

Box Cortex Connectソースパラメーター

パラメーター

説明

Box App 構成 JSON

アプリケーション作成時にダウンロードされたアプリケーションの JSON 構成。

Box App構成ファイル

アプリケーション作成時にダウンロードしたアプリケーションのjsonファイル。「Box App構成ファイル」または「Box App構成 JSON」のいずれかを設定する必要があります。構成ファイルをアップロードするには、 Reference asset チェックボックスを選択します。

Box Cortex Connect宛先パラメーター

パラメーター

説明

宛先データベース

データが永続化されるデータベース。既にSnowflakeに存在している必要があります。

宛先スキーマ

データが永続化されるスキーマ。既にSnowflakeに存在している必要があります

Snowflakeアカウント識別子

データが永続化されるSnowflakeアカウント名(形式: [organization-name]- [account-name])。

Snowflake認証ストラテジー

Snowflakeへの認証のストラテジー。可能な値: SPCS でフローを実行している場合は SNOWFLAKE_SESSION_TOKEN、秘密キーを使用してアクセスを設定する場合は KEY_PAIR

Snowflake秘密キー

認証に使用される RSA 秘密キー。RSA キーは、 PKCS8 標準に従って書式設定され、標準的な PEM ヘッダーとフッターを持つ必要があります。Snowflake秘密キーファイルまたはSnowflake秘密キーのいずれかを定義する必要があることに注意してください。

Snowflake秘密キーファイル

Snowflakeへの認証に使用される RSA 秘密キーを含むファイル。 PKCS8 標準に従って書式設定され、標準的な PEM ヘッダーとフッターを持ちます。ヘッダー行は -----BEGIN PRIVATE で始まります。 Reference asset チェックボックスを選択し、秘密キーファイルをアップロードします。

Snowflake秘密キーパスワード

Snowflake秘密キーファイルに関連付けられたパスワード

Snowflakeロール

クエリ実行時に使用されるSnowflakeロール

Snowflakeのユーザー名

Snowflakeインスタンスへの接続に使用するユーザー名

Snowflakeウェアハウス

クエリの実行に使用されるSnowflakeウェアハウス

Box Cortex Connect取り込みパラメーター

パラメーター

説明

Boxフォルダー ID

ファイルを読み込むフォルダーの ID。Boxアプリがアクセスできるすべてのフォルダーを同期するには、これを 0 に設定します。https://app.box.com/folder/FOLDER_ID などの URL から取得できます。

取り込むファイルの拡張子

取り込むファイルの拡張子を指定するコンマ区切りリスト。コネクタは、可能であれば最初にファイルを PDF 形式に変換しようとします。それにもかかわらず、元のファイル拡張子に対して拡張子チェックが実行されます。指定されたファイル拡張子の一部がCortex Parse Documentでサポートされていない場合、コネクタはそれらのファイルを無視し、イベントログに警告メッセージを記録して、他のファイルの処理を続行します。

Snowflakeファイルのハッシュテーブル名

コンテンツが変更されたかどうかを判断するためにファイルのハッシュを格納するテーブルの名前。このパラメーターは通常、変更すべきではありません。

OCR モード

Cortex PARSE_DOCUMENT 関数でファイルを解析するときに使用する OCR モード。値は OCR または LAYOUT のいずれかになります。

Snowflake Cortex Search Serviceユーザーロール

Cortex Search serviceの使用権限を割り当てられたロールの識別子。

Snowflakeファイルのハッシュテーブル名

コンテンツが変更されたかどうかを判断するためにファイルのハッシュを格納するテーブルの名前。このパラメーターは通常、変更すべきではありません。

フローを実行する

  1. プレーンを右クリックし、 Enable all Controller Services を選択します。

  2. インポートしたプロセスグループを右クリックし、 Start を選択します。コネクタがデータの取り込みを開始します。

コネクタを起動すると、指定したフォルダーからすべてのファイルを取得し、過去14日間の admin_logs_streaming イベントを消費します。これは、初期化プロセスで見落とされた可能性のあるデータをキャプチャするために行われます。その間に、 not found エラーが発生することがあります。これは、イベントに表示されたものの、もはや存在しないファイルが原因です。

Cortex Search serviceをクエリする

Cortex Search サービスを使用して、Box内のドキュメントとチャットしたりクエリしたりするチャットおよび検索アプリケーションを構築できます。

コネクタをインストールして構成し、Boxからコンテンツの取り込みを開始すると、Cortex Searchサービスサービスをクエリできます。Cortex Searchの使用に関する詳細については、 Cortex Search Serviceをクエリする をご参照ください。

応答をフィルターする

Cortex Searchサービスからの応答を特定のユーザーがBoxでアクセスできるドキュメントに制限するには、Cortex Searchのクエリ時に、そのユーザーのユーザー ID またはメールアドレスを含むフィルターを指定することができます。例えば、 filter.@contains.user_ids または filter.@contains.user_emails のようにします。コネクタによって作成されるCortex Searchサービスの名前は、スキーマ Cortexsearch_service です。

SQL ワークシート内で以下の SQL コードを実行し、Boxサイトから取り込んだファイルでCortex Searchサービスをクエリします。

以下を置き換えます。

  • application_instance_name: データベースとコネクタアプリケーションインスタンスの名前。

  • user_emailID: 応答をフィルターしたいユーザーのメール ID。

  • your_question: 応答を得たい質問。

  • number_of_results: 応答で返す結果の最大数。最大値は1,000で、デフォルト値は10です。

SELECT PARSE_JSON(
  SNOWFLAKE.CORTEX.SEARCH_PREVIEW(
    '<application_instance_name>.cortex.search_service',
      '{
        "query": "<your_question>",
         "columns": ["chunk", "web_url"],
         "filter": {"@contains": {"user_emails": "<user_emailID>"} },
         "limit": <number_of_results>
       }'
   )
)['results'] AS results
Copy

columns に入力できる値の完全なリストを示します。

列名

説明

full_name

String

Boxサイトドキュメントルートからのファイルへのフルパス。例: folder_1/folder_2/file_name.pdf

web_url

String

オリジナルのBoxファイルをブラウザーで表示する URL。

last_modified_date_time

String

項目の最新変更日時。

chunk

String

Cortex Searchのクエリにマッチしたドキュメントのテキスト。

user_ids

配列

ドキュメントにアクセスできるユーザー IDs の配列。

user_emails

配列

そのドキュメントにアクセスできるユーザーメール IDs の配列。ドキュメントに割り当てられているすべてのMicrosoft 365グループのユーザーメール IDs も含まれます。

例: AI アシスタントに人事(HR)情報をクエリする

Cortex Searchを使用して、オンボーディング、行動規範、チームプロセス、組織ポリシーなど、 HR の最新バージョンの情報とチャットする従業員向けの AI アシスタントをクエリできます。応答フィルターを使用すると、Boxで構成したアクセス制御を順守しながら、 HR チームメンバーに従業員契約のクエリを許可することもできます。

Boxから取り込んだファイルでCortex Searchサービスをクエリするために、 SQL ワークシート で以下を実行します。データベースをアプリケーションインスタンス名として、スキーマを Cortex として選択します。

以下を置き換えます。

  • application_instance_name: データベースとコネクタアプリケーションインスタンスの名前。

  • user_emailID: 応答をフィルターしたいユーザーのメール ID。

SELECT PARSE_JSON(
     SNOWFLAKE.CORTEX.SEARCH_PREVIEW(
          '<application_instance_name>.cortex.search_service',
          '{
             "query": "What is my vacation carryover policy?",
             "columns": ["chunk", "web_url"],
             "filter": {"@contains": {"user_emails": "<user_emailID>"} },
             "limit": 1
          }'
     )
 )['results'] AS results
Copy

Box AI を使用してBoxメタデータを抽出し、Snowflakeテーブルに取り込む

コネクタ定義を使用して、次を行います。

  • Boxファイルのメタデータを抽出し、Snowflakeテーブルに取り込みます。

  • Boxに格納されているファイルのメタデータに操作を実行します。

Boxのメタデータを格納するSnowflakeテーブルを作成する

  1. メタデータの抽出を行うために、Box AI が有効になっていることを確認します。詳細については、 Box AI の構成 をご参照ください。

  2. メタデータが送信されるSnowflakeテーブルを作成する

    コネクタが抽出するメタデータの種類を知るためには、抽出したいフィールドの列名を持つSnowflakeテーブルをデータベースとスキーマに作成する必要があります。ファイルからメタデータを抽出するために使用されるモデルのパフォーマンスを向上させるために、各列に説明を追加します。

  3. 前のステップで作成したテーブルに、Boxファイル ID を格納する列があり、それが VARCHAR タイプであることを確認します。

    この列の名前は、後のステップでBoxファイル識別子列パラメーターとして入力する必要があります。メタデータテーブルでサポートされる列タイプのリストは、 VARCHAR、 STRING、 TEXT、 FLOAT、 DOUBLE、 DATE です。

このコネクタ用に作成できるテーブルの例を示します。

CREATE OR REPLACE TABLE OPENFLOW.BOX_METADATA_SCHEMA.LOAN_AGREEMENT_METADATA (
  BOX_FILE_ID               VARCHAR    COMMENT 'Box file identifier column',
  LOAN_ID                   STRING     COMMENT 'Unique loan agreement identifier (e.g. L-2025-0001)',
  BORROWER_NAME             STRING     COMMENT 'Name of the borrower entity or individual',
  LENDER_NAME               STRING     COMMENT 'Name of the lending institution',
  LOAN_AMOUNT               DOUBLE     COMMENT 'Principal amount of the loan (in USD)',
  INTEREST_RATE             FLOAT      COMMENT 'Annual interest rate (%)',
  EFFECTIVE_DATE            DATE       COMMENT 'Date on which the loan becomes effective',
  MATURITY_DATE             DATE       COMMENT 'Scheduled loan maturity date',
  LOAN_TERM_MONTHS          FLOAT      COMMENT 'Original term length in months',
  COLLATERAL_DESCRIPTION    TEXT       COMMENT 'Description of collateral securing the loan',
  CREDIT_SCORE              FLOAT      COMMENT 'Borrower credit score',
  JURISDICTION              STRING     COMMENT 'Governing law jurisdiction (e.g. NY, CA)'
);
Copy

コネクタを設定する

データエンジニアとして、以下のタスクを実行してコネクタをインストールおよび構成します。

コネクタをインストールする
  1. Openflowの概要ページに移動します。 Featured connectors セクションで、 View more connectors を選択します。

  2. Openflowのコネクタページでコネクタを探し、 Add to runtime を選択します。

  3. Select runtime ダイアログで、 Available runtimes ドロップダウンリストからランタイムを選択します。

  4. Add を選択します。

    注釈

    コネクタをインストールする前に、コネクタが取り込んだデータを格納するためのデータベースとスキーマをSnowflakeで作成したことを確認します。

  5. Snowflakeアカウント認証情報でデプロイメントを認証し、Snowflakeアカウントへのランタイムアプリケーションのアクセスを許可するよう求められたられたら、 Allow を選択します。コネクタのインストールプロセスは数分で完了します。

  6. Snowflakeアカウント認証情報でランタイムを認証します。

コネクタプロセスグループが追加されたOpenflowキャンバスが表示されます。

コネクタを構成する
  1. インポートしたプロセスグループを右クリックし、 Parameters を選択します。

  2. Box Ingest MetadataソースパラメーターBox Ingest Metadata宛先パラメーターBox Ingest Metadata取り込みパラメーター の説明に従って、必要なパラメーター値を入力します。

Box Ingest Metadataソースパラメーター

パラメーター

説明

Box App 構成 JSON

アプリケーション作成時にダウンロードされたアプリケーションの JSON 構成。

Box App構成ファイル

アプリケーション作成時にダウンロードしたアプリケーションのjsonファイル。「Box App構成ファイル」または「Box App構成 JSON」のいずれかを設定する必要があります。構成ファイルをアップロードするには、 Reference asset チェックボックスを選択します。

Box Ingest Metadata宛先パラメーター

パラメーター

説明

宛先データベース

データが永続化されるデータベース。既にSnowflakeに存在している必要があります

宛先スキーマ

データが永続化されるスキーマ。既にSnowflakeに存在している必要があります

Snowflakeアカウント識別子

データが永続化されるSnowflakeアカウント名(形式: [organization-name]- [account-name])。

Snowflake認証ストラテジー

Snowflakeへの認証のストラテジー。可能な値: SPCS 上でフローを実行している場合は SNOWFLAKE_SESSION_TOKEN、 秘密キーを使ったアクセスを設定したい場合は KEY_PAIR

Snowflake秘密キー

認証に使用される RSA 秘密キー。RSA キーは、 PKCS8 標準に従って書式設定され、標準的な PEM ヘッダーとフッターを持つ必要があります。Snowflake秘密キーファイルまたはSnowflake秘密キーのどちらかが定義されている必要があります。

Snowflake秘密キーファイル

Snowflakeへの認証に使用される RSA 秘密キーを含むファイル。 PKCS8 標準に従って書式設定され、標準的な PEM ヘッダーとフッターを持ちます。ヘッダー行は -----BEGIN PRIVATE で始まります。 Reference asset チェックボックスを選択し、秘密キーファイルをアップロードします。

Snowflake秘密キーパスワード

Snowflake秘密キーファイルに関連付けられたパスワード

Snowflakeロール

クエリ実行時に使用されるSnowflakeロール

Snowflakeのユーザー名

Snowflakeインスタンスへの接続に使用するユーザー名

Snowflakeウェアハウス

クエリの実行に使用されるSnowflakeウェアハウス

Box Ingest Metadata取り込みパラメーター

パラメーター

説明

Boxフォルダー ID

ファイルを読み込むフォルダーの ID。Boxアプリがアクセスできるすべてのフォルダーを同期するには、これを 0 に設定します。ID はhttps://app.box.com/folder/FOLDER_ID などの URL から取得できます。

Boxファイル識別子列

指定されたメタデータをファイルに関連付けるためのBoxファイル ID を格納するメタデータテーブルの列。この列は、 VARCHAR タイプで、 Boxメタデータを格納するSnowflakeテーブルを作成する で作成したテーブルの一部である必要があります。

宛先メタデータテーブル

Boxメタデータを格納するSnowflakeテーブルを作成する で作成したSnowflakeテーブルには、収集したいメタデータの列があります。

フローを実行する

  1. プレーンを右クリックし、 Enable all Controller Services を選択します。

  2. インポートしたプロセスグループを右クリックし、 Start を選択します。コネクタがデータの取り込みを開始します。

コネクタを起動すると、指定したフォルダーからすべてのファイルを取得し、過去14日間の admin_logs_streaming イベントを消費します。これは、初期化プロセスで見落とされた可能性のあるデータをキャプチャするために行われます。その間に、 not found エラーが発生することがあります。これは、イベントに表示されたものの、もはや存在しないファイルが原因です。

BoxファイルのメタデータインスタンスをSnowflakeテーブルと同期する

コネクタ定義を使用して、Snowflakeテーブル内のBoxのメタデータに対してデータ変換を実行し、変更をBoxメタデータインスタンスに追加して戻します。

Boxのメタデータを格納するSnowflakeストリームを作成する

  1. 使用したいメタデータテーブル用にSnowflakeストリームを作成します。ストリームは、Boxファイルを同期するテーブルに発生した変更を監視するために使用されます。Boxメタデータを格納するテーブルの作成方法については、 Boxメタデータを格納するSnowflakeテーブルを作成する をご参照ください。データ保持時間を超えてコネクタを停止し、ストリームが古くなった場合は、ストリームを再作成して以前のストリームを置き換える必要があります。ストリームの管理については、 ストリームの管理 をご参照ください。

    このコネクタ用に作成できるストリームの例を示します。

    CREATE OR REPLACE STREAM OPENFLOW.BOX_METADATA_SCHEMA.LOAN_AGREEMENT_METADATA_STREAM
    ON TABLE OPENFLOW.BOX_METADATA_SCHEMA.LOAN_AGREEMENT_METADATA
    
    Copy
  2. メタデータテーブルに、Boxファイル ID を格納する列があり、それが VARCHAR タイプであることを確認します。

    この列の名前は、後のステップでBoxファイル識別子列パラメーターとして入力する必要があります。メタデータテーブルでサポートされる列タイプのリストは、 VARCHAR、 STRING、 TEXT、 FLOAT、 DOUBLE、 DATE です。

コネクタを設定する

データエンジニアとして、以下のタスクを実行してコネクタをインストールおよび構成します。

コネクタをインストールする
  1. Openflowの概要ページに移動します。 Featured connectors セクションで、 View more connectors を選択します。

  2. Openflowのコネクタページでコネクタを探し、 Add to runtime を選択します。

  3. Select runtime ダイアログで、 Available runtimes ドロップダウンリストからランタイムを選択します。

  4. Add を選択します。

    注釈

    コネクタをインストールする前に、コネクタが取り込んだデータを格納するためのデータベースとスキーマをSnowflakeで作成したことを確認します。

  5. Snowflakeアカウント認証情報でデプロイメントを認証し、Snowflakeアカウントへのランタイムアプリケーションのアクセスを許可するよう求められたられたら、 Allow を選択します。コネクタのインストールプロセスは数分で完了します。

  6. Snowflakeアカウント認証情報でランタイムを認証します。

コネクタプロセスグループが追加されたOpenflowキャンバスが表示されます。

コネクタを構成する
  1. インポートしたプロセスグループを右クリックし、 Parameters を選択します。

  2. Box Publish MetadataソースパラメーターBox Publish Metadata宛先パラメーターBox Publish Metadata取り込みパラメーター の説明に従って、必要なパラメーター値を入力します。

Box Publish Metadataソースパラメーター

パラメーター

説明

ソースデータベース

変更を取り込むSnowflakeストリームを含むスキーマを含むSnowflakeデータベース

ソーススキーマ

変更を取り込むSnowflakeストリームを含むスキーマ

Snowflakeアカウント識別子

データが永続化されるSnowflakeアカウント名(形式: [organization-name]- [account-name])。

Snowflake認証ストラテジー

Snowflakeへの認証のストラテジー。可能な値: SPCS 上でフローを実行している場合は SNOWFLAKE_SESSION_TOKEN、 秘密キーを使ったアクセスを設定したい場合は KEY_PAIR

Snowflake秘密キー

認証に使用される RSA 秘密キー。RSA キーは、 PKCS8 標準に従って書式設定され、標準的な PEM ヘッダーとフッターを持つ必要があります。Snowflake秘密キーファイルまたはSnowflake秘密キーのどちらかが定義されている必要があります。

Snowflake秘密キーファイル

Snowflakeへの認証に使用される RSA 秘密キーを含むファイル。 PKCS8 標準に従って書式設定され、標準的な PEM ヘッダーとフッターを持ちます。ヘッダー行は -----BEGIN PRIVATE で始まります。 Reference asset チェックボックスを選択し、秘密キーファイルをアップロードします。

Snowflake秘密キーパスワード

Snowflake秘密キーファイルに関連付けられたパスワード

Snowflakeロール

クエリ実行時に使用されるSnowflakeロール

Snowflakeのユーザー名

Snowflakeインスタンスへの接続に使用するユーザー名

Snowflakeウェアハウス

クエリの実行に使用されるSnowflakeウェアハウス

Snowflakeストリーム名

ソースSnowflakeテーブルからの変更の取り込みに使用されるSnowflakeストリーム名。これは、コネクタを起動してテーブルにリンクする前に作成する必要があります。

Box Publish Metadata宛先パラメーター

パラメーター

説明

Box App 構成 JSON

アプリケーション作成時にダウンロードされたアプリケーションの JSON 構成。

Box App構成ファイル

アプリケーション作成時にダウンロードしたアプリケーションのjsonファイル。「Box App構成ファイル」または「Box App構成 JSON」のいずれかを設定する必要があります。構成ファイルをアップロードするには、 Reference asset チェックボックスを選択します。

Box Publish Metadata取り込みパラメーター

パラメーター

説明

Boxファイル識別子列

指定されたメタデータをファイルに関連付けるためのBoxファイル ID を格納するメタデータテーブルの列。この列は、 VARCHAR タイプで、 Boxメタデータを格納するSnowflakeテーブルを作成する で作成したテーブルの一部である必要があります。

Boxメタデータテンプレート名

Boxファイルに追加されるBoxメタデータテンプレートのテンプレート名。コネクタを起動する前にテンプレートを手動で作成する必要はありません。このパラメーターに値を入力すると、このテンプレート名でテンプレートが自動的に作成されます。プロバイダー名は、Box環境で作成済みのテンプレートと重複しないようにしてください。

Boxメタデータテンプレートキー

Boxファイルに追加されるBoxメタデータテンプレートのBoxテンプレートキー。これは、Box API でテンプレートを参照するために使われるキーです。コネクタを起動する前にテンプレートを手動で作成する必要はありません。このパラメーターに値を入力すると、このテンプレートキーでテンプレートが自動的に作成されます。提供されるキーは、Box環境で作成済みのテンプレートと重複しないようにしてください。

フローを実行する

  1. プレーンを右クリックし、 Enable all Controller Services を選択します。

  2. インポートしたプロセスグループを右クリックし、 Start を選択します。コネクタがデータの取り込みを開始します。

フローを実行した後、Cortex Searchサービスにクエリを実行できます。Cortex Searchサービスのクエリ方法については、 Cortex Searchサービスをクエリする をご参照ください。