|sf-web-interface|を使用してデータ品質チェックを設定する

このトピックでは、|sf-web-interface-link|を使用してデータ品質チェックを設定する方法について説明します。以下のストラテジーを使用して、データ品質チェックを設定できます。

データ品質チェックの概念の紹介については、:ref:`label-data_quality_core_concepts`をご参照ください。

Cortex Data Qualityを使用して品質チェックを設定する

Cortex Data Qualityは、AIを使用してメタデータの特性に基づいたデータ品質チェックを提案します。提案を採用すると、Snowflakeは定期的にデータの品質問題をチェックし、問題を特定します。

Cortex Data Qualityは、:doc:`Snowflake CortexAI_COMPLETE関数</sql-reference/functions/ai_complete>`を活用して、データ品質チェックをインテリジェントに提案します。Snowflake Cortex内で安全に実行されるため、企業のデータやメタデータは常にSnowflake内に安全に留まります。Cortex Data Qualityは、Snowflakeのアクセス制御に完全に従い、アクセス可能なデータのみに基づいて提案を行います。

Cortex Data Qualityを使用してデータ品質チェックを設定するには、以下を実行します。

  1. Snowsight にサインインします。

  2. ナビゲーションメニューで、Catalog » Database Explorer を選択してから、オブジェクトを選択します。

  3. Data Quality タブを選択します。

  4. Monitoring を選択します。

  5. 次のいずれかを実行します。

    • 品質チェックを初めて設定する場合、:ui:`Get started`を選択します。

    • 追加の品質チェックを設定する場合Add quality check、:ui:`Suggested quality checks`の順に選択します。

  6. 提案されたデータ品質チェックを確認します。データが品質チェックに合格したとみなす判定基準を変更するには、:ui:`What should the result be?`列の内容を編集します。

  7. 実装したい品質チェックを選択し、:ui:`Apply`を選択します。

Cortex Data Qualityの詳細については、:ref:`label-data_quality_ui_setup_cortex_more`をご参照ください。

品質チェックを手動で設定する

データに関する知識に基づいてデータ品質チェックを作成するには、以下を実行します。

  1. Snowsight にサインインします。

  2. ナビゲーションメニューで、Catalog » Database Explorer を選択してから、オブジェクトを選択します。

  3. Data Quality タブを選択します。

  4. Monitoring を選択します。

  5. 次のいずれかを実行します。

    • 品質チェックを初めて設定する場合、:ui:`Start manually`を選択します。

    • 追加の品質チェックを設定する場合Add quality check、:ui:`Build checks manually`の順に選択します。

  6. :ui:`Set up a quality check`ダイアログで、作成するチェックのタイプを選択します。

  7. データが品質チェックに合格するかどうかを判定する基準を構成し、:ui:`Save`を選択します。

Tip

データの履歴量や鮮度に基づいてSnowflakeが自動的にデータ品質の問題を検出できるよう異常検出を有効にするには、:ref:`Cortex Data Quality<label-data_quality_ui_setup_cortex>`を使用して異常検出の提案を採用するか、:doc:`異常検出を手動で設定</user-guide/data-quality-anomaly>`します。

品質チェックの実行頻度を調整する

テーブルやビューのスケジュールによって、データ品質チェックを支えるDMFの実行頻度が決まります。スケジュールは、時間ベースまたはテーブルの更新ベースで設定できます。

注釈

少なくとも1つの品質チェックを追加するまでは、|sf-web-interface|を使用してスケジュールを調整することはできません。ALTER<object>コマンドを使用すれば、テーブルまたはビューのスケジュールをいつでも設定できます。

  1. Snowsight にサインインします。

  2. ナビゲーションメニューで、Catalog » Database Explorer を選択してから、オブジェクトを選択します。

  3. Data Quality タブを選択します。

  4. Monitoring を選択します。

  5. Settings を選択します。

  6. DMFを実行する頻度を以下から指定します。

    • DMFを1日以下の定期的な間隔で実行するには、:ui:`Interval-based timing`を選択し、ドロップダウンリストから間隔を選択します。

    • DMFをカスタムスケジュールで実行するには、:ui:`Select schedule`を選択し、スケジュールを設定します。

    • 行が追加された場合など、テーブルにDMLの変更があるたびにDMFを実行するには、:ui:`Trigger-based execution`を選択します。

Cortex Data Qualityの詳細情報

以下のセクションでは、Cortex Data Qualityに関する追加情報を提供します。

必要なLLMs

:ref:`label-cortex_models_allowlist`アカウントパラメーターでアカウント内の``mistral-7b``および``llama3.1-8b``モデルが許可されていない限り、Cortex Data Qualityは機能しません。デフォルトでは、どちらのモデルも許可されています。このパラメーターの設定に関する詳細については、:ref:`label-cortex_llm_allowlist`をご参照ください。

アクセス制御の要件

ACCOUNTADMINロールを持つ管理者は、Cortexを使用してデータ品質チェックを提案するために必要なすべての権限を有しています。

その他のユーザーには以下の権限とロールが必要です。

  • テーブルに対するOWNERSHIP権限

  • アカウントに対するEXECUTEDATAMETRICFUNCTION権限

  • SNOWFLAKE.DATA_METRIC_USER データベースロール

  • SNOWFLAKE.CORTEX_USER データベースロール

アクセスを制限する

デフォルトでは、CORTEX_USERデータベースロールはPUBLICロールに付与されるため、すべてのユーザーがその権限を持っています。すべてのユーザーがSnowflake Cortexの機能を使用できないように制限したい場合は、PUBLICロールからこのデータベースロールを取り消し、特定のロールにのみ付与できます。

ユーザーによるCortexを使用した品質チェックの提案を停止するには、以下のコマンドを実行してPUBLICロールからCORTEX_USERデータベースロールを取り消します。必ずACCOUNTADMINロールを使用してください。

USE ROLE ACCOUNTADMIN;

REVOKE DATABASE ROLE SNOWFLAKE.CORTEX_USER
  FROM ROLE PUBLIC;
Copy

特定のロールにCORTEX_USERデータベースロールを付与することで、選択的にアクセスを提供できるようになります。以下の例では、ACCOUNTADMINロールを使用し、この目的のために作成したアカウントロール``cortex_access_role``を介して、ユーザー``some_user``にCORTEX_USERデータベースロールを付与します。

USE ROLE ACCOUNTADMIN;

CREATE ROLE cortex_access_role;
GRANT DATABASE ROLE SNOWFLAKE.CORTEX_USER TO ROLE cortex_access_role;

GRANT ROLE cortex_access_role TO USER some_user;
Copy

また、既存のロールにCORTEX_USERデータベースロールを付与することもできます。

コストの考慮事項

Cortex Data Qualityの使用コストは以下の要素で構成されます。

  • :doc:`/sql-reference/functions/complete-snowflake-cortex`機能に関連するコストこれらの請求は、Snowflake Cortex のすべての使用を含む AI-Services として請求書に表示されます。

  • |sf-web-interface|を実行するデフォルトのウェアハウスのコンピューティングコスト