IndexedDB

Az IndexedDB egy JavaScript alkalmazásprogramozási felület ( API ) nagy mennyiségű strukturált adat, köztük fájlok / blobok kliensoldali tárolására . Más szóval, ez egy NoSQL adattár JSON formátumban a böngészőben . A szabványt a W3C fejlesztette ki, és 2011 óta alkalmazzák a böngészőkben. [egy]

Történelem

Az IndexedDB támogatása hozzáadásra került a Firefox 4-es verziójában, [2] a Google Chrome 11-es verziójában, [3] és az Internet Explorer 10-es verziójában. [4] A Safari végül hozzáadta a támogatást a 8-as verzióhoz. [5]

A Web SQL adatbázis az Apple által kifejlesztett API elődje volt . [6] A Mozilla azonban ellenezte a szabványosítását, mert nem kínáltak alternatívát az SQLite motorhoz . [7] [8] Mint ilyen, az IndexedDB javára elavulttá vált .

Alapelvek

Az adatbázisban az IndexedDB webhelyek tartósan tárolhatják és olvashatják az ügyféltárolási adatokat. Minden tartománynak saját tárterülete van, a másik tartományban tárolt adatokhoz való hozzáférés nem az azonos származási szabályzatnak megfelelően biztosított .  A rendelkezésre álló memória mennyisége böngészőnként változik, általában van egy rögzített korlát, amelyet nem lehet túllépni, és egy puha korlát, amelytől a felhasználónak először el kell fogadnia a tárolást. [9] A tárolás elvileg állandó, de a böngészők lehetőséget kínálnak felhasználóiknak a tárolt adatok törlésére. [tíz]

Az adatbázis egy objektum-adatbázis, általában tárolt JavaScript-objektumok, amelyek egyik bejegyzése a kulcs, amellyel az adatok lekérhetők. Indexek más tárolt objektum bejegyzéseken is létrehozhatók a hatékony keresés érdekében.

Az adatbázis-hozzáférés aszinkron: a kliens kérést ad, és visszahívási funkciókat regisztrál. Amint a megkeresés eredménye ismertté válik, arról tájékoztatjuk, és siker esetén megadjuk a kért adatokat, hiba esetén az okot. A hozzáférés során a tranzakciók az adatok konzisztenciájának biztosítására szolgálnak, még akkor is, ha például két, egyidejűleg megnyitott lap független hozzáféréssel rendelkezik az adatbázishoz.

Megvalósítások

Az adatbázis pontos megvalósítása nem rögzített, de ez egy B-fa . Minden modern böngésző támogatja a szabványt, mivel az folyamatosan fejlődik, nem mindig az aktuális verzióban. A Microsoft böngészőkben a felület csak részben valósult meg. [10] A böngésző API régebbi verzióit továbbra is részben a fejlesztő előtagolja. [tizenegy]

Alternatívák

A Web Storage az adattárolás sokkal egyszerűbb alternatívája, de kevesebb szolgáltatással, kis mennyiségű adat tárolására tervezve.

Egy alternatív szabvány, amely egy SQL lekérdezéseken keresztül elérhető adatbázis , a Web SQL volt . Ezt a szabványt azonban csak néhány böngészőben implementálták, így az IndexedDB javára megszűnt . [12]

A régebbi böngészőkben az IndexedDB polifillekkel modellezhető . [13] 

Lásd még

Jegyzetek

  1. IndexedDB API . W3.org. Archiválva az eredetiből 2011. február 2-án.
  2. IndexedDB - MDC Doc Center  (angol)  (a hivatkozás nem érhető el) . developers.mozilla.org. Archiválva az eredetiből 2012. május 26-án.
  3. Webplatform  állapota . A Chromium Project (2012. május 21.). Archiválva az eredetiből 2017. március 4-én.
  4. IndexedDB , MSDN, 2012-03-14 , < http://msdn.microsoft.com/en-us/library/ie/hh673548(v=vs.85).aspx > Archiválva : 2015. március 26. a Wayback Machine -nél 
  5. ↑ A macOS  újdonságai . Alma. Az eredetiből archiválva: 2017. december 12.
  6. Shankland, Stephen Consensus jelenik meg a kulcsfontosságú webalkalmazás-szabványhoz |  Deep Tech - CNET News . News.cnet.com (2010. március 12.). Archiválva az eredetiből 2013. április 8-án.
  7. ↑ Nos, visszatértem : A funkciók nem implementálása nehéz  . weblogs.mozillazine.org. Archiválva az eredetiből 2011. augusztus 6-án.
  8. A HTML5-ön túl: Adatbázis API-k és az IndexedDB-hez vezető út . Hozzáférés dátuma: 2019. február 8. Az eredetiből archiválva : 2021. február 14.
  9. Raymond Camden. IndexedDB és korlátok  ( 2015. április 17.). Archiválva az eredetiből 2019. február 9-én.
  10. ↑ 1 2 Gefährdeter Datenschutz: Firefox löscht lokale Datenbanken nicht  (német) (2017. szeptember 19.). - A böngésző támogatásának áttekintése. Archiválva az eredetiből 2019. február 9-én.
  11. ↑ Használhatom : IndexedDB  . Archiválva az eredetiből 2017. április 8-án.
  12. Ian Hickson. Webes SQL-  adatbázis . Archiválva az eredetiből 2019. február 3-án.
  13. Parashuram Narasimhan. Az IndexedDB API használata ma – az IndexedDB  polifills . Mozilla Hacks (2012. július 31.). Archiválva az eredetiből 2019. február 9-én.

Linkek