スポンサーリンク

【Python】データフレームからSnowflakeのテーブルへインポートする方法

記事内に広告が含まれています。

Pythonで、データフレームのデータをSnowflakeへインポートする方法を記載しておきます。

CSVファイルからデータフレームを作成し、Snowflakeのテーブルへ格納するコードです。

import os
import pandas as pd

import snowflake.connector
from snowflake.connector.pandas_tools import write_pandas
from dotenv import load_dotenv
load_dotenv(override=True)


def get_connection():
    conn = snowflake.connector.connect(
        user=os.environ['SNOWFLAKE_USER'],
        password=os.environ['SNOWFLAKE_PASSWORD'],
        account=os.environ['SNOWFLAKE_ACCOUNT'],
        warehouse=os.environ['SNOWFLAKE_WAREHOUSE'],
        database=os.environ['SNOWFLAKE_DATABASE'],
        schema=os.environ['SNOWFLAKE_SCHEMA']
    )
    return conn


def main():

    # ヘッダーなし、3カラムのcsvファイルのデータをデータフレームに格納
    column_names = ['Column1', 'Column2', 'Column3']
    df = pd.read_csv('input.csv', header=None, names=column_names)

    conn = get_connection()
    success, nchunks, nrows, _ = write_pandas(conn, df, 'TABLE_NAME')


if __name__ == "__main__":
    main()

Snowflakeのアクセス情報は環境変数に設定しています。

カラム名やテーブル名は取込先にあわせて変更してください。

COPYコマンドの利用でもインポートできますが、Pythonから実行したい場合はこの方法が便利かと思います。

スポンサーリンク
スポンサーリンク
Python
著者SNS
タイトルとURLをコピーしました