PythonSnowflake

SnowflakeにPythonから繋いでみよう!

Snowflakeで今日拝なびら(ちゅう うがなびら=こんにちは)。
ちゅらデータshinyashikiです!

今回から3部構成で、
SnowflakeにPythonから繋いでみよう!本記事
・CLIクライアント(SnowSQL)を使ってSnowflakeにアクセスしてみよう(次回掲載予定:12/25)
・SnowflakeとPythonでデータ可視化(次回掲載予定:1/8)
を行っていきたいと思います。

使用するSnowflake環境について

ユーザや仮想ウェアハウス、データベースといったSnowflakeのリソースの作成方法については本記事では省略します。
必要に応じて事前にご用意ください。
本記事の検証端末としてMacを使用しています。

Python環境の準備

今回はDockerを使って環境を作ります。
また、最終的にはデータの可視化を行いたいので、Jupyter Notebookが使える環境を構築したいと思います。

Dockerfileの作成

以下のようなDockerfileを作成します。

Dockerイメージはpandasやmatplotlibなど主要なライブラリが含まれているscipy-notebookにします。
そのほかにもDockerイメージがあるので、必要に応じてこちらをご確認ください。

Pandas互換バージョンのPython用Snowflakeコネクタをインストールします。
PythonからSnowflakeへ繋ぐための、またPandasのDataFrameにデータを読み込ませるためにコネクタが必要になります。必要に応じてこちらをご確認ください

Dockerコンテナの作成&起動

作成したDockerfileのディレクトリでDockerコンテナを作成します。

コンテナを作成後、コンテナ名を「scipy-notebook(任意)」にして起動します。

なお、起動時にコンソールに出力される<トークン>は後ほど必要になるのでコピーしておいてください。

Jupyter Notebookの起動

localhost:8888でブラウザ起動すると以下のようにトークンを入力する画面となります。
先ほどコピーしておいたトークンをペーストしてください。

Snowflake_DATUM STUDIO

Jupyter Notebookの確認

適当にNotebookを作ってmatplotlibを使ってグラフを書いてみます。(Sample Code

大丈夫そうですね!正常にグラフも表示されています。

Snowflakeにつないでみる

それでは実際にSnowflakeにつないでみます。
今回はとりあえずPythonからSnowflakeへの接続ができているか確認できれば良いので、Snowflakeのバージョンを確認するSQLをPythonから実行してみます。
Snowflakeにつなげてバージョンを確認してみる
Jupyter Notebookで以下のようなバージョンを確認するPythonコードを実行します。

正常にSnowflakeのバージョン「4.37.0」が表示されました!
これでPythonからSnowflakeにつながっていることが確認できました。

次回予告

次回はSnowflakeのCLIツール(SnowSQL)を使って可視化するためのデータを登録してみます。
ではまた!

うにげーさびら!(よろしくお願いします!)



DATUM STUDIOは、クライアントの事業成長と経営課題解決を最適な形でサポートする、データ・ビジネスパートナーです。
データ分析の分野でお客様に最適なソリューションをご提供します。まずはご相談ください。

このページをシェアする: