Snowsightのワークシートで作業する¶
ワークシートは、Snowflakeプラットフォーム内で SQL クエリやPythonコードを実行したり、その他のSnowflakeデータのロード、定義、操作タスクを実行したりするための強力で汎用性の高い方法を提供します。
Snowsight でワークシートを開いた後、次のいずれかを実行できます。
SQL ステートメントを記述 し、 結果を視覚化 します。
注釈
ワークシート内で SQL またはPythonコードを実行すると、ウェアハウスクレジットが消費されます。コスト効率良くコードを実行する方法については、コストの最適化 をご参照ください。
ワークシートを閲覧して開く¶
ワークシートを開くと、 Worksheets explorer で他のワークシートを表示および管理できます。Worksheets explorer では、特定のワークシートを検索することもできます。
注釈
検索機能は、タイトルやオブジェクト名などのワークシートのメタデータにインデックスを付けるように設計されています。クエリ内でユーザーが記述した値(数字、文字列リテラル、個人を特定できる情報/PIIなど)にはインデックスを付けません。これは、機密データを保護するための設計によるものです。
ワークシートコンテンツのプレビュー¶
ワークシートのコンテンツをプレビューするには、 Worksheets explorer でワークシートの名前にカーソルを合わせます。プレビューには、ワークシートの実行に使用されたロールも表示されます。
プレビューから、ワークシートのコンテンツをコピーすることもできます。ワークシートコンテンツのプレビューにカーソルを合わせ、表示される Copy ボタンを選択します。
キーボードショートカットでタスクを実行する¶
Snowsight には、ワークシート内のクエリをすばやくナビゲートおよび編集するのに役立つキーボードショートカットが用意されています。たとえば、ホットキーを使用して、ワークシート内でカーソルを移動したり、検索と置換を実行したり、行をコピーしたり、クエリをフォーマットしたりできます。
タスク |
MacOS ショートカット |
ウィンドウズショートカット |
---|---|---|
キーボードショートカットを表示 |
⌘ + Shift + / |
Ctrl + Shift + / |
新しいクエリ |
Ctrl + ⌘ + n |
Ctrl + Alt + n |
検索スキーマまたは検索結果 |
⌘ + Shift + f |
Ctrl + Shift + f |
選択をクリア |
Escape |
Escape |
下部ペインを大きくする |
Ctrl + ` + ↑ |
Ctrl + ` + ↑ |
下部ペインを小さくする |
Ctrl + ` + ↓ |
Ctrl + ` + ↓ |
ペインタブを右に1つ移動 |
Ctrl + ` + → |
Ctrl + ` + → |
ペインタブを左に1つ移動 |
Ctrl + ` + ← |
Ctrl + ` + ← |
選択された実行 |
⌘ + Return |
Ctrl + Enter |
すべて実行 |
⌘ + Shift + Return |
Ctrl + Alt + Enter |
形式クエリ |
⌘ + Shift + o |
Ctrl + Shift + o |
行をインデント |
⌘ + ] |
Ctrl + ] |
行をアウトデント |
⌘ + [ |
Ctrl + [ |
コメントを切り替え |
⌘ + / |
Ctrl + / |
検索 |
⌘ + f |
Ctrl + f |
置換 |
⌘ + Shift + h |
Ctrl + h |
次を検索 |
⌘ + g |
F3 |
前を検索 |
⌘ + Shift + g |
Shift + F3 |
行を上に移動 |
` + ↑ |
Alt + ↑ |
行を下に移動 |
` + ↓ |
Alt + ↓ |
行を上にコピー |
` + Shift + ↑ |
Alt + Shift + ↑ |
行を下にコピー |
` + Shift + ↓ |
Alt + Shift + ↓ |
行を削除 |
Ctrl + Shift + k |
Ctrl + Shift + k |
ペインを水平方向に分割 |
Ctrl + \ |
Ctrl + \ |
ペインを垂直方向に分割 |
Ctrl + Shift + \ |
Ctrl + Shift + \ |
Snowsight で利用可能なすべてのキーボードショートカットを表示するには、ワークシートを開き、Macのキーボードであれば CMD + SHIFT + / を、Windowsのキーボードであれば CTRL + SHIFT + / を押します。
ワークシートのコンテキストを変更する¶
ワークシートを作成する際に、ワークシートのコンテンツを実行するためのロールとウェアハウスを指定します。この情報は ワークシートコンテキスト と呼ばれ、将来のセッションのために保存され、同じワークシートのすべてのユーザーと共有されます。
注釈
ロールセレクターでプライマリロールを選択できます。SQL ワークシートで二次的なロールを有効にするには、 USE SECONDARY ROLES を実行します。現在のセッションでセカンダリロールが有効かどうかを判断するには、 CURRENT_SECONDARY_ROLES 関数 CURRENT_SECONDARY_ROLES を呼び出します。
ワークシートのロールコンテキストは、そのロールに付与されているアクセス制御権限に基づいて、Snowflakeオブジェクトで実行できる操作を決定します。
ワークシートのコンテキストを設定するには、次を実行します。
Snowsight にサインインします。
Projects » Worksheets を選択して、ワークシートのリストを開きます。
ワークシートを開きます。
コンテキストセレクターを開きます。
ワークシートを実行するロールを選択します。
そのロールが使用する権限を持つウェアハウスを選択します。
ドロップダウン以外の場所を選択して、コンテキストセレクターを閉じます。
注釈
各ワークシートは一意のセッションを持ち、ユーザーメニューで選択したロール( アクティブなロール )とは異なるロールを使用できます。アクティブなロールを変更しても、コンテキストセレクターでワークシートに割り当てられたロールは変更されません。
ウェアハウスの再開またはサイズ変更¶
ワークシートを実行する前後に、ウェアハウスの再開またはサイズ変更が必要になる場合があります。
注釈
ウェアハウスの詳細を変更するには、ウェアハウスに対する MODIFY または OWNERSHIP 権限が必要です。
コンテキストセレクターを使用してウェアハウスの詳細を表示または調整するには、次を実行します。
Snowsight にサインインします。
Projects » Worksheets を選択して、ワークシートのリストを開きます。
ワークシートを開きます。
コンテキストセレクターを開きます。
Show warehouse details アイコンを選択します。
Status オプションでは、ステータスを選択し、ウェアハウスが中断されている場合は Resume を選択します。
Size オプションでは、サイズを選択し、別のサイズを選択します。
ドロップダウン以外の場所を選択して、コンテキストセレクターを閉じます。
ワークシートの管理¶
Snowsight のワークシートは、ワークシートタブまたは Worksheets explorer から管理できます。ワークシートタブメニューにアクセスするには、ワークシートを開き、タブの上にカーソルを置き、 を選択します。Worksheets explorer にアクセスするには、ワークシート名にカーソルを合わせ、
を選択します。
各メニューで利用可能なアクションは、現在のロールに基づいています。権限に応じて、以下のことができます。
ワークシートの名前を変更、削除、移動します(編集または所有権の権限が必要です)。
ワークシートをフォルダーやダッシュボードに移動して整理します。
SQL を外部ファイルからインポートします。
クエリをフォーマットします。
他のワークシートを検索します。
ワークシートを複製します(任意のロール)。
Tip
ワークシートにカーソルを合わせると、その内容をプレビューできます。
どのワークシートがタブで開かれているかは、ワークシートのアイコンを参照することで識別できます。実線のアイコンは、ワークシートが現在開かれていることを示します。メニューオプションにアクセスするには、ワークシート名にカーソルを合わせ、表示されている省略記号を選択します。
ワークシートの履歴とバージョンの管理¶
ワークシートに加えたローカル編集は、3秒ごとに自動的に保存されますが、自分だけが見ることができます。SQL クエリを実行したり、ワークシートでコードを実行したりすると、最新バージョンが更新され、すべての共同作業者と共有されます。また、ワークシートの過去のバージョンを表示したり、任意のバージョンから詳細をコピーしたりすることもできます。詳細については、 ワークシートのバージョンの切り替え をご参照ください。
ワークシートに変更を加えたり、ワークシートのバージョンを管理したりする場合は、以下を考慮してください。
ワークシートを他のユーザーと共有すると、編集権限を持つユーザーはワークシートの過去のバージョンを表示できます。ワークシートを共有するすべてのユーザーは、ワークシートの最新バージョンの結果を10,000行まで表示できます。
権限を持つ誰かがワークシートを実行するたびに、ワークシートの新しいバージョンが保存されます。
ワークシートに変更を加えても消えてしまう場合は、バージョン履歴を使用して、変更が加えられた保存済みのドラフトを開きます。
ワークシートの最も最近実行されたバージョンが、共同作業者に表示されるバージョンです。
ワークシートを共有したユーザーに表示されるようにワークシートに変更を加えるには、ワークシートを実行する必要があります。
複数のユーザーが共有ワークシートを同時に編集および実行すると、ワークシートを実行するたびに新しいバージョンが作成されます。ワークシートを開いたりリフレッシュしたときに表示されるのは、最近実行されたバージョンのワークシートです。
ワークシートのバージョンの切り替え¶
過去のバージョンのワークシートを表示するには、次を実行します。
Snowsight にサインインします。
Projects » Worksheets を選択して、ワークシートのリストを開きます。
ワークシートを開きます。
ワークシートの Code Versions を選択します。
ワークシートバージョンのリストから、表示したいバージョンのタイムスタンプを選択します。
そのバージョンのワークシートの詳細を確認し、オプションでコピーします。
ワークシートの現在のバージョンに戻るには、 Close を選択します。
過去のワークシートの実行結果を表示するには、ワークシートの Query History を表示します。クエリ履歴を表示 をご参照ください。
過去のワークシートバージョンの格納された結果¶
注釈
ほとんどのアカウントで利用可能です。米国政府リージョンのアカウント、Virtual Private Snowflake(VPS)を使用しているアカウント、Private Connectivityを使用してSnowflakeにアクセスしているアカウントでは、クエリ結果は引き続き10,000行に制限されます。
ワークシートで実行されたクエリの結果はすべて、最大24時間利用可能です。24時間後に結果を表示するには、クエリを再度実行する必要があります。
コンテキスト統計とワークシート結果の共有をサポートするために、最新の25のクエリ結果は、最大90日間キャッシュされます。このキャッシュは、アカウントのデータストレージ使用量に含まれています。
ドロップされたユーザーが所有するワークシートを回復する¶
ユーザーをドロップした場合、そのユーザーが所有するワークシートの最大500シートまで回復できます。ワークシートを回復するには、次を実行します。
ドロップされたユーザーが所有する 回復したワークシートをダウンロード します。
SQL ファイルからワークシートを作成 して、回復したワークシートをSnowflakeに追加します。
ユーザーをドロップする前にワークシートの所有権を変更したり、ワークシートへのアクセス権を保持したい場合は、そのユーザーにワークシートの共有を依頼してください。ワークシートとフォルダーの共有 をご参照ください。
ドロップされたユーザーが所有する回復したワークシートをダウンロードする¶
ドロップされたユーザーが所有するワークシートを回復するには、そのユーザーが所有する最大500シートのワークシートを含む .tar.gz
件のアーカイブファイルをダウンロードします。
注釈
ドロップされたユーザーのワークシートを回復するには、 ACCOUNTADMIN ロールが付与されている必要があります。
Snowsight にサインインします。
Projects » Worksheets を選択します。
ダイアログボックスで、アカウントにドロップされたユーザーのユーザー名を入力します。
重要
ユーザー名の大文字と小文字、およびスペルは、Snowflakeに保存されているユーザー名と完全に一致する必要があります。
Recover を選択します。
ウェブブラウザーは、最大500シートのワークシートを含む
.tar
ファイルをダウンロードします。ドロップされたユーザーに500件以上のワークシートがある場合、最近更新された500件のワークシートのみがダウンロードされます。
ドロップされたユーザーが所有するワークシートをダウンロードした後、SQL ファイルからワークシートを作成して、回復したワークシートを Snowsight に追加します。
回復したワークシートを Snowsight に追加する前に、ダウンロードした .tar
ファイルを .sql
ファイルのフォルダーに展開する必要があります。Snowsight には一度に1つのワークシートのみを追加でき、回復したワークシートを Snowsight に追加したユーザーがワークシートの新しい所有者になります。
詳細については SQL ファイルからワークシートを作成する をご参照ください。
削除されたユーザーが所有するワークシートを回復するための考慮事項¶
最近実行されたバージョンのワークシートのタイトルと内容のみが回復されます。ワークシートのバージョン履歴、共有先と権限、クエリ結果、およびワークシートのメタデータは回復されません。
最大で500シートのワークシートが回復されます。ドロップされたユーザーに500シート以上のワークシートがある場合、最近更新された500シートのワークシートのみがダウンロードされます。
Snowsight のワークシートのみが回復されます。ドロップされたユーザーが所有する Classic Console のワークシートは、この方法では回復できません。
複数のドロップされたユーザーが同じユーザー名を持つ場合、そのユーザー名を持つすべてのドロップされたユーザーが所有するワークシートが回復されます。
予期しない理由でワークシートの回復が失敗した場合は、 Snowflakeサポート に連絡してください。
ワークシートの内部Snowflakeオブジェクト¶
Snowflakeは、 Snowsight のワークシートの使用をサポートするために次の内部オブジェクトを作成します。
オブジェクト型 |
名前 |
---|---|
セキュリティ統合 |
WORKSHEETS |
BLOB |
WORKSHEETS_APP |
データベース |
WORKSHEETS_APP |
ユーザー |
WORKSHEETS_APP_USER |
ロール |
APPADMIN, WORKSHEETS_APP_RL |
これらの内部オブジェクトは、アカウントの内部ステージでクエリ結果をキャッシュするために使用されます。このキャッシュされたデータは暗号化され、アカウントのキー階層によって保護されます。
内部ロールに付与された制限付き権限は、 Snowsight が内部ステージにアクセスしてそれらの結果を格納することのみを許可します。ロールは、アカウント内のオブジェクトを一覧表示したり、テーブル内のデータにアクセスしたりすることは できません。
SNOWFLAKE 共有データベースの ACCOUNT_USAGE スキーマで、それぞれ USERS ビューと ROLES ビューをクエリすると、 Snowsight のユーザーとロールが返されます。SHOW <オブジェクト> ステートメントはこれらの内部オブジェクトを返しません。