SnowflakeにSQLを発行して、結果をデータフレームに取得し、ついでにCSVファイルに出力してみます。
ライブラリをインストールしておきます。
pip install snowflake-connector-python pandas
下記のスクリプトを実行します。変数(YOUR_SNOWFLAKE_XXXX
、YOUR_SELECT_QUERY_HERE
)は適切な値に置き換えて使用してください。
import pandas as pd
import snowflake.connector
# Snowflake接続情報
SNOWFLAKE_ACCOUNT = 'YOUR_SNOWFLAKE_ACCOUNT_URL'
SNOWFLAKE_USER = 'YOUR_SNOWFLAKE_USERNAME'
SNOWFLAKE_PASSWORD = 'YOUR_SNOWFLAKE_PASSWORD'
SNOWFLAKE_DATABASE = 'YOUR_SNOWFLAKE_DATABASE'
SNOWFLAKE_SCHEMA = 'YOUR_SNOWFLAKE_SCHEMA'
SNOWFLAKE_WAREHOUSE = 'YOUR_SNOWFLAKE_WAREHOUSE'
# Snowflakeに接続
conn = snowflake.connector.connect(
user=SNOWFLAKE_USER,
password=SNOWFLAKE_PASSWORD,
account=SNOWFLAKE_ACCOUNT,
warehouse=SNOWFLAKE_WAREHOUSE,
database=SNOWFLAKE_DATABASE,
schema=SNOWFLAKE_SCHEMA
)
# SELECT文を実行して結果をDataFrameに読込み
query = "YOUR_SELECT_QUERY_HERE"
df = pd.read_sql(query, conn)
# 結果をCSVファイルに保存
csv_file_path = "output.csv"
df.to_csv(csv_file_path, index=False)
conn.close()
pandasのread_sqlを使用しています。AWSのAthenaからSQLの実行結果を取得する際も使用していましたが、いろいろなデータソースに使用できて便利です。