こちらもご参照ください。<url_of_proxy_and_resource>;Copy必須パラメーター¶name:関数の識別子を指定します。識別子には、スキーマ名、データベース名、および関数名を含めることができます。関数は名前と引数のタイプによって識別および解決されるため、識別子は、関数が作成されるスキーマに対して一意である必要はありません。署名(名前と引数のデータ型)はスキーマ内で一意である必要があります。ルールに従う必要があります。リモートサービス名と同じに設定すると、関係がより明確になります。これは必須ではありません。)外部関数の引数/入力を指定します。これらは、リモートサービスが期待する引数に対応している必要があります。引数がない場合は、引数名とデータ型なしで括弧を含めます。...関数によって返されるデータ型を指定します。統合オブジェクトの名前です。GatewayまたはAPI管理サービス)とリソースの呼び出しURLです。オプションのパラメーター¶SECURE関数が安全であることを指定します。ヘッダー、およびコンテキストヘッダーは、関数の所有者ではないすべてのユーザーに対して非表示になります。値のみを返す必要があるかを示します。以外の値のみを返す必要があります。値を返すことができます。STRICTnull入力で呼び出されたときの関数の動作を指定します。入力がnullの場合は常にnullを返すシステム定義関数とは対照的に、外部関数はnull入力を処理でき、入力がnullの場合でもnull以外の値を返します。常にnull入力で関数を呼び出します。そのような値を適切に処理するのは関数次第です。STRICT)は、入力がnullの場合、関数を呼び出しません。代わりに、その行に対して常にnull値が返されます。関数は、null以外の入力に対してもnullを返す場合があります。IMMUTABLE結果を返すときの関数の動作を指定します。非決定性とステートフルネスのため)、異なる行に対して異なる値を返す場合があります。同じ入力で呼び出された場合、関数は常に同じ結果を返します。Snowflakeは、これに対するチェックと保証をしません。リモートサービスは、このように動作するように設計する必要があります。指定すると、未定義の動作が発生します。VOLATILESnowflakeは、デフォルトを受け入れるのではなく、これを明示的に設定することをお勧めします。これを明示的に設定すると、エラーの可能性が減り、関数の動作がユーザーにわかります。コマンドは、関数が可変か不変かを表示。列に表示される関数のコメントを指定します。]この句を使用すると、ユーザーはすべてのリクエストで送信されるキー値メタデータを指定できます。外部関数の作成者はヘッダーに何を入れるかを決定し、呼び出し元はそれを制御できません。ヘッダーとして送信します。値は、式ではなく定数文字列でなければなりません。ヘッダーを2つ追加します。sf-custom-distance-measure、および対応する値。ヘッダー名のルールは、Snowflakeデータベース識別子のルールとは異なります。文字(小数点32~126)で構成できます。スペース文字(),/:;<>="?@[]\{}_特に、アンダースコア文字はヘッダー名に使用できないことに注意してください。ヘッダー名と値は一重引用符で区切られているため、ヘッダー名または値内の単一引用符はバックスラッシュ文字でエスケープする必要があります。バックスラッシュ文字をヘッダー値内のリテラル文字として使用する場合は、エスケープする必要があります。ヘッダー値では、スペースとタブの両方を使用できますが、ヘッダー値には、1行に複数の空白文字を含めることはできません。2つのスペースが連続している場合)の組み合わせに適用されます。関数ユーザーには表示されません。以下でなければなりません。ヘッダーにバインドします。)すべてのコンテキスト関数がコンテキストヘッダーでサポートされているわけではありません。以下がサポートされています。句にリストされている場合、関数名は引用符で囲まないでください。リクエストに書き込む前に、「sf-context」を付加します。リクエストに書き込みます。使用できる文字と同じです。Snowflakeは、1つ以上の無効な文字の各シーケンスを1つのスペース文字に置き換えます。(置換は、文字ごとではなくシーケンスごと。送信される値は次のとおりです。エンコードされたコンテキスト関数結果を含むバイナリコンテキストヘッダーも送信します。上記の例では、Base64ヘッダーで送信される値は、次の呼び出しの結果です。base64_encode('select\n/ÄÎßë¬±©®/\nmy_external_function(1)')Copyリモートサービスは、必要に応じてBase64値のデコードを担当します。このような各Base64ヘッダーは、次の規則に従って名前が付けられています。sf-context-<context-function>-base64Copy上記の例では、ヘッダーの名前は次のようになります。sf-context-current-statement-base64Copyコンテキストヘッダーが送信されない場合、Base64コンテキストヘッダーは送信されません。外部関数に送信された行が複数のバッチに分割されている場合は、すべてのバッチに同じコンテキストヘッダーと同じバイナリコンテキストヘッダーが含まれます。このパラメーターの目的は、メモリの制約やその他の制限があるリモートサービスのバッチサイズを制限することです。このパラメーターは、パフォーマンスチューニングパラメーターではありません。このパラメーターは、推奨サイズではなく、最大サイズを指定します。指定しない場合、Snowflakeは最適なバッチサイズを推定し、使用します。Snowflakeは、リモートサービスで制限が必要な場合を除いて、このパラメーターを未設定のままにしておくことをお勧めします。ペイロードは、Snowflakeからプロキシサービスに送信されるとき、およびプロキシサービスからSnowflakeに送り返されるときに圧縮されます。