Indexed Database API (一般的にIndexedDBと呼ばれる)は、オブジェクトのNoSQLデータベースを管理するためにWebブラウザが提供するJavaScriptアプリケーションプログラミングインターフェース(API)です。これはWorld Wide Web Consortium (W3C)によって維持されている標準です。[ 1 ]
Webストレージ標準の代替として、IndexedDBはより多くのストレージ容量を提供できます。WebストレージにはWebサイトごとに固定の制限がありますが、IndexedDBの制限は「存在する場合、通常はかなり大きい」です。[ 5 ]
IndexedDB のユースケースには、オフラインで利用できるようにWeb アプリケーションデータをキャッシュすることが含まれます。[ 6 ] devtoolsや拡張機能などの一部のブラウザ モジュールもストレージとしてこれを使用する場合があります。
IndexedDB のサポートは、 Firefoxバージョン 4 [ 7 ] (2011 年 3 月)、Google Chromeバージョン 11 [ 8 ] 、 Internet Explorerバージョン 10 [ 9 ] 、 Safariバージョン 8 [ 10 ] 、およびMicrosoft Edgeバージョン 12 [ 11 ]に追加されました。
Web SQL Database はAppleが開発した以前の API でした。[ 12 ]しかし Firefox は、 SQLiteの癖をコード化してしまうという理由で、そのサポートを追加することを拒否し、標準になることに反対しました。[ 13 ] [ 14 ] WebSQL はIndexedDB に置き換えられ、非推奨となりました。 [ 15 ]
IndexedDB 1.0 は2015 年 1 月 8 日にW3C 勧告となりました。 [ 16 ] IndexedDB 2.0は 2018 年 1 月 30 日に W3C 勧告となりました。[ 17 ] [ 3 ] IndexedDB 3.0 は2021 年 3 月 11 日に最初の公開作業草案としてリリースされ、 2026 年4 月現在も作業草案のままです。 [ 18 ]
IndexedDBはブラウザのセキュリティサンドボックス内で動作するため、すべての操作はさまざまなセキュリティレイヤーを通過する必要があり、IndexedDBのパフォーマンスが低下します。IndexedDB 2.0 [ 17 ]では、一括読み取り操作のパフォーマンスを向上させるgetAll()メソッドが追加されました。
{{cite web}}: CS1 maint: 数値名: 著者リスト (リンク)