LookerからSnowflakeへの接続設定について
Snowflakeは強力なクラウドデータプラットフォームであり、Lookerと組み合わせることで、データ分析のパフォーマンスをさらに向上させることができます。しかし、LookerからSnowflakeに接続するためには、正しい権限や設定が必要です。本記事では、Snowflake側でのロールやユーザ設定、ウェアハウスの作成、さらにはLooker側での接続設定について、手順をわかりやすくまとめました。
目次
はじめに
LookerからSnowflakeへの接続を成功させるためには、まずSnowflake側で適切な設定を行うことが重要です。Looker専用のユーザとロールの作成、ウェアハウスの設定、データベースやスキーマに対する権限の付与が必要です。また、Snowflakeの各種オプションや機能を最大限に活用するためには、ウェアハウスの設定も最適化する必要があります。
ここでは、具体的な手順を一つ一つ見ていきます。
1. Looker用のロールとユーザの作成
まずは、Lookerが接続するためのSnowflake上のロールとユーザを作成します。
ACCOUNTADMINロールを使用 Snowflakeの最高権限を持つ
ACCOUNTADMIN
ロールを使用して作業を進めます。
use role ACCOUNTADMIN;
Looker用ロールの作成 Lookerが利用する専用のロールを作成します。既に存在する場合は再作成されません。
create role if not exists looker_role;
SYSADMINにLooker用ロールへのアクセスを許可 LookerのロールがSYSADMINロールにアクセスできるように権限を付与します。
grant role looker_role to role SYSADMIN;
Looker用ユーザの作成 Lookerが接続に使用する専用のユーザを作成し、そのユーザにロールを割り当てます。また、デフォルトで使用するロールとウェアハウスも設定します。
create user if not exists looker_user password = '任意のパスワード';
grant role looker_role to user looker_user;
alter user looker_user
set default_role = looker_role
default_warehouse = 'looker_snow';
これで、Looker専用のロールとユーザが作成され、Snowflakeのデータベースやスキーマへの接続ができるようになります。
2. Looker用ウェアハウスの作成
次に、Lookerがクエリを実行するために使用するウェアハウスを作成します。ウェアハウスはSnowflakeの計算リソースであり、Lookerからのクエリ実行に必要です。
SYSADMINロールを使用 ウェアハウス作成時には SYSADMIN
ロールを使用します。
use role SYSADMIN;
Looker用ウェアハウスの作成 Looker専用のウェアハウスを作成します。このウェアハウスは中サイズに設定し、自動サスペンドと自動再開機能を有効にします。
create warehouse if not exists looker_snow
grant all privileges on warehouse looker_snow to role looker_role;
これにより、Lookerは LOOKER_SNOW ウェアハウスを使用してクエリを実行できるようになります。
3. データベースとスキーマのアクセス権限の付与
次に、Lookerがデータベースやスキーマにアクセスできるように、適切な権限を付与します。
データベース・スキーマへの権限付与 Lookerがデータベース TEST
やスキーマ TEST
にアクセスできるようにするための権限を付与します。
grant usage on database TEST to role looker_role;
grant usage on schema TEST to role looker_role;
テーブルへのSELECT権限付与 Lookerがテーブルデータにアクセスできるように、テーブルに対する SELECT 権限を付与します。
grant select on table TEST.TRANSACTIONS_DATA to role looker_role;
#以下は永続権限
grant select on future tables in schema TEST.TEST to role looker_role;
これにより、LookerがSnowflake上のデータベースやスキーマ内のテーブルにアクセスしてクエリを実行できるようになります。
4. Looker側での接続設定
Snowflake側の設定が完了したら、次はLooker側で接続設定を行います。Lookerの管理画面で、新しい接続を追加し、次の項目を入力してください:
- 接続名: 任意の名前(例:
snow_looker_demo
) - ホスト:
ホスト名.snowflakecomputing.com
(SnowflakeUIの左下にあるアカウントからコピーできます。)
- データベース:
TEST
- スキーマ:
TEST
- ウェアハウス:
LOOKER_SNOW
- ユーザ名:
looker_user
- パスワード:
設定したパス
さらに、Additional JDBC Parameters
に以下を追加します:
WAREHOUSE=LOOKER_SNOW
接続テストを行い、成功すればLookerからSnowflakeへの接続が完了です。
最後に
SnowflakeとLookerを接続するためのステップは、適切なロールやユーザの設定、ウェアハウスの作成、そして必要な権限の付与です。これらを適切に設定することで、LookerからSnowflakeのデータをシームレスに活用できる環境が整います。
今回紹介した手順を参考にして、効果的なデータ分析環境を構築し、ビジネスインサイトの発見に役立ててください。