関数とプロシージャによるSnowflakeの拡張¶
SQL から呼び出すことができるユーザー定義関数(UDFs)とストアドプロシージャを記述すると、Snowflakeで使用する SQL を拡張できます。UDF またはプロシージャを記述する場合は、サポートされているハンドラー言語のいずれかでそのロジックを記述し、 SQL を使用して作成します。
UDF を使用すると、通常、値は計算後に返されます。ストアドプロシージャでは、通常、 SQL ステートメントを実行して管理操作を実行します。
クラウドプロバイダーなど、Snowflakeの外部のシステムでロジックが実行される外部関数を作成することもできます。
- ストアドプロシージャとユーザー定義関数のどちらを記述するかの選択
ストアドプロシージャを記述するか、ユーザー定義関数を記述するかを選択します。
- 関数およびプロシージャの設計ガイドラインおよび制約
展開オプション、セキュリティプラクティス、プラットフォームの制約、および規則に関連するガイドラインなど、機能とプロシージャが共有するガイドラインの詳細をお読みください。
- ハンドラーコードのパッケージ化
ツールを使用してハンドラーコードをパッケージ化し、依存関係がSnowflakeで利用できるようにします。
- ストアドプロシージャの概要
メリットとサポートされている言語について学びます。
- ユーザー定義関数の概要
UDFs の種類とサポートされている言語について学びます。
- ログおよびトレースの概要
ログメッセージとトレースイベントをキャプチャしてハンドラーコードのアクティビティを記録し、後でクエリできるデータベースにデータを保存します。
- 外部ネットワークアクセスの概要
Snowflakeの外部にある特定のネットワークロケーションへのセキュアアクセスを作成し、ハンドラーコード内からそのアクセスを使用します。
- 外部関数の紹介
ジオコーディングや機械学習モデルを提供する API サービスなど、Snowflakeの外部で実行されるカスタムコードにアクセスします。