JavaScript

マルチリンガル・エンジンJavaScriptモジュールおよび環境

マルチリンガル・エンジン(MLE)モジュールおよび環境では、JavaScriptコードを保持してデータベースで管理できます。コール仕様は、PL/SQL関数をコールできるすべての場所で、MLEモジュールからJavaScript関数をコールする手段を提供します。

Oracle AI Databaseにスキーマ・オブジェクトとしてJavaScriptモジュールおよび環境を導入することで、開発者は、クライアント側のJavaScript開発で使用されている確立された既知のワークフローに従うことができるようになります。複雑なプロジェクトは、チーム・メンバーによって個別に処理される、より小さく管理しやすい部分に分割できます。

ドキュメントの表示に関する項

マルチリンガル・エンジン・モジュール・コール

マルチリンガル・エンジン(MLE)モジュール・コールを使用すると、開発者はSQLおよびPL/SQLからモジュールに格納されているJavaScript関数を呼び出すことができます。PL/SQLで記述されたコール指定は、JavaScriptをPL/SQLコード・ユニットにリンクします。

モジュール・コールのおかげで、開発者はPL/SQL関数がコールされる場所であればどこでもJavaScript関数を使用できます。

ドキュメントの表示に関する項

マルチリンガル・エンジンの実行後デバッグ

Oracle Multilingual Engine (MLE)を使用すると、開発者は、プログラムの処理中にランタイム状態をタイミングよく効率的に収集すること(実行後デバッグと呼ばれる方法)によって、JavaScriptコードをデバッグできます。コードの実行が終了したら、収集されたデータを使用してプログラムの動作を分析し、バグを検出して修正できます。

実行後デバッグは、監視対象コードを変更することなく、実行時にJavaScriptコード・ユニットからランタイム状態の情報を抽出する便利な方法です。

ドキュメントの表示に関する項

マルチリンガル・エンジンJavaScript SODA API

Simple Oracle Document Access (SODA)はNoSQL形式のAPIのセットであり、これを使用すると、Oracle AI Databaseでドキュメント(特にJSON)のコレクションを作成し格納でき、SQLや、データベース内でそのドキュメントがどのように格納されているかを理解していなくても、そのコレクションの取得や問合せができます。MLEの導入により、クライアント側およびサーバー側の開発のために、JavaScriptでのSODAドキュメントのサポートが存在します。

JavaScriptでSimple Oracle Document Access (SODA) APIがサポートされていると、開発者はJSONをリレーショナルな方法で使用するかSQL以外の方法で使用するかを選択でき、開発プロセスが簡素化され、コードの移植性が高まります。

ドキュメントの表示に関する項

マルチリンガル・エンジンJavaScriptでのJSONデータ型のサポート

JavaScript Object Notation (JSON)のサポートは、Oracle AI Databaseの不可欠な部分です。Oracleでは、トランザクション、索引付け、宣言的問合せおよびビューを含むリレーショナル・データベースの機能を使用してJSONをネイティブにサポートしています。リレーショナル・モデルでJSONを操作するために、豊富なSQL関数のセットを使用できます。Oracle Multilingual Engine (MLE)はJSONを全面的にサポートしており、動的MLEとMLEモジュール・コールの両方で、JSONデータ型とのやり取りをサポートしています。

JSONおよびJavaScriptのオブジェクトは密接に関連しており、JavaScriptコードを使用してJSONを非常に簡単に操作できるような方法で自然な一致を形成しています。

ドキュメントの表示に関する項

JavaScriptプロシージャおよび関数のコンパイル時の構文チェック

インライン・コール仕様を使用して実行されるJavaScript関数に対して、構文チェックがコンパイル時に実行されるようになりました。これにより、実行前のコードの価値ある分析が実現されます。

コンパイル時の構文チェックは、任意のlintツールと組み合せて使用すると、コード分析のステップがさらに提供されることで、コードの準備状況について信頼度を高めるために役立ちます。このコンパイル時サポートは、すでにMLEモジュールの作成時に使用可能になっているチェックに匹敵します。

ドキュメントの表示に関する項

JAVASCRIPTに対するEXECUTE権限は不要になった

EXECUTE ON JAVASCRIPT権限は、ユーザー・アカウントからJavaScriptコードを実行するために必要ではなくなりました。

EXECUTE ON JAVASCRIPT権限を付与するステップがさらに必要になることなく、マルチリンガル・エンジン(MLE)モジュールを作成しインライン・コール仕様を実行してJavaScript関数を公開できるようになりました。これにより、MLEの使用のための、より合理化された導入エクスペリエンスが提供されます。

ドキュメントの表示に関する項

PL/SQLコード・ユニットをコールするためのJavaScriptの外部関数インタフェース

外部関数インタフェース(FFI)を使用すると、JavaScript開発者は、PL/SQLで記述されたコード・ユニットをコールするために、より使い慣れた構文を使用できます。

PL/SQLブロックを使用するのではなく、ネイティブのJavaScript構成を使用して、PL/SQLで記述されたほとんどのコードと対話できます。FFIを使用すると、JavaScript開発者は、PL/SQLコードをJavaScript関数に統合するプロセスを合理化することで、より優れたエクスペリエンスを得ることができます。

ドキュメントの表示に関する項

データベース内JavaScriptの制限付き実行コンテキスト

PUREオプションは、データベース機能とのやり取りできない制限付きJavaScriptコンテキストを作成する場合に、マルチリンガル・エンジン(MLE)環境およびJavaScriptインライン・コール仕様で指定できます。

PUREオプションを使用して制限付きJavaScript実行コンテキストを作成することで、データベースで実行されるJavaScriptコードの機能を制限する便利な方法となります。制限付きコンテキストで実行されているJavaScriptプログラムは、現在有効なデータベース権限に関係なく、データベース表を変更したり、PL/SQLパッケージを使用しないことが保証されます。ユーザー定義関数を使用する一般的なデータ処理ユースケースでは、関数の入力に対する計算のみが必要です。このようなシナリオでは、制限付きコンテキストがセーフティ・ネットとなり、サード・パーティまたはオープンソースのJavaScriptライブラリを使用する場合など、不要なデータベースの変更が禁止されます。

AIベクトル検索のコンテキストでは、HNSW索引の作成時に、JavaScript関数をユーザー定義のベクトル距離メトリックとして使用できます。HNSW索引では、PUREオプションでマークされたJavaScript関数のみが許可されます。

ドキュメントの表示に関する項

MLE JavaScriptでのSQLオブジェクトおよびコレクション

オブジェクトおよびコレクション・データ型が、マルチリンガル・エンジン(MLE)でサポートされるようになりました。これらの型を、コール指定で、INOUTおよびIN OUT関数引数、およびRETURNの型として使用できるようになりました。

ユーザー定義型およびコレクションのサポートにより、アプリケーションでのMLEについて、使用可能なユースケースが拡張されています。

ドキュメントの表示に関する項

MLE JavaScriptでの疎ベクトル・サポート

ベクトルの格納形式を、SPARSEまたはDENSEとして指定できます。疎ベクトルは、通常は多数の次元を持つが、ゼロ以外の次元値はほとんどないベクトルです。

潜在的なパフォーマンス改善は別として、疎ベクトルでは、ゼロ以外の値が非常に少なく、対応する密ベクトルよりも使用領域がかなり少なくなる可能性があります。データベース内JavaScriptのユーザーは、疎ベクトルのサポートによってメリットがあります。

ドキュメントの表示に関する項