Snowflakeの新機能「Snowpark」が、すぐに試せる「Snowpark Accelerator」を試してみた

2021.08.20

こんにちは!DA(データアナリティクス)事業本部 サービスソリューション部の大高です。

SnowflakeのPreview機能として、Snowparkという機能がPreview公開されています。

ZoharさんのSnowtire v2プロジェクト「zoharsan/snowtire_v2」では、このSnowparkの機能をすぐに試せるDockerイメージ「Snowpark Accelerator」が公開されています。

下記ブログで「Snowpark Accelerator」について紹介されていましたので、当エントリでは、このブログの手順に従って、実際にSnowparkを軽くさわるまでを紹介したいと思います。

なお、以前に手動でVisual Studio Codeで環境設定を行い、簡単な操作を試した記事は以下になります。

注意点

GitHubの該当プロジェクトREADMEにも記載があるとおり、Snowtireは非公式のものとなります。

NOTE: Snowtire is not officially supported by Snowflake, and is provided as-is.

前提条件

前提条件としては以下になります。

Docker ImageをPullする

ターミナルを開いて、docker pullコマンドを実行します。

$ docker pull zhoussen/snowtire-v2:snowpark-accelerator

サイズは2.3GBぐらいあるので、ダウンロードされるまでしばらく待ちます。

なお、私の環境だと10分程度かかりましたがネットワーク環境などに依存すると思います。

起動する

イメージが取得できたら、下記のコマンドで起動します。

$ docker run -p 8888:8888 --name snowpark-sandbox zhoussen/snowtire-v2:snowpark-accelerator

起動後に以下のようなメッセージが表示されるので、ブラウザからURLにアクセスしてみます。

[C 08:53:40.886 NotebookApp] 
    
    To access the notebook, open this file in a browser:
        file:///home/jovyan/.local/share/jupyter/runtime/nbserver-15-open.html
    Or copy and paste one of these URLs:
        http://7f124e8ff343:8888/?token=81278f07ee561a7120fae1d47006962701b55c3d7c37fb36
     or http://127.0.0.1:8888/?token=81278f07ee561a7120fae1d47006962701b55c3d7c37fb36

Jupyter Notebookにアクセスできました!

試してみる

Snowparkのサンプルとして、samples/Snowpark_Quick_Start.ipynbが用意されているので開いてみます。

開くと「Getting Started with Snowpark」として詳細に各ステップが記載されています。

実行は、各ステップのコードの箇所を選択して画面上部メニューの「Run」で実行してきます。例えば、最初であればIN [ ]と記載されているエリアを選択して「Run」をクリックすると、実行結果がOUT[1]として表示されます。

あとは同様に進めていくだけで、Snowparkを試すことができます!簡単ですね。

なお、私は「Step 2」の最後まで試してみました。

少し悩んだところ

「Step 1: Import Snowpark Libraries and Open a session」のセクションで「/home/jovyan/workにあるproperties.txtを編集する」という箇所がありますが、これはJupiter Notebook上のwork/properties.txtになります。

ファイルの編集については、該当ファイルを開いて編集し、編集後は、メニュの「File > Save」で保存すればOKです。

まとめ

以上、Snowflakeの新機能「Snowpark」が、すぐに試せる「Snowpark Accelerator」を試してみました。

元ブログのタイトル「From Zero to Snowpark in 5 minutes」にある通り、本当にすぐにSnowparkが試せる最高のプロジェクトでした。「とりあえずSnowparkを触ってみたい!」というケースでは、こちらを使うと良さそうですね。

どなたかのお役に立てば幸いです。それでは!