はじめに
Domo Snowflake OAuthコネクターを使用すると、SnowflakeデータウェアハウスからDomoに、安全かつ簡単にデータを取り込むことができます。データウェアハウジングソリューションとして既にSnowflakeを使用している場合、このコネクターはSnowflakeとDomoを併用してデータを最大限に活用するために役立ちます。このコネクターを使用するには、Snowflakeアカウント名と、クライアントの登録時にSnowflakeから提供されたクライアントIDおよびクライアントシークレットが必要です。SnowflakeのデータをDomoに取り込んで、ほかのすべてのDomoデータと組み合わせることで、最も重要なミッションデータを集約して表示できます。Snowflake APIの詳細については、 https://docs.snowflake.net/manuals を参照してください。 Snowflakeコネクターは、クエリを使用してデータベースからデータを取得する「データベース」コネクターです。Data Centerでは、ウィンドウ上部のツールバーで [データベース] をクリックすることで、このコネクターやその他のデータベースコネクターのページにアクセスできます。 このトピックでは、Snowflake OAuthコネクターのユーザーインターフェースに固有のフィールドとメニューについて説明します。DataSetの追加、更新スケジュールの設定、DataSet情報の編集に関する一般的な情報については、「 コネクターを使用してDataSetを追加する 」を参照してください。ベストプラクティス
必要条件
Snowflakeアカウントに接続してDataSetを作成するには、以下が必要です。-
アカウントのフルネーム(Snowflakeにより提供)。これは、Snowflake URLの https://の 直後に続く部分です。
アカウントのフルネームには、アカウントがホストされる地域とクラウドプラットフォームを識別する追加のセグメントが含まれる場合があることに注意してください。以下の表に、クラウドプラットフォームまたは地域別のアカウント名の例を示します。各行に対して、アカウント名が「xy12345」であると仮定しています。

- クライアントの登録時にSnowflakeから提供されたクライアントIDおよびクライアントシークレット。
Snowflakeアカウントに接続する
このセクションでは、Snowflake OAuthコネクターページの [認証情報] ペインと [詳細] ペインのオプションについて説明します。 このページのほかのペインの項目にある [スケジュール設定] や [DataSetに名前を付け、説明を入力] に関しては、ほとんどのタイプのコネクターで共通しています。詳細については「 コネクターを使用してDataSetを追加する 」を参照してください。[認証情報]ペイン
このペインには、Snowflakeアカウントに接続するための認証情報を入力するフィールドがあります。下表は、各フィールドに必要な内容を説明しています。フィールド | 説明 |
|---|---|
Account Name | Snowflakeアカウント名を入力します。 |
Client ID | クライアントの登録時にSnowflakeから提供されたクライアントIDを入力します。 |
Client Secret | クライアントの登録時にSnowflakeから提供されたクライアントシークレットを入力します。 |
Role | 自分の権限を入力します。 |
[詳細]ペイン
このペインには、メインの [Reports] メニューのほか、選択したレポートタイプに応じて表示/非表示になるその他様々なメニューがあります。メニュー | 説明 |
|---|---|
| Query Type | カスタムクエリを入力するか、クエリビルダーを使用するかを選択します。 |
| Warehouses | 取得したいデータが格納されているウェアハウスを選択します。このリストには、認証情報にもとづいてアクセスできるすべてのウェアハウスが表示されます。 |
| Databases | 取得したいデータが格納されているデータベースを選択します。このリストには、認証情報にもとづいてアクセスできるすべてのデータベースが表示されます。 |
| Database Schema | 取得したいデータが含まれているデータベーススキーマを選択します。このリストには、認証情報にもとづいてアクセスできるすべてのスキーマが表示されます。 |
| Query | データを取得するために使用するSQLクエリを入力します。 クエリヘルパー パラメーターを使用して、使用可能なSQLクエリを記述できます。 クエリヘルパー を使用するには、以下を実行します。
|
| Database Objects | データベースオブジェクトを選択します。 |
| Tables | 取得するデータベース表を選択します。このリストには、認証情報にもとづいてアクセスできるすべての表が表示されます。データベーステーブルを選択しない場合は、コネクターはデータベーススキーマ全体を取得します。 |
| Table Columns | 取得したいテーブルの列を選択します。このリストには、認証情報にもとづいてアクセスできるすべての列が表示されます。表の列を選択しないと、コネクターは選択したデータベース表全体を取得します。 |
| Table Query Helper | このフィールドには、選択したフィールドにもとづいて生成されたクエリが表示されます。 |
| Views | ビューを選択します。 |
| View Columns | レポートに含める表示列を選択します。 |
| Query Helper | 上部のメニューから、ウェアハウス、データベース、スキーマ、表などを選択すると、利用可能なSQLクエリがこのフィールドに作成されます。このフィールドのSQLステートメントをコピーして、 [Query] フィールドに貼り付けます。 |
| Fetch Size | メモリのパフォーマンスのフェッチサイズを入力します。空白にすると、デフォルトサイズの1000が適用されます。DataSetにメモリ不足のエラーが発生した場合は、フェッチサイズを小さくしてください。 |
その他のペイン
スケジュール設定、再試行、更新に関するオプションなど、コネクターインターフェースのその他のペインに表示されるオプションについては、「 コネクターを使用してDataSetを追加する 」を参照してください。よくある質問
「OAuth access token expired」というエラーが発生しました。それはなぜですか?
「OAuth access token expired」というエラーが発生しました。それはなぜですか?
このエラーを避けるには、トークンを更新する必要があります。Snowflakeでは、アカウントが期限切れになるたびに手動でDomoアカウントを再接続する必要があります。アカウントの有効期限は、Snowflake統合によってコントロールされています。90日ごとに更新トークンが期限切れになるように設定されている場合、90日ごとにアカウントを再接続する必要があります。更新のタイムアウトを91日以上にしたい場合は、 Snowflakeサポート に連絡する必要があります。タイムアウトは90日から最大1年に延長することができます。
注意すべきAPI制限はありますか?
注意すべきAPI制限はありますか?
制限は使用するサーバー構成によって異なります。
データはどれくらいの頻度で更新されますか?
データはどれくらいの頻度で更新されますか?
DataSetは15分ごとに実行できます。ただし、クエリの実行時間によっては、DataSetの実行頻度が低くなる場合があります。
クエリの記述の際に注意すべき点はありますか?
クエリの記述の際に注意すべき点はありますか?
すべての単語、表名、フィールド名が正しく記述されていることを確認します。クエリのヘルプについては、[Query Helper]フィールドを参照してください。
Snowflakeデータベースに接続できない理由は?IPアドレスをホワイトリストに登録する必要がありますか?
Snowflakeデータベースに接続できない理由は?IPアドレスをホワイトリストに登録する必要がありますか?
Snowflakeデータベースに接続する前に、接続するポート上のデータベースサーバーにある多数のIPアドレスをホワイトリストに登録する必要があります。IPアドレスの詳細なリストは、「 ネットワーク接続にDomoのIPアドレスを許可する 」を参照してください。
ウェアハウス、データベース、スキーマなどのリストが正しく表示されない理由は?
ウェアハウス、データベース、スキーマなどのリストが正しく表示されない理由は?
Snowflakeでアカウントに入力されたユーザー権限にもとづいてアクセスできるコンテンツのみが表示されます。目的のものが見つからない場合は、権限がそのウェアハウス、データベース、表などにアクセスできることを確認してください。Snowflakeで権限を入力しない場合、デフォルトではSYSADMIN権限が使用されます。
トラブルシューティング
- 認証が有効であることを確認してください。
- 設定を見直し、すべての必須項目が選択されていることを確認してください。
- コネクターの履歴にエラーメッセージが記録されていないか確認してください。
- まれに、リクエストした情報が多すぎた結果、API制限またはタイムアウトに達する場合があります。記録されている場合は、コネクターの履歴でエラーメッセージと実行時間を確認することができます。また、取得するアカウント数やレポートのメトリクス数を減らしたり、取得するタイムフレームを短縮したりすることができます。