Snowpark Pythonの開発環境の設定¶
Snowpark Pythonを使用してクライアントアプリケーションを構築するために、お好みのローカル開発環境を設定します。
Snowpark Pythonでストアドプロシージャを作成している場合は、代わりに Pythonワークシート を設定することを検討してください。
このトピックの内容:
前提条件¶
サポートされているPythonのバージョンは次のとおりです。
3.8
3.9
3.10
3.11
注釈
Python 3.9はSnowparkクライアントバージョン1.5.0に依存しています。Python 3.10はSnowparkクライアントバージョン1.5.1に依存しています。Python 3.11はSnowparkクライアントバージョン1.9.0に依存しています。
Anaconda、 Miniconda、 virtualenv などのツールを使用して、特定のPythonバージョン用のPython仮想環境を作成できます。
たとえば、condaを使用してPython 3.8仮想環境を作成し、Snowflake condaチャンネルを追加して、numpyおよびpandasパッケージをインストールするには、次のように入力します。
conda create --name py38_env --override-channels -c https://repo.anaconda.com/pkgs/snowflake python=3.8 numpy pandas pyarrow
UDFsを使用するときに最高のエクスペリエンスを得るには、Snowflakeチャネルを使用してローカルで新しいconda環境を作成することをお勧めします。詳細については、 ローカル開発とテスト をご参照ください。
注釈
pyOpenSSL でのメモリ処理が原因で、Snowpark PythonをApple M1チップで実行すると発生する既知の問題があります。表示されるエラーメッセージは、「Cannot allocate write+execute memory for ffi.callback()」です。
回避策として、次のコマンドを使用してx86 Pythonを使用する仮想環境をセットアップします。
CONDA_SUBDIR=osx-64 conda create -n snowpark python=3.8 numpy pandas pyarrow --override-channels -c https://repo.anaconda.com/pkgs/snowflake
conda activate snowpark
conda config --env --set subdir osx-64
次に、次のセクションで説明するように、この環境内にSnowparkをインストールします。
Pandas DataFrames を使用するための前提条件¶
Snowpark API は、Pandas DataFrames との間でデータを書き込むためのメソッドを提供します。 Pandas は、データ分析用のライブラリです。Pandasでは、 DataFrame と呼ばれるデータ構造を使用して、2次元データを分析および操作します。
これらのメソッドには、次のライブラリが必要です。
Pandas 1.0.0(またはそれ以上)。
PyArrow ライブラリ バージョン8.0.0。
注釈
PyArrow がインストールされていない場合は、自分で PyArrow をインストールする必要はありません。Snowparkにより適切なバージョンの PyArrow が自動的にインストールされます。
上記にリストされている推奨バージョン以外のバージョンの PyArrow ライブラリを既にインストールしている場合は、Snowparkをインストールする前に PyArrow をアンインストールします。
Snowparkのインストール後に、異なるバージョンの PyArrow を再インストールしないでください。
インストール手順¶
注釈
このセクションのコマンドを実行する前に、サポートされたPythonバージョンのPython環境内にいることを確認してください。これは、コマンド python -V
を入力して確認できます。表示されたバージョンがサポートされたバージョンでない場合は、前のセクションをご参照ください。
conda
または pip
を使用して、Snowpark PythonパッケージをPython仮想環境にインストールします。
conda install snowflake-snowpark-python
または、
pip install snowflake-snowpark-python
オプションで、たとえばPandasデータ分析パッケージなど、環境にインストールするパッケージを指定します。
conda install snowflake-snowpark-python pandas pyarrow
または、
pip install "snowflake-snowpark-python[pandas]"
Python Package Index(PyPi)リポジトリ で、Snowpark Pythonプロジェクトの説明を表示できます。
Snowpark用Jupyterノートブックの設定¶
JupyterノートブックでSnowparkの使用を開始するには、次を実行します。
Jupyterノートブックをインストールします。
pip install notebook
Jupyterノートブックを起動します。
jupyter notebook
開いたWebページの右上隅で、 New » Python 3 Notebook を選択します。
セルで、セッションを作成します。詳細については、 セッションの作成 をご参照ください。
SnowparkのIDEの設定¶
Snowparkは統合開発環境(IDE)で使用できます。
SnowparkをMicrosoft Visual Studio Codeで使用するには、 Python拡張機能をインストールしてから、Python環境でを使用するよう指定します。
VS CodeでSnowpark Pythonストアドプロシージャをオーサリングおよびデバッグする機能を使用するには、 Snowflake Extension for Visual Studio Code をインストールします。この拡張機能を使用すると、Snowflakeに接続し、 SQL ステートメントを VS Code内で直接実行することができるようになります。
重要
開発環境の設定時に作成したPython環境を手動で選択する必要があります。これを行うには、 Command Palette
から Python: Select Interpreter
コマンドを使用します。詳細については、Microsoft VisualS tudioのドキュメントの VSコードでの Python環境の使用 をご参照ください。
モジュールのインポート¶
Snowpark APIのメインクラスは、 snowflake.snowpark
モジュールにあります。
モジュールから特定の名前をインポートするには、名前を指定します。例:
>>> from snowflake.snowpark.functions import avg