
Snowflake Python Connectorのインストール方法
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
こんにちは!DA(データアナリティクス)事業本部 インテグレーション部の大高です。
SnowflakeのPython Connectorを改めてインストールし直したので、手順をまとめておきたいと思います。
前提
OSはUbuntuの18.04を利用しています。(WindowsのWSLです)
$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 18.04.3 LTS Release: 18.04 Codename: bionic
Pythonのバージョンは3.8.2、pipのバージョンは20.0.2です。
$ python --version Python 3.8.2 $ pip --version pip 20.0.2 from /home/ubuntu/.anyenv/envs/pyenv/versions/3.8.2/lib/python3.8/site-packages/pip (python 3.8)
pyenvとpipenvも利用しており、作業ディレクトリも、以下で設定を済ませてあります。
$ pyenv local 3.8.2 $ pipenv --python 3.8
Python Connectorのインストール
では、早速下記のドキュメントに従って、インストールを進めます。
Installing the Python Connector — Snowflake Documentation
インストール要件
Pythonのバージョンは3.5以上、pipのバージョンは19.0以上が必要となります。
また、Linux環境ではopensslとlibffiが必要となるので、下記コマンドでインストールしておきます。
$ sudo apt install -y libssl-dev libffi-dev
なお、yumの場合はこちらです。
$ sudo yum install -y openssl-devel libffi-devel
Python Connectorのインストール
以下を実行するだけでインストール完了です。
$ pipenv install snowflake-connector-python
インストールの検証
インストールが終わったら検証を行ってみます。
ドキュメントに記載されているサンプルコードを元に、.envによる環境変数を利用するように修正して検証コードを作成しました。
このファイルをvalidate.pyとして保存します。
import os
import snowflake.connector
# Gets the version
ctx = snowflake.connector.connect(
user=os.environ['SNOWFLAKE_USER'],
password=os.environ['SNOWFLAKE_PASSWORD'],
account=os.environ['SNOWFLAKE_ACCOUNT']
)
cs = ctx.cursor()
try:
cs.execute("SELECT current_version()")
one_row = cs.fetchone()
print(one_row[0])
finally:
cs.close()
ctx.close()
併せて下記のように環境変数を.envファイルに記述しておきます。
SNOWFLAKE_USER=sam_strand SNOWFLAKE_PASSWORD=rVKQ7kU5eiR5zhBieNKyTU4xnzavFsSJ SNOWFLAKE_ACCOUNT=bridges.ap-northeast-1.aws
ここまで準備ができたら、pipenvのshellに入って実行してみます。shellに入る際に.envが読み込まれて、指定の環境変数で接続検証が行えます。接続ができたらバージョン番号が表示されるはずです。
$ pipenv shell $ python validate.py 4.10.1
無事に、接続できました!これで、python-connectorが正常に動いていることも確認できましたね。
まとめ
以上、Python Connectorのインストールでした。pipでインストールするだけなので簡単ですが、インストール要件だけ注意が必要そうですね。
どなたかのお役に立てば幸いです。それでは!






