[小ネタ]SnowSQLで複数環境に簡単に接続できるように設定してみた

[小ネタ]SnowSQLで複数環境に簡単に接続できるように設定してみた

2020.11.06

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

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

SnowflakeのCLIクライアントツール「SnowSQL」では、configファイルに接続情報を設定しておくと簡単に複数環境に接続することができます。今回3環境を設定して試してみたので残しておきます。

前提条件

SnowSQLはインストール済みの環境を前提としています。また、今回の検証ではWSL(Ubuntu)を利用しています。

設定方法

SnowSQLをインストールすると、設定ファイルが ~/.snowsql/config として作成されているので、このファイルに以下のように追記します。

accountnameにはSnowflakeのログインURLに表示されているアカウント名を指定します。usernamepasswordはそのままユーザ名とパスワードです。 ※パスワードが平文で保存されるのでファイルの権限には注意が必要です。

[connections.aws]
accountname = foo.ap-northeast-1.aws
username = foo
password = bar

[connections.gcp]
accountname = foo.us-central1.gcp
username = foo
password = bar

[connections.azure]
accountname = foo.southeast-asia.azure
username = foo
password = bar

この設定のconnections.xxxxxx箇所を利用して接続先を指定することができます。

接続方法

接続時には以下のように-cオプションで接続先を指定して接続します。

$ snowsql -c xxx

または、以下のオプションでも接続できます。

$ snowsql --connection xxx

それぞれ3環境試してみました。

$ snowsql -c aws
❄ SnowSQL ❄ v1.2.10
Type SQL statements or !help
foo#COMPUTE_WH@(no database).(no schema)>SELECT CURRENT_REGION();
╒════════════════════╕                                                          
│ CURRENT_REGION()   │
╞════════════════════╡
│ AWS_AP_NORTHEAST_1 │
╘════════════════════╛
1 Row(s) produced. Time Elapsed: 0.156s
foo#COMPUTE_WH@(no database).(no schema)>!quit
Goodbye!    
$ snowsql -c gcp
❄ SnowSQL ❄ v1.2.10
Type SQL statements or !help
foo#COMPUTE_WH@(no database).(no schema)>SELECT CURRENT_REGION();
╒══════════════════╕                                                            
│ CURRENT_REGION() │
╞══════════════════╡
│ GCP_US_CENTRAL1  │
╘══════════════════╛
1 Row(s) produced. Time Elapsed: 0.181s
foo#COMPUTE_WH@(no database).(no schema)>!quit
Goodbye!      
$ snowsql -c azure
❄ SnowSQL ❄ v1.2.10
Type SQL statements or !help
foo#COMPUTE_WH@(no database).(no schema)>SELECT CURRENT_REGION();
╒═════════════════════╕                                                         
│ CURRENT_REGION()    │
╞═════════════════════╡
│ AZURE_SOUTHEASTASIA │
╘═════════════════════╛
1 Row(s) produced. Time Elapsed: 0.312s
foo#COMPUTE_WH@(no database).(no schema)>!quit
Goodbye!      

ちゃんと切り替えられていますね。

まとめ

この設定は複数環境を利用している場合には、簡単に切り替えて接続できるのでとても便利な設定かと思います。

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

参考


データ分析基盤ならCSAにおまかせください!

クラスメソッドでは、データ分析に関わる皆様の作業コストを削減し、分析アクションを促進・効率化・自動化するためのデータ分析基盤「カスタマーストーリーアナリティクス」を提供・展開しています。興味をお持ち頂けた方は下記バナーをクリックし、詳細をご覧頂けますと幸いです。(各種問い合わせも承っております)

データ分析基盤を最短1ヶ月で導入可能


また、現在クラスメソッドでは毎週無料の相談会を開催しています。データ分析基盤の構築から、BIツール、データ統合など、ビッグデータ分析の導入や活用、技術についてお気軽にご相談ください。

データ分析相談会

この記事をシェアする

データ分析基盤を最短1ヶ月で導入できる

関連記事