PostgreSQLをAIに活用
by Canonical on 23 April 2024
AIを扱うことはデータを扱うこと。数値データから動画や画像まで、業界や用途を問わず、AIプロジェクトは何らかの形でデータに依存します。問題は、そのデータをどうやって効率的に保管し、モデルを構築する際に使用するかです。解決策の1つは、実績があり、愛好者の多いデータベースであるPostgreSQLです。近年の開発により、AIをサポートする有力な選択肢になっています。
PostgreSQLを選ぶべき理由
PostgreSQLはオープンソースで高機能のデータベースシステムです。外部キー、サブクエリ、トリガーのほか、さまざまなユーザー定義型や関数をサポートしています。近年はデータベース分野で人気を高め、2023年には年間最優秀データベース管理システム(DBMS)に選出されました。
PostgreSQLは、FinOpsやeコマースなど、あらゆる業界に採用されています。オンライントランザクション処理、分析、地理空間データなど、さまざまなワークロードにも適合します。ソリューションの幅広い採用は、数多くの具体的なユースケースのための新しい拡張機能やライブラリの開発につながっています。機械学習もその1つです。
PostgreSQLをAIに活用
PostgreSQLには1,000種類を超える拡張機能があります。それらの拡張機能は、Postgresコアシステム内の機能上に追加機能を提供するアドオンモジュールです。地理空間データの処理から、ベクトルデータベースへのPostgreSQLの変換まで、さまざまな拡張機能を利用できます。拡張機能は分析や検索などの幅広い機能に対応します。
これらの拡張機能の柔軟性と幅広い機能は、AIプロジェクトの強化に大きな可能性をもたらします。
AIに関連性の高い拡張機能として、以下のようなものがあります。
- Pgvectorは、PostgreSQL用のオープンソースのベクトル類似検索機能です。埋め込みの保存にも使用できます。この機能によって、OpenSearchと同様にデータベースをベクトルデータベースとして使用できます。
- Hydraは、オープンソースのカラム型データベースです。Hydraではコードを修正しなくても数十億行単位で効率的なクエリを即座に実行できます。この機能は、MLプロジェクトで大量のデータ処理が必要な場合に役立ちます。
- PostgresMLは、PostgreSQLの拡張機能で動作する、あらゆる機能を備えたMLOpsプラットフォームです。この機能によって、組織はデータベース内にモデルを構築できます。
MLOpsにおけるPostgreSQLの役割
MLOpsは機械学習向けのDevOpsです。KubeflowなどのMLOpsプラットフォームは、PostgreSQLをはじめとするさまざまなタイプのデータベースからデータを取り込みます。さらに、データベースを使用して、実験、ジョブ、パイプライン実行、単一スカラーメトリックにわたるメタデータなど、アーティファクトの一部を保管します。Kubeflowとデータベースは、信頼性が高い、シームレスに統合されたものである必要があります。これは、Kubeflowとデータベースの可用性が実運用環境でMLプロジェクトを実行する能力に影響を及ぼすためです。
PostgreSQLはKubeflowとの併用に最適したデータベースですが、すべてのシナリオで最良の選択であるとは限りません。実際には、MySQLなどの選択肢も有力です。使用するデータベースを選択する際は、組織にとって最適なソリューションを優先してください。
- 既存のデータベース – MLOpsプラットフォームでMySQLなどの特定のデータベースをすでに使用している場合は、PostgreSQLに変更することによって不要なオーバーヘッドが発生する可能性があります。
- スキルセット – チームのスキルや経験に合わせてデータベースを選択します。PostgreSQLの使用経験がある場合、このユースケースにはPostgreSQLを選択することが理想的です。
MySQLとPostgreSQLに関するその他の考慮事項については、こちらのホワイトペーパーをご覧ください。
Charmed PostgreSQLをAIに活用
Charmed PostgreSQL Operatorは、PostgreSQLデータベース管理システムで設計から運用までの自動化された運用管理を提供します。Charmed PostgreSQL OperatorはJuju上で動作する、オープンソースのエンドツーエンドの実運用環境に対応したデータプラットフォームです。PostgreSQLを物理マシン/仮想マシンとKubernetes上にデプロイして運用するために2つのフレーバーがあります。どちらも、レプリケーション、TLS、パスワードのローテーション、アプリケーションとの使いやすい統合などの機能を提供します。
Charmed PostgreSQL Operatorは、体系化された一貫性のある方法でPostgreSQLをデプロイするニーズに応えます。また、構成の柔軟性をユーザーに提供します。その結果、実運用環境でのPostgreSQLのデプロイ、スケーリング、構成、管理を信頼性の高い方法で大規模に簡素化できます。PostgreSQLはそれ自体がAIプロジェクトに適しています。Charmed OperatorはAIプロジェクトのレベルを引き上げ、データの保管とMLモデルの構築をさらに容易にします。
参考資料
ニュースレターのサインアップ
関連記事
Ubuntu ProをNutanixのベアメタルKubernetesで提供
NutanixとCanonicalのパートナーシップ拡大によりコンテナ化されたワークロードの選択肢が増加 Enterprise Kubernetes®は、柔軟性の高いマルチアーキテクチャモデルへと進化しつつあります。AI/MLやデータ集約型のワークロードが膨大なハードウェアスループットを必要とする近年、組織はクラウドプラットフォームの安定性を維持しながら、ベアメタルのパフォーマンスを求めています。 このためNutanixとCanonicalは、このたび発表されたNKP Metalソリューションも含め、ベアメタルで実行するNKP(Nutanix Kubernetes Platform)インスタンスでもUbuntu Proを利用可能にしました。もともと2025年に発表されたパ […]
Ubuntu 26.04 LTSのセキュリティ最新情報
Ubuntu 26.04 LTSは、Canonicalにとって最もセキュリティを重視したLTSリリースです。単に機能を追加しただけでなく、システムのあらゆる層で同時にセキュリティの基準を引き上げ、全体的に強化しました。しかも既存の環境を壊したり、手動での介入が増えたりすることはありません。セキュリティの心臓部、つまりデフォルト設定に注力することで、CanonicalはUbuntuのセキュリティを新しい形で強化しました。この記事では、Ubuntu 26.04 LTSの新しいセキュリティ機能について概説します。 Ubuntu 26.04 LTS は、デスクトップ、サーバー、コンフィデンシャルVM、クラウドイメージ、エッジシステムでLinuxを運用する上で、今後10年間にわたっ […]
JammyからResoluteまで:Ubuntuのツールチェーンの進化
新しいツールチェーンのバージョン、devpack、開発体験を改善するワークフローをご紹介します。 Ubuntuのツールチェーンの進化は、単にGCC、LLVM、Pythonを提供することではありません。明確な目的を持つOpenJDKのバリアント、タスクに特化したdevpack、FIPS適合のツールチェーン、そしてsnap(新しい.NET snapやSnapcraftプラグインなど)の開発も含みます。このような改善により、これまで半日かかっていたセットアップが1〜2個のコマンドで済みます。これは、Ubuntu上でフレームワークやアプリケーションを開発する者にとって、まさに「摩擦のない」開発体験です。 このブログでは、Ubuntuの過去4年間のLTSリリースにおける変更点と今後 […]