WebAssembly版SQLiteがWASI対応に。VMware Wasm Labsチームが明らかに

2023年5月30日

VMware Wasm LabsチームはSQLite開発チームと協力し、WebAssembly SQLiteがWASI対応になったことを明らかにしました。

fig

SQLiteは昨年11月にリリースされたバージョン3.40からWebAssembly版の「SQLite3 WASM/JS」へのコンパイルをサポートし、配布される公式のバイナリにLinux版、Windows版、Mac OS X版、Android版などと共にWebAssembly版の「SQLite3 WASM/JS」が含まれるようになりました。

参考:「SQLite3 WASM/JS」パブリックベータ公開。SQLite 3.40でサポート開始、WebブラウザなどでSQLiteが実行可能に

今回このWebAssembly版SQLiteが、WebAssemblyでクロスプラットフォームを対応するWASI(WebAssembly System Interfaice)仕様に対応したことが発表されました。

WASIはWebAssemblyをクロスプラットフォーム対応にする

WASIとは、WebAssemblyアプリケーションをWebブラウザ以外の環境、具体的にはLinuxやmacOSやWindows上でWebAssemblyランタイムを用いて実行することを想定して作られた仕様です。

これらのOS上でWebAssemblyアプリケーションが実行される場合、ファイルシステムなどのOSのシステムをAPI経由で呼び出すことになります。

APIはOSごとに異なるため、アプリケーションをOSごとに作り分ける必要があります。WebAssemblyのアプリケーションはLinux用、macOS用、Windows用などのOSごとに異なるバイナリが生成されることになります。

これではせっかく特定のプロセッサに依存しないWebAssemblyバイナリの特長を活かすことが出来ません。

そこで登場したのが、WebAssemblyのアプリケーションに対してOSのシステムコールを抽象化することでOS依存をなくし、ポータブルなWebAssemblyアプリケーションを実現する業界標準仕様のAPI「WebAssembly System Interface」(WASI)です。

WASIに対応したWebAssemblyランタイムの上で、WASIに対応したWebAssemblyアプリケーションを実行することで、1つのバイナリでクロスプラットフォーム対応のWebAssemblyアプリケーションが実現するのです。

すでに主要なWebAssemblyランタイムのほとんどがWASI対応となっており、WASIの環境はおおむね揃いつつあります(ただし今後もWASIはアップデートされていくため、状況は変化していくと思われます)。

単一のSQLiteバイナリでクロスプラットフォーム対応を実現

今回、WebAssembly版のSQLiteがWASI対応となったことで、単一のWebAssembly版SQLiteがどのOSの上であっても実行可能になりました。

すでにWASI対応としてコンパイルされたWebAssembly版SQLiteのバイナリが「Release libs/sqlite/3.41.2+20230329-43f9aea · vmware-labs/webassembly-language-runtimes · GitHub」として公開されているため、興味のある方は試すことができるようになっています。

Tags: RDB WebAssembly データベース プログラミング言語 SQLite

このエントリーをはてなブックマークに追加
ツイート
follow us in feedly





タグクラウド

クラウド / AWS / Azure / Google Cloud
コンテナ / Docker / Kubernetes
クラウドネイティブ / サーバレス
クラウド障害 / 運用・監視

プログラミング言語 / 開発ツール
JavaScript / Java / .NET / WebAssembly
HTML/CSS / Web標準

アジャイル開発 / スクラム / DevOps / CI/CD
ソフトウェアテスト・品質
ローコード/ノーコード開発

データベース / RDB / NoSQL / 機械学習・AI
Oracle Database / MySQL / PostgreSQL
Office / 業務アプリケーション

ネットワーク / HTTP / QUIC / セキュリティ
OS / Windows / Linux / VMware
ハードウェア / サーバ / ストレージ

業界動向 / 働き方 / 給与・年収
編集後記 / 殿堂入り / おもしろ

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本