WebAssembyとしてPostgreSQLをビルドした「PGlite」公開。Node.jsやブラウザ上でPostgreSQLを実行、DBの永続化も可能

今回は「WebAssembyとしてPostgreSQLをビルドした「PGlite」公開。Node.jsやブラウザ上でPostgreSQLを実行、DBの永続化も可能」についてご紹介します。

関連ワード (出力、拡張機能、破棄等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


PostgreSQLのソースコードをWebAssemblyバイナリとしてビルドしたことで、Node.jsなどのJavaScriptランタイムやWebブラウザ上で(ほぼ)フル機能のPostgreSQLを実行可能にした「PGlite」が公開されました。

PGLite

PGliteはPostgreSQLのCのソースをEmscriptenでコンパイル

PostgreSQLはオープンソースの代表的なリレーショナルデータベースであり、C言語で開発されています。

PGliteはこのPostgreSQLのCのソースコードのビルドにEmscriptenコンパイラを使用してWebAssemblyバイナリとして出力、JavaScript/TypeScriptからライブラリとして呼び出せるようにしたものです。

ただしEmscriptenでコンパイルされたプログラムは新しいプロセスをフォークできないため、PGliteはPostgreSQLのシングルユーザーモードを利用していると説明されています。

Node.js、Bun、そしてWebブラウザ上で実行可能

PGliteは依存するライブラリなどを追加インストールする必要はなく、単独でNode.js、Bun、そしてWebブラウザ上で実行可能です。ファイルサイズはGzip圧縮で3MB以下。

インメモリ上にその場限りとなるデータベースを作成できるだけでなく、Node.jsとBunではファイルアクセスAPIを利用して、WebブラウザではIndexedDBを利用して永続的なデータベースを作成できます。

また、PostgreSQLでベクトルデータの扱いを可能にする拡張機能である「pgvector」を始めとする多数のPostgreSQLの拡張機能にも対応するとのことです。

PGliteはJavaScript/WebAssemblyランタイム上で実行と破棄が簡単に行えることから、ローカル開発環境で利用するデータベースとしての利用、Webアプリケーションや小型デバイスなどへの組み込み、テスト環境やCI/CD環境などでの利用などが想定されています。

PGliteをブラウザですぐ試せる「postgres.new」

PGliteを開発したのはElectricSQL社ですが、PostgreSQLをベースにしたBaaS(Backend as a Service)の「Spabase」を開発し提供しているSpabase社が、PGLiteをすぐにWebブラウザで試せる「postgres.new」を発表しています。

Launch Week Day 1 Announcement:

https://t.co/EwDeIl601U

Spin up an unlimited number of Postgres databases
Directly in the browser
Let AI build your schema pic.twitter.com/RDzoV4ioLo

— Supabase (@supabase) August 12, 2024

COMMENTS


Recommended

TITLE
CATEGORY
DATE
E・マスク氏、ウクライナで衛星ネットサービス「Starlink」を開始と表明
IT関連
2022-03-01 15:37
Preferred Roboticsが6億円調達、旭化成ホームズと家庭向け自律移動ロボ開発や三井住友銀行と自律移動ロボの決済機能開発
IT関連
2022-03-23 07:56
「歓迎されないオリンピック」は本当か? 実は売れているBS4Kレコーダーと世論の関係 :小寺信良のIT大作戦(1/3 ページ)
トップニュース
2021-07-28 23:16
Engageliがコラボレーション型の動画ベース教育プラットフォームに約36.3億円を確保
EdTech
2021-07-13 22:50
JR東日本、「鉄道版」生成AIを開発–鉄道固有の知識を学習
IT関連
2024-10-10 16:40
弁護士ドットコムとNEC、自治体向けに契約業務デジタル化支援で連携
IT関連
2024-08-24 16:17
愛媛銀行、トランザクションレンディング向けAI審査サービスを導入
IT関連
2021-08-05 06:16
ロシア、アップルとグーグルに対し「野党支援アプリの削除か刑務所送り」と脅迫との報道―2021年秋から抑圧の下地作り
IT関連
2022-03-15 07:16
NTTドコモ、基地局最適化に向け量子アニーリング基盤を開発
IT関連
2024-06-29 21:51
サイトUI/UX改善クラウドのi3DESIGNが2億円調達、次世代ノーコードプラットフォームおよびDX人材採用を加速
ネットサービス
2021-07-21 11:45
NEC、多数のカメラ映像をリアルタイム・高精度に分析する技術–デジタルツインの実現見据え
IT関連
2023-03-04 14:42
マイクロソフト、偽の求人情報を使ったフィッシング攻撃について警告
IT関連
2022-10-04 20:01
AIによる生産性向上と技術職の新たな役割–求められる「AI活用」能力
IT関連
2024-05-11 17:54
Cloudflare、エッジアプリにAIをもたらす「Constellation」発表。画像認識、アノマリ検出、テキスト処理、音声認識など可能
Cloudflare
2023-05-17 01:23