Thanks to visit codestin.com
Credit goes to docs.snowflake.com

Snowflake Python APIs ライブラリのインストール

condaまたは仮想環境で使用するために Snowflake Python APIs ライブラリをインストールすることができます。開始する前に、 サポートされるPythonのバージョン を確認してください。

Snowflake Python Snowflake Python APIs ライブラリをセットアップするには、以下のステップを完了します。

  1. Python環境を アクティブ化 します。

  2. オプション:政府リージョンでライブラリを使用するには Python暗号化ライブラリをビルドし、 環境で実行してください。

    注釈

    Snowflake Python APIs ライブラリは Python暗号化ライブラリ を認証に依存しています。FIPS準拠のPython環境を使用している場合 、暗号化ライブラリをシステムのFIPS準拠 OpenSSL に対してコンパイルする必要があります。

  3. ライブラリを インストール します。

  4. Python APIクライアントの オプションを設定する。

Python環境をアクティブ化する

Pythonコードを実行する環境をセットアップするには、Python環境をアクティブ化する必要があります。例えば、condaや仮想環境(venv)を使うことができます。

注釈

これらのステップはあくまで例として示したものです。例に従う場合には、Snowflakeが所有または提供していないサードパーティのデータ、製品、またはサービスに対する追加の権利が必要になる場合があります。続行する前に、サードパーティのデータ、製品、またはサービスに対する適切な権利を持っていることを確認してください。

conda を使って Python コードを実行する環境を作ることができます。condaがない場合は、condaのウェブサイトからインストールできます。

condaの詳細については、 Condaのドキュメント をご参照ください。condaをダウンロードおよびインストールするには、 condaのインストール をご参照ください。

  1. Conda環境を作成します。

    conda create -n <env_name> python==3.10
    
    Copy
  2. 環境をアクティブ化します。

    conda activate <env_name>
    
    Copy

政府リージョン用のPython暗号ライブラリをビルドする

認証のためには、Snowflake Python APIs は :doc:`Python用Snowflakeコネクタ </developer-guide/python-connector/python-connector>`を使用します。これは、`Python暗号化ライブラリ <https://pypi.org/project/cryptography/>`_ に依存しています。暗号化ライブラリはすべての暗号化操作において `OpenSSL<https://www.openssl.org/>`_ Cライブラリに依存し、静的にリンクされたOpenSSL 依存関係を含むホイールパッケージを提供しています。

そのため、デフォルトのコマンド:code:pip install cryptography`を使用して``cryptography` をインストールすると、システムのバージョンではなくライブラリは独自のバージョンの OpenSSL を使用します。詳細については、`OpenSSL <https://cryptography.io/en/latest/openssl/>の使用`_をご参照ください。

政府リージョンでSnowflakeアカウントにPythonAPI を使用して接続するには、FIPS準拠のPython環境を使用することを確認する必要があります。FIPS に準拠するためには、PyPI ホイールから暗号化ライブラリをインストールする代わりに、システムの FIPS準拠の OpenSSLに対して、コンプライアンスを保護します。

  • 特定のオペレーティングシステムで暗号化ライブラリをビルドする手順については、インストール 内の cryptography ドキュメントをご参照ください 。

重要

pip install snowflake -U を実行する前に、この方法で暗号ライブラリをビルドする必要があります。このビルドは cryptography に依存関係を設定し、cryptography パッケージは PyPI から取得されていないことを確認します。

暗号化ライブラリは、Pythonライブラリ用Snowflakeコネクタライブラリ で定義された依存関係要件を満たすバージョンを使用してコンパイルする必要があります。

Snowflake Python APIs ライブラリのインストール

Snowflake Python APIs ライブラリはPython Package Index(PyPI)からインストールできます。

  • 作成したCondaまたは仮想環境で、次の pip コマンドを実行してライブラリをインストールします。

    pip install snowflake -U
    
    Copy

    Snowflake パッケージは、 Snowflake Python APIs の PEP 420名前空間 親パッケージです。Snowflakeリソースオブジェクトを管理するためのPython APIs を提供するサブパッケージである snowflake.core が含まれています。

    snowflake パッケージをインストールすると、 snowflake-connector-python を含む必要な依存関係とともに snowflake.core が自動的にインストールされます。

  • Snowpark ML ライブラリを追加パッケージ依存関係としてインストールするには、次の pip コマンドを実行します。

    pip install "snowflake[ml]" -U
    
    Copy

ライブラリをインストールしたら、 API を使用する前にSnowflakeへの接続を作成する必要があります。接続に関する詳細については、 Snowflake Python APIs によるSnowflakeへの接続 をご参照ください。

Python API クライアント オプションの設定

以下の環境変数を設定して、 Snowflake Python APIs のクライアント・オプションを制御できます。

_SNOWFLAKE_PRINT_VERBOSE_STACK_TRACE

印刷されるエラーメッセージでフルスタック・トレースを有効にするかどうかを指定します。

可能な値:

  • 有効: truetyesyon、または未定義

  • 無効: その他の値

デフォルト: 有効

このオプションを無効にすると、 API クライアントはリクエストを処理するときに sys.tracebacklimit0 にセットします。この設定により、クライアントは(API クライアントに関連するものだけでなく)すべてのタイプの例外のトレースバック情報を抑制し、エラーメッセージのみを表示します。

Pythonノートブック環境でこのオプションを無効にするには、ノートブックで以下の行を実行してください。

%env _SNOWFLAKE_PRINT_VERBOSE_STACK_TRACE=false
Copy
_SNOWFLAKE_ENABLE_RETRY_REQUEST_QUERY

特定のステータスコードを持つクエリ リクエストに対して自動再試行を有効にするかどうかを指定します。

可能な値:

  • 有効: truetyesyon

  • 無効: その他の値または未定義

デフォルト: 有効

このオプションを有効にすると、 API クライアントは、クエリ・リクエストが以下のステータス・コードを持つ場合、自動的にクエリを再試行します。

  • 202

  • 429

  • 503

  • 504