AI Database(AIDB)7.3.2
日本語訳|AIDB 7.3.2
※GoogleのAutoML Translationを使用して翻訳しております。
![]() |
![]() |
英語原文|AIDB 7.3.2
![]() |
![]() |
概要
1. AIDBとは何か?
AIDB は、EnterpriseDB(EDB)が保守・提供するPostgreSQL拡張機能であり、AIデータワークフローをPostgresデータベースに直接統合します。
外部のミドルウェアやPythonスクリプト、複雑なETLパイプラインに依存する代わりに、AIDBを使用すると、開発者やデータアナリストは使い慣れたSQLコマンドを使って、検索拡張生成(RAG)、セマンティック検索、ドキュメント要約などのAI搭載アプリケーションを構築できます。データの取り込みや解析から、テキストのチャンク化(分割)、エンベディング(ベクトルデータ化)の生成、ベクトルベースのクエリまで、非構造化データのライフサイクル全体をデータベース内で完結して処理する、完全な「データベース内AIエンジン」として機能します。
2. AIDBの仕組み
AIDBは完全にPostgreSQL環境内で動作し、主に3つのコアビルディングブロックで構成されています。
- モデル(Models): AIDBはAIタスクを実行するためにAIモデルに接続します。Postgresホスト上で直接実行されるローカルモデル(BERT、CLIP、T5、Llamaなどの組み込みモデルを同梱)と、API接続経由の外部モデル(OpenAI、Google Gemini、NVIDIA NIM、OpenRouterなど)の両方をサポートしています。
- パイプライン(Pipelines): 生データをAIで利用可能なベクトルデータに自動変換するための、SQLで定義されたワークフローです。
- ソース: パイプラインは、Postgresのテーブルから直接、またはPostgres File System(PGFS)拡張機能を使用して外部のオブジェクトストレージ(AWS S3やローカルファイルシステムなど)からデータを読み込むことができます。
- 変換ステップ: 組み込み関数を使用してデータを順次処理します。ファイルの解析(HTML、PDF)、画像に対するOCR処理、テキストの要約、そして大規模言語モデル(LLM)のコンテキストウィンドウに収まるよう長いドキュメントを小さなセグメントに分割(チャンク化)します。
- オーケストレーション: パイプラインは「Live(ライブ)」(Postgresのトリガーを使用してデータを変更と同時に処理する)または「Background(バックグラウンド)」(バックグラウンドワーカーを使用して非同期でバッチ処理する)に設定でき、手動による介入なしでデータの同期を保ちます。
- ナレッジベース(Knowledge Bases): パイプラインで処理されたデータの最終的な保存先です。AIDBは生成されたベクトルエンベディングを、pgvectorまたはVectorChordでインデックス化された専用テーブルに保存します。ユーザーは、純粋なセマンティック検索にaidb.retrieve_text()などの関数を使用したり、より高精度な検索のためにハイブリッド検索(ベクトル類似度、BM25キーワードマッチング、および標準のSQL WHEREフィルタの組み合わせ)を利用したりできます。
3. AIDBのメリット
データをAIに移動させるのではなく、「データベース(データ)の側にAIを持ってくる」ことで、AIDBはアーキテクチャおよびビジネス上で以下の大きな利点を提供します。
- セキュリティとコンプライアンスの強化: データを処理するために外部のミドルウェア等へ移動させる必要がないため、セキュリティリスクが軽減されます。これは、機密データを扱う規制の厳しい業界(ヘルスケア、金融など)にとって非常に価値があります。
- 共通インターフェースとしてのSQL: データエンジニアが複雑なPythonアプリを構築したり、Apache Airflowのようなオーケストレーションツールを管理したりする必要はありません。SQLを知っているデータベース管理者(DBA)、BI開発者、データアナリストであれば誰でも、ネイティブなSQLだけでAIワークフローの構築、テキスト要約、セマンティック検索を実行できます。
- 古いデータ(ステールデータ)の排除: 従来のAIパイプラインはバッチ処理中心であることが多く、古い情報に基づいてLLMがハルシネーション(幻覚/事実と異なる回答)を起こす原因になっていました。AIDBの自動処理機能により、ソースデータが更新されると、手動介入なしでベクトルエンベディングもリアルタイム(またはニアリアルタイム)でシームレスに同期されます。
- インフラストラクチャの統合: 独立したベクトルデータベースやテキスト処理用の専用キューを用意する必要がなくなります。企業は既存のPostgreSQLインフラをそのまま活用し、クエリオプティマイザ、並列ワーカー、バックアップ、ロールベースのアクセス制御(RBAC)などの成熟したデータベース機能をAIワークフローでも享受できます。
- モデルの柔軟性: AIDBは特定のモデルに依存しません(モデルアグノスティック)。ローカルのオープンソースモデル(HuggingFaceなど)とプロプライエタリなAPI(OpenAIやGeminiなど)を、SQLの設定コードを1行変更するだけで簡単に切り替えることができ、特定のベンダーへのロックインを防ぎます。
4. バージョン 7.3.2 のハイライト
エンタープライズ環境での安定性と、分散データベース(PGD)環境におけるAIワークフローの統合機能が大幅に強化されました。
- PGD(Postgres Distributed)環境への完全対応:
- ナレッジベースの自動同期: セットアップ時にナレッジベース用テーブルが自動的にPGDのレプリケーション対象に含まれるようになり、分散ノード間でのAIデータの一貫性が保証されます。
- マルチユーザー環境のトリガー改善: PGD環境におけるマルチユーザー対応のトリガーラッパーが追加され、複雑な権限環境下でもパイプラインの自動処理が正確に動作するようになりました。
- 運用可観測性の向上(DLQメトリクスAPI):
デッドレターキュー(DLQ)に、メトリクスおよびエラーログ取得用のAPIが追加されました。パイプラインごとのエラー数や詳細な履歴にプログラムから直接アクセスでき、トラブルシューティングが迅速化されます。 - AIモデル連携のレジリエンス強化(HTTP 429対応):
モデルプロバイダーのAPIから「HTTP 429(リクエスト過多)」を受け取った際、自動的に待機・再試行(リトライ)を行う機能が導入されました。レート制限による処理中断を防ぎ、安定したデータ処理を実現します。 - データ処理精度の改善:
- PDF解析の向上: lopdfライブラリの刷新により、複雑な構造や一部破損のあるPDFファイルからのテキスト抽出精度が向上しました。
- 重複排除機能: 検索(Retrieve)操作時、ソースキーに基づいた重複排除が可能になりました。同じドキュメントが複数回インデックスされた場合でも、検索結果に重複が現れるのを防ぎます。
- 重要なバグ修正: パイプラインIDの誤認問題や、自動処理システムにおける状態管理の不具合が解消され、マルチパイプライン構成時の信頼性が向上しました。





