Elosztott relációs adatbázisok ismertetése

A KÖVETKEZŐKRE VONATKOZIK: Azure Cosmos DB for PostgreSQL (a Citus-adatbázis PostgreSQL-hez való kiterjesztése)

Az Azure Cosmos DB egy globálisan elosztott adatbázisplatform a NoSQL és a bármilyen méretű relációs adatbázisok számára. Ez a cikk az elosztott relációs adatbázisokat ismerteti az Azure Cosmos DB relációs API-lehetőségének kontextusában.

Az Azure egyéb adattárolási lehetőségeiről további információt az Azure Architecture Center megfelelő adattárának kiválasztásával foglalkozó cikkben talál.

Problémák

Sokszor, amikor nagy mennyiségű vagy nagy tranzakciós számítási feladatról olvas, könnyű azt gondolni, hogy ezek a számítási feladatok sokkal nagyobbak, mint bármely olyan, amellyel az alkalmazás szembesülhet. Az a feltételezés, hogy a számítási feladat kicsi marad, biztonságos feltételezés lehet egy projekt, ötlet vagy szervezet kezdetekor. Ez a feltételezés azonban gyorsan vezethet olyan forgatókönyvhöz, amelyben az alkalmazás számítási feladatai messze túlmutatnak az Ön által készített előrejelzéseken. Nem ritka, hogy olyan számítási feladatokról szóló történeteket hallunk, amelyek megfelelnek az egypéldányos adatbázis maximális átviteli sebességének vagy feldolgozási teljesítményének, amely egy projekt elején gazdaságos és teljesíthető volt.

Relációs adatbázisok

A relációs adatbázisok táblázatos (sor/oszlop) formátumban rendezik az adatokat az adatbázisok különböző táblái közötti kapcsolatokkal. A relációs adatbázisok gyakoriak a különböző vállalatoknál. Ezek a vállalatok gyakran számos szoftverfejlesztővel rendelkeznek, akik kódot írtak egy relációs adatbázishoz vagy rendszergazdákhoz, akik sémákat terveznek és relációs adatbázisplatformokat kezelnek. A relációs adatbázisok gyakran támogatják az ACID-garanciákkal rendelkező tranzakciókat is.

Sajnos sok relációs adatbázisrendszert kezdetben a szervezetek egy csomópontos módon konfigurálnak, és a számítási, memória- és hálózati erőforrásokra vonatkozó felső korlátokkal rendelkeznek. Ez a környezet helytelen feltételezéshez vezethet, hogy minden relációs adatbázis természetükből adódóan egyetlen csomópont.

Elosztott adatbázisok

Számos natív felhőbeli whitepapers esetén gyakran hallani a NoSQL-adatbázisok előnyeiről, így úgy tűnik, hogy a relációs adatbázisok nem megfelelő választás nagy méretű adatbázisokhoz vagy elosztott számítási feladatokhoz. Bár sok elosztott adatbázis nem relációs, az elosztott relációs adatbázis számítási feladatainak lehetőségei.

Az elosztott relációs adatbázisok számos lehetősége megköveteli, hogy a szervezet a projekt elejétől kezdve tervezze meg a nagy léptékű és terjesztésű elosztást. Ez a tervezési követelmény jelentősen összetettebbé teheti a projektet, így meggyőződhet arról, hogy az összes releváns kiszolgálócsomópontot konfigurálja, felügyeli és karbantartja a csapata. A globálisan elosztott relációs adatbázisok tervezési, megvalósítási és hálózatkezelési követelményei könnyen bonyolultabbak lehetnek, mint egyetlen példány (vagy csomópont) felállása.

Azure Cosmos DB

Az Azure Cosmos DB egy adatbázisplatform, amely elosztott adat API-kat kínál a NoSQL-ben és a relációs változatokban is. Az Azure Cosmos DB relációs API-ja a PostgreSQL-en és a Citus-bővítményen alapul.

A Citus egy PostgreSQL-bővítmény, amely támogatja a Postgres-t az adatok és tranzakciók elosztásához. Az Azure Cosmos DB for PostgreSQL egy teljes körűen felügyelt szolgáltatás a Citus használatával, amely automatikusan magas rendelkezésre állást biztosít anélkül, hogy manuálisan kellene megterveznie, kezelnie és karbantartania az egyes kiszolgálócsomópontokat. A PostgreSQL API-val egy teljes mértékben felügyelt egycsomópontos fürttel kezdhet, létrehozhatja az adatbázis-megoldást, majd kulcsrakész módon skálázhatja azt az alkalmazás igényeinek időbeli növekedésével. A PostgreSQL API-val nem kell előre megtervezni egy összetett terjesztési projektet, vagy megtervezni egy projektet az adatok egy csomópontból egy elosztott adatbázisba való migrálásához.

Következő lépések

Szeretné elkezdeni az Azure Cosmos DB használatbavételét?