※ 本記事は、Alex Limaによる”Oracle GoldenGate 23ai and Oracle Database 23ai Vectors“を翻訳したものです。

2024年5月31日


Oracle Database 23aiでは、データベースでAIベクター検索を直接実行する機能が導入されており、Oracle GoldenGate 23aiでは、この新しいベクター機能のリアルタイムの双方向レプリケーションを提供できます。

Oracle GoldenGate 23ai (現在はオンプレミスで、完全管理型のOCI GoldenGateサービスから入手可能)により、クラウド・データ・ストア全体で異機種間データの統合と高可用性が可能になります。Oracle GoldenGate 23aiは、異機種間ベクトル・ストア間でベクトルをリアルタイムでレプリケートできる新機能を提供します。また、企業は、既存のデータベースからOracle Database 23aiにデータをレプリケートすることで、最小限のリスクでAIをすべてのデータにすばやく取り込むことができ、高速AI検索のためにベクトル化およびインデックス化できます。

このブログでは、Oracle GoldenGate 23aiがOracle Database 23aiの新しいOracle Vector Search機能の強化にどのように役立つかについて説明します。

Oracle AI Vector Searchは、AIベクトル検索機能を堅牢なOracle Databaseプラットフォームにシームレスに統合する革新的な機能です。この強力なツールにより、ユーザーは非構造化データに対してセマンティック検索を実行し、貴重なインサイトを引き出し、ビジネス上の意思決定を強化できます。Oracle Vector Searchは、ベクトル・データとリレーショナル・ビジネス・データの間のギャップを埋めることで、個別のベクトル・データベースの必要性を排除し、追加のデータベース・エンジンの複雑さを軽減し、データ・セキュリティを強化します。

Oracle Vector Searchの主な機能

  • VECTORデータ型: Oracle VECTOR Searchでは、VECTORデータ型が導入されています。これにより、ユーザーはビジネス・データとともに、Oracle Database表内にベクトル埋込みを直接格納できます。この統合ストレージにより、データ管理が簡素化され、高度な問合せが可能になります。
  • ベクトル埋め込みユーティリティ: Oracle Vector Searchは、SQLファンクションおよびPL/SQLパッケージを含む包括的なユーティリティ・セットを提供し、非構造化データからベクトル埋込みを生成します。ユーザーは、様々な事前トレーニング済モデルから選択することも、特定の要件にあわせて独自の埋込みモデルをインポートすることもできます。
  • 効率的な類似性検索: Oracle Vector Searchには、次の2つのプライマリ・ベクトル索引付け方法があります:
    • Neighbor Partition Vector索引: 類似性に基づいてベクトルをクラスタ化するパーティションベースの索引により、効率的なスケールアウトおよび迅速なトランザクション・サポートが保証されます。
    • Neighbor Graph Vector索引: ベクトルを頂点として表し、類似性をエッジとして表すインメモリー索引により、非常に正確で迅速な検索結果が提供されます。
  • SQL演算子の拡張: Oracle Vector Searchは、同じ問合せ内で関係検索とセマンティック検索を容易に結合する直感的な演算子を使用してSQLを拡張します。これらの拡張により、ユーザーは、ベクトル・データおよびリレーショナル・データ間の結合、グループ化および集計を含む複雑な問合せを実行できます。
  • Retrieval Augmented Generation (RAG): Oracle Vector Searchは、事前トレーニングされた大規模言語モデル(LLM)の力を活用して、きわめて正確な応答でビジネス・データを補強します。これにより、エンドユーザーは、プライベート・データ・ソースと一般的な知識の両方を活用して、質問に対するより正確な回答を受け取ることができます。

ベクトル埋め込みを作成する方法

Oracle Databaseでベクトル埋込みを作成するには、次のような様々な方法を使用できます:

  • Oracle AI Vector Searchで提供されるSQLファンクションおよびPL/SQLパッケージの使用
  • 事前トレーニング済ONNX埋込みモデルのインポート
  • Oracle Databaseの外部でベクトル埋込みを生成し、データベースにインポート

SQL FunctionsおよびPL/SQLパッケージの使用

Oracle AI Vector Searchには、ベクトル埋込みの作成に使用できる多数のSQLファンクションおよびPL/SQLパッケージが用意されています。これらの関数およびパッケージを使用して、テキスト、イメージ、オーディオなどの様々なデータ型からベクトル埋込みを作成できます。

たとえば、次のSQL関数を使用して、テキスト文字列からベクター埋込みを作成できます:

SELECT 
  TO_VECTOR(VECTOR_EMBEDDING(doc_model USING 'Hello world' AS data)) AS embedding;

この関数は、テキスト文字列「Hello world」の意味を表すベクトル埋め込みを返します。埋込みを使用すると、他のテキスト文字列に対して類似性検索を実行できます。

Oracle GoldenGate 23ai

Oracle GoldenGate 23aiはOracle Vectorsのサポートを提供し、停止時間なしでデータベース間でベクトルをレプリケートする機能、Replicatから直接データベース機能をマップする機能、およびデータベース内の様々なAIコンポーネントをサポートする機能が含まれます。これにより、分散AI処理、複数のベクトル・データ型のサポート、アクティブ-アクティブ/マルチクラウド構成、データの統合、検索索引への変更のストリーミングなどのユース・ケースが可能になります。

OGG and Vector HUB

図: GenAIのリアルタイム・ベクトル・ハブの作成

それに照らして、Oracle GoldenGate (OGG)がOracle Database 23aiへのベクトルの移行を容易にする方法の例を次に示します:

  • Oracle Database 23aiベクトルをサポート: Oracle GoldenGateでは、新しいOracle Database 23aiベクトルがサポートされており、ディメンションと埋込みモデルが同じであるかぎり、完全なレプリケーションが可能です。
  • ベクトルの代わりにベース・データを複製: ソース・データベースとターゲット・データベースで異なる埋込みアルゴリズムが使用されているか、ベクトル・ディメンションが異なる場合、Oracle GoldenGateでは、ベクトル自体ではなくベクトルを生成するために使用される実際のデータがレプリケートされます。
  • Replicatから直接データベース関数マッピング: Oracle GoldenGateでは、Replicatから直接データベース関数マッピングを行う機能が追加され、SQLEXECが不要になりました。
  • リアルタイム・ベクトル・ハブの作成: Oracle GoldenGateは、リアルタイム・ベクトル・ハブの作成を容易にし、ベクトルの効率的なアクセスと処理を可能にします。
  • ダウンタイムなしでベクターを移行: Oracle GoldenGateは、停止時間を発生させずにベクトルをOracle Database 23aiに移行できるため、オンプレミス環境とクラウド間、または異なるクラウド環境間を円滑に移行できます。
  • 統合、マルチクラウド、アクティブ/アクティブのシナリオを実現: Oracle GoldenGateは、統合、マルチクラウド、アクティブ/アクティブのシナリオをサポートし、ベクター管理の柔軟性とスケーラビリティを実現します。
  • ストリーミング・パイプラインからの実用的なAI/ML: Oracle GoldenGate Stream AnalyticsとOracle Machine Learning(OML)およびONNX(Open Neural Network Exchange)の統合により、ストリーミング・パイプラインから実用的なAI/MLが可能になり、ベクトルをAIおよびMLプロセスにシームレスに統合できます。
  • ElasticsearchまたはOpenSearch互換検索索引への変更をストリーム: Oracle GoldenGateは、ベクトルの変更をElasticsearchまたはOpenSearch互換検索索引にストリーミングし、ベクトルの使用率の範囲を拡大できます。
  • GoldenGateは、PostgreSQLベクトルのサポートを提供(pgvector)、Postgresデータベースからのベクトルの複製と移行を可能にします。これには、pgvectorバージョン0.5.0以降のサポートが含まれます。


まとめ

Oracle AI Vector Searchは、革新的なツールであり、データ・セキュリティや業務効率を犠牲にすることなく、生成AIのパワーを引き出すことができます。Oracle GoldenGateとOracle Database 23aiおよびOracle AI Vector Searchのシームレスな統合により、お客様は、画期的なリアルタイム・ベクトル・ハブを作成して、タイムリーで信頼できるトランザクション・ビジネス・データでAIソリューションを強化できます。

追加情報:

GoldenGate ドキュメント

GoldenGateホーム・ページ

Oracle GoldenGate YouTubeチャネル