チュートリアル 1: データベース、スキーマ、テーブルの作成と管理¶
概要¶
このチュートリアルでは、データベース、テーブル、スキーマを作成および管理するために、 REST クエリを送信する方法を学びます。
前提条件¶
注釈
Snowflake REST APIs チュートリアルの共通設定 のステップをすでに完了している場合は、これらの前提条件をスキップして、このチュートリアルの最初のステップに進むことができます。
このチュートリアルを始める前に、以下のステップを含む 共通セットアップ の説明を完了しておく必要があります。
Snowflake REST APIs Postman コレクションをインポートします。
Postmanでベアラートークンを設定して接続を認証します。
これらの前提条件が完了したら、 API を使い始める準備が整います。
データベースの作成と利用可能なデータベースの一覧表示¶
Postmanを使ってデータベースを作成し、利用可能なデータベースを一覧表示することができます。
データベースを作成するには、図のように、
/api/v2/databases
エンドポイントに、以下のリクエスト・ボディを持つ:codenowrap:POST
リクエストを送信します。{ "name": "demo_db", "kind": "PERMANENT", "comment": "snowflake rest api demo-db", "data_retention_time_in_days": "1", "max_data_extension_time_in_days": "1" }
利用可能なデータベースを一覧表示するには、以下の例に示すように、
/api/v2/databases
エンドポイントに:codenowrap:GET
リクエストを送ります。名前に
demo
という文字列を含むデータベースを検索するには、 like クエリ・パラメーターに:codenowrap:%25demo%25
を指定します。名前が文字列
DEMO_DB
で始まる最初のデータベースを返すには、 startsWith と showLimit のクエリ・パラメーターに、それぞれDEMO_DB
と1
を指定します。
詳細については、 Snowflake Database API 参照 をご参照ください。
スキーマの作成と利用可能なスキーマの一覧表示¶
Postmanを使ってスキーマを作成し、利用可能なスキーマを一覧表示することができます。
スキーマを作成するには、次のように
/api/v2/databases/{database}/schemas
エンドポイントにPOST
リクエストを送ります。データベース名(
demo_db
) をリクエストヘッダーの database パス変数に追加します。スキーマ名(
demo_sc
)をリクエスト・ボディに追加します。{ "name": "demo_sc", }
利用可能なスキーマを一覧表示するには、
/api/v2/databases/{database}/schemas
エンドポイントに:codenowrap:GET
リクエストを送ります。この例では、 startsWith と showLimit のクエリ・パラメーターにそれぞれDEMO_SC
と1
を指定して、名前が文字列DEMO_SC
で始まる最初のスキーマを返します。
詳細については、 Snowflake Schema API 参照 をご参照ください。
テーブルを作成し、テーブルの詳細を取得する¶
Postmanを使ってテーブルを作成し、利用可能なテーブルを一覧表示することができます。
テーブルを作成するには、次のように
/api/v2/databases/{database}/schemas/{schema}/tables
エンドポイントにPOST
リクエストを送ります。データベース名(
demo_db
)とスキーマ名(demo_sc
)を、リクエスト・ヘッダーの database と database パス変数にそれぞれ追加します。テーブル名(
demo_tbl
)とテーブル列をリクエスト・ボディに追加します。この場合、C1
という列を1つ追加しています。{ "name": "demo_tbl", "columns": [ { "name": "c1", "datatype": "integer", "nullable": true, "comment": "An integral value column" } ], "comment": "Demo table for Snowflake REST API" }
今作成したテーブルを取得するには、
/api/v2/databases/{database}/schemas/{schema}/tables/{name}
エンドポイントに:codenowrap:GET
リクエストを送ります。この場合、 database 、 schema 、 name のパス変数にそれぞれdemo_db
、demo_sc
、demo_tbl
を指定します。
詳細については、 Snowflake Table API 参照 をご参照ください。
テーブルを変更し、テーブルの詳細を取得する¶
Postmanを使ってテーブルを変更することができます。
前回のチュートリアルで作成したテーブルを変更するには、次のように
/api/v2/databases/{database}/schemas/{schema}/tables/{name}
エンドポイントにPUT
リクエストを送ります。作成したデータベース、スキーマ、テーブルの名前を、対応するパス変数に指定します。
リクエスト本文に、新しいテーブル定義を入力します。この場合、テーブルに新しい列を追加します。
{ "name": "demo_tbl", "columns": [ { "name": "c1", "datatype": "integer", "nullable": true, "comment": "An integral value column" }, { "name": "c2", "datatype": "string", "comment": "An string value column" } ], "comment": "Demo table for Snowflake REST API" }
/api/v2/databases/{database}/schemas/{schema}/tables/{name}
エンドポイントに:codenowrap:GET
リクエストを送信してテーブルの詳細を取得し、変更を検証します。この場合、 database 、 schema 、 name のパス変数にそれぞれdemo_db
、demo_sc
、demo_tbl
を指定します。テーブルには新たに
C2
列を含むことにご注意ください。
詳細については、 Snowflake Table API 参照 をご参照ください。
利用可能なテーブルの一覧表示¶
/api/v2/databases/{database}/schemas/{schema}/tables
エンドポイントを使用すると、使用可能なすべてのテーブルの一覧表示を返すことができます。
利用可能なすべてのテーブルを一覧表示するには、
/api/v2/databases/{database}/schemas/{schema}/tables
エンドポイントに、次のようにクエリ パラメーターなしで:codenowrap:GET
リクエストを送ります。この場合、demo_db
とdemo_sc
、demo_tbl
をそれぞれ database 、 schema 、 name パス変数に指定します。各テーブルの列と制約の完全な詳細を一覧表示するには、図のように recursive クエリ・パラメーターを追加し、値を:codenowrap:
true
に設定します。このクエリ・パラメーターを有効にすると、複数の複雑なテーブルがある場合、接続を圧迫する可能性があることに注意してください。
詳細については、 Snowflake Table API 参照 をご参照ください。
次の内容¶
おめでとうございます。このチュートリアルでは、 Snowflake REST APIs を使用して、Snowflake データベース、スキーマ、およびテーブルリソースを管理するための基礎を学びました。
概要¶
その過程で、あなたは以下のタスクを完了しました。
データベースの作成と一覧表示をします。
スキーマの作成と一覧表示をします。
テーブルを作成し、テーブルの詳細を取得します。
テーブルを変更し、テーブルの詳細を取得します。
利用可能なテーブルを一覧表示します。
次のチュートリアル¶
次に、 チュートリアル2:タスクの作成と管理 に進み、Snowflakeタスクの作成と管理方法を説明します。