Összesítés

Befejeződött
  • Az adatok szerkezet, dinamika és mennyiség alapján jellemezhetők. Lehetnek rögzítettek vagy strukturáltak, statikusak vagy dinamikusak.
  • A tárolási technológiák fejlődése igyekszik lépést tartani a nagy mennyiségű adatok tárolásának folyamatosan növekvő igényével.
  • Különböző alkalmazások különböző követelményekkel rendelkezhetnek a kapacitásra, teljesítményre, hibatűrésre, tartósságra és egyebekre vonatkozóan. A tárolási rendszerek hatékonyan felelnek meg ezeknek a követelményeknek.
  • A tárolási absztrakciók egy blokkeszköz blokkjaiként, egy fájlrendszer fájljaiként vagy egy adatbázis entitásaiként jelenhetnek meg.
  • Számos fájlrendszertípus létezik, például helyi, megosztott és hálózati fájlrendszer.
  • A helyi fájlrendszerek blokkeszközökön (fizikai lemezeken vagy logikai egységeken) kezelik az adatokat. A fájlokat a lemez blokkjaira képezik le. A fájlrendszerek fontos szempontjai a teljesítmény és a megbízhatóság.
  • Egy fájlrendszer több lemezre is bővíthető, jellemzően LVM/RAID használatával.
  • Nagyvállalati környezetben a tárhelyet általában konszolidálják a készletezés, megosztás és tárolási erőforrások kezelhetőségének javítása érdekében. A konszolidált tárolási rendszerek általában több kiszolgáló között, egy tárolóhálózattal (SAN-nel) vannak megosztva.
  • Az elosztott fájlrendszer egy olyan hálózati fájlrendszer, amelynek fájljai számos fájlkiszolgáló között vannak elosztva. A fájl egésze a DFS egyik fájlrendszer-kiszolgálóján van tárolva.
  • Az elosztott fájlrendszerek számos tervezési szempontot felvetnek, így a hibatűrést, a replikációt, a konzisztenciát, valamint a fájlmegosztási szemantikát.
  • Az adatbázisok a navigációs modellből váltak modern relációs adatbázisokká, majd fejlődtek tovább a NoSQL- és NewSQL-modellekké.
  • Az adatbázisrendszerek is több tervezési szempontot felvetnek.
  • Ha az adatok strukturálhatók, általában egy jól definiált modellel (sémával) rendszerezzük őket. A részben strukturált vagy strukturálatlan adatokat általában séma nélküli rendszerekben, például kulcs-érték tárolókban tároljuk.
  • A CAP-tétel szerint minden, megosztott adatokat tartalmazó elosztott tárrendszer legfeljebb kettő vagy három kívánt tulajdonsággal rendelkezhet az alábbiak közül: konzisztencia, rendelkezésre állás és partíciótolerancia.
  • A RDBMS egymással összekapcsolt táblákban modellezi az adatokat. Minden adatoszlop típusra és érvényes bemenetekre vonatkozó szabályát egy séma definiálja. A táblák egy lekérdezési nyelvvel (általában az SQL-lel) definiálhatók, érhetők el és módosíthatók.
  • A RDBMS atomitás, konzisztencia, izoláció és tartósság (röviden ACID) segítségével támogatja a tranzakciókat.
  • A hagyományos adatbázisok vertikálisan vagy horizontálisan méretezhetők. A vertikális skálázáshoz egyszerűen csak a mögöttes hardver (CPU, memória, lemez és hasonlók) frissítésére van szükség.
  • A horizontális skálázás esetén egy adatbázis több gépen van elosztva replikációval (ugyanazok adatok vannak tárolva több gépen) vagy horizontális particionálással (az adatok több gépen vannak elosztva).
  • Az ACID tulajdonságok megvalósítása egy elosztott adatbázisban kihívást jelenthet. Az ilyen adatbázisokban általában egy kétfázisú véglegesítési (2PC) protokollal biztosíthatók az ACID tulajdonságok. Ez a megközelítés azonban nagyon nagy mértékben befolyásolja a teljesítményt.
  • A NoSQL-adatbázisok lazán veszik a szigorú konzisztenciagaranciákat, hogy nagy mértékű és teljesítményű rendelkezésre állást és partíciótoleranciát nyújtsanak.
  • Néhány NoSQL-adatbázistípus: dokumentumtárak, gráfadatbázisok, kulcs-érték tárolók és oszlopos adatbázisok.
  • A NoSQL-adatbázisok a hagyományos RDBMS-ekkel szemben jellemzően adatrugalmasságot, méretezhetőséget és magas teljesítményt nyújtanak nagy mennyiségű adatok esetén.
  • Az alkalmazásoknak figyelembe kell venniük a NoSQL-adattárak laza konzisztenciamodelljét. A szabványosítás hiánya megnehezíti az adatok egyik adatbázisból a másikba való migrálását.
  • A NewSQL-adatbázisok az RDBMS-ek relációs adatbázismodelljét és SQL-felületét egyesítik a NoSQL-rendszerek méretezhetőségével és teljesítményével. Ehhez átalakítják az adatbázismotorokat, hogy azok egy memórián belüli tárral és egy shared-nothing típusú architektúrával kiváló teljesítményt nyújtsanak nagyobb léptékben is.
  • Az objektumtárak objektumabsztrakciókat (egy általános tároló, amelyben bármilyen információ tárolható), valamint néhány rendkívül alapvető műveletet nyújtanak – létrehozás, olvasás, frissítés és törlés (CRUD) – az online tároláshoz. Ezek tulajdonképpen a kulcs-érték tárolók szolgáltatásorientált verziói.
  • Az objektumtárolók általában egy, a hálózaton REST/SOAP típusú hívásokkal elérhető API-val érhetők el.
  • Az Azure Blob Storage jó példa az objektumtárakra, a CDMI pedig egy jövőbeli nyílt szabvány, amely egy felhőalapú tárolási környezetet definiál.