Megosztás a következőn keresztül:


Az Azure Cosmos DB gyakori használati helyzetei

A KÖVETKEZŐKRE VONATKOZIK: NoSQL MongoDB Cassandra Gremlin Asztal

Ez a cikk áttekintést nyújt az Azure Cosmos DB számos gyakori használati esetéről. A cikkben szereplő javaslatok kiindulópontként szolgálnak az alkalmazás Azure Cosmos DB-vel való fejlesztése során.

A cikk elolvasása után a következő kérdésekre válaszolhat:

  • Mik az Azure Cosmos DB gyakori használati esetei?
  • Milyen előnyökkel jár az Azure Cosmos DB kereskedelmi alkalmazásokhoz való használata?
  • Milyen előnyökkel jár az Azure Cosmos DB adattárként való használata az IoT-rendszerekhez?
  • Milyen előnyökkel jár az Azure Cosmos DB webes és mobilalkalmazásokhoz való használata?

Bevezetés

Az Azure Cosmos DB egy gyors NoSQL-adatbázis Azure-megoldása, amely bármilyen méretű, nyílt API-val rendelkezik. A szolgáltatás célja, hogy lehetővé tegye az ügyfelek számára, hogy rugalmasan (és függetlenül) méretezhetik az átviteli sebességet és a tárolást tetszőleges számú földrajzi régióban. Az Azure Cosmos DB az első globálisan elosztott adatbázis-szolgáltatás a piacon, amely átfogó szolgáltatási szintű szerződéseket kínál, beleértve az átviteli sebességet, a késést, a rendelkezésre állást és a konzisztenciát.

Az Azure Cosmos DB egy globálisan elosztott, többmodelles adatbázis, amelyet számos alkalmazásban és használati esetben használnak. Ez egy jó választás minden olyan kiszolgáló nélküli alkalmazáshoz, amely alacsony ezredmásodpercnyi válaszidőt igényel, és gyorsan és globálisan kell méreteznie. Több adatmodellt (kulcs-érték, dokumentum, grafikon és oszlopos) és számos Azure Cosmos DB API-t támogat az adathozzáféréshez, beleértve a MongoDB API-t, a NoSQL API-t, a Gremlin API-t és a Table API-t natív módon és bővíthető módon.

Az alábbiakban az Azure Cosmos DB néhány attribútumát ismertetjük, amelyek globális ambícióval rendelkező, nagy teljesítményű alkalmazásokhoz ideálisak.

  • Az Azure Cosmos DB natív módon particionálja az adatokat a magas rendelkezésre állás és a méretezhetőség érdekében. Az Azure Cosmos DB 99,99%-os garanciát biztosít a rendelkezésre állásra, az átviteli sebességre, az alacsony késésre és a konzisztenciára az összes egyrégiós fiókon és az összes többrégiós fiókon, nyugodt konzisztenciával, valamint 99,999%-os olvasási rendelkezésre állással az összes többrégiós adatbázisfiókon.
  • Az Azure Cosmos DB SSD-alapú tárolóval rendelkezik, alacsony késésű, ezredmásodpercnyi válaszidővel.
  • Az Azure Cosmos DB olyan konzisztenciaszintek támogatása, mint a végleges, konzisztens előtag, munkamenet és határolt elavultság, lehetővé teszi a teljes rugalmasságot és az alacsony költség-teljesítmény arányt. Egyetlen adatbázis-szolgáltatás sem nyújt olyan rugalmasságot, mint az Azure Cosmos DB a szintek konzisztenciájában.
  • Az Azure Cosmos DB rugalmas, adatbarát díjszabási modellel rendelkezik, amely egymástól függetlenül méri a tárolást és az átviteli sebességet.
  • Az Azure Cosmos DB fenntartott átviteli sebességmodellje lehetővé teszi, hogy a mögöttes hardver processzora/memóriája/IOP-jai helyett olvasások/írások száma alapján gondolkodjon.
  • Az Azure Cosmos DB kialakítása lehetővé teszi, hogy nagy méretű kérelemkötetekre méretezhető, több trillió kérés sorrendjében naponta.

Ezek az attribútumok előnyösek a webes, mobil, játék- és IoT-alkalmazásokban, amelyek alacsony válaszidőt igényelnek, és nagy mennyiségű olvasást és írást kell kezelniük.

IoT és telematika

Az IoT-használati esetek gyakran osztanak meg néhány mintát az adatok betöltésének, feldolgozásának és tárolásának módjában. Először is ezeknek a rendszereknek különböző területi beállítások eszközérzékelőiből származó adatkitöréseket kell betöltenie. A következő lépésben ezek a rendszerek feldolgozzák és elemzik a streamelési adatokat, hogy valós idejű elemzéseket nyerjenek. Az adatok ezután a kötegelt elemzéshez a hideg tárolóba lesznek archiválva. A Microsoft Azure gazdag szolgáltatásokat kínál az IoT-használati esetekhez, például az Azure Cosmos DB-hez, az Azure Event Hubshoz, az Azure Stream Analyticshez, az Azure Notification Hubhoz, az Azure Machine Learninghez, az Azure HDInsighthoz és a Power BI-hoz.

Azure Cosmos DB IoT referenciaarchitektúra

Az Azure Event Hubs betöltheti az adatcsomópontokat, mivel nagy átviteli sebességű adatbetöltést és alacsony késést biztosít. A valós idejű elemzéshez feldolgozandó adatok az Azure Stream Analyticsbe való tölcsérbe kerülnek valós idejű elemzés céljából. Az adatok betölthetők az Azure Cosmos DB-be adhoc-lekérdezésekhez. Miután betöltötte az adatokat az Azure Cosmos DB-be, az adatok lekérdezhetők. Emellett az új adatok és a meglévő adatok módosítása is olvasható a változáscsatornában. A változáscsatorna egy állandó, csak hozzáfűző napló, amely szekvenciális sorrendben tárolja az Azure Cosmos DB-tárolók módosításait. Ezután az Azure Cosmos DB-ben lévő összes adat vagy csak az adatok módosítása felhasználható referenciaadatokként a valós idejű elemzések részeként. Emellett az adatok tovább pontosíthatók és feldolgozhatók az Azure Cosmos DB-adatok a HDInsight for Pig, Hive vagy Map/Reduce feladatokhoz való csatlakoztatásával. A finomított adatok ezután visszatöltődnek az Azure Cosmos DB-be jelentéskészítés céljából.

Az Azure Cosmos DB, az Event Hubs és az Apache Storm használatával történő IoT-mintamegoldásért tekintse meg a GitHub hdinsight-storm-examples adattárát.

Az IoT-hez készült Azure-ajánlatokról további információt a Dolgok internetének létrehozása című témakörben talál.

Kiskereskedelem és marketing

Az Azure Cosmos DB-t széles körben használják a Microsoft saját e-kereskedelmi platformjaiban, amelyek a Windows Áruházat és az XBox Live-t futtatják. A kiskereskedelmi iparágban a katalógusadatok tárolására és az esemény-beszerzésre is használják a rendelésfeldolgozási folyamatokban.

A katalógus adathasználati forgatókönyvei magukban foglalják az entitások, például személyek, helyek és termékek attribútumkészletének tárolását és lekérdezését. A katalógusadatokra néhány példa a felhasználói fiókok, a termékkatalógusok, az IoT-eszközregisztrációs adatbázisok és az anyagjegyzék-rendszerek. Az adatok attribútumai eltérőek lehetnek, és idővel változhatnak az alkalmazás követelményeinek megfelelően.

Vegyünk egy példát egy autóipari alkatrész-beszállító termékkatalógusára. Minden résznek lehetnek saját attribútumai az összes rész közös attribútumai mellett. Ezenkívül egy adott rész attribútumai az új modell megjelenésekor a következő évben változhatnak. Az Azure Cosmos DB rugalmas sémákat és hierarchikus adatokat támogat, így kiválóan alkalmas termékkatalógus-adatok tárolására.

Az Azure Cosmos DB kiskereskedelmi katalógusának referenciaarchitektúrája

Az Azure Cosmos DB-t gyakran használják az eseményvezérelt architektúrák eseménybevezetéséhez a változáscsatorna funkciójával. A változáscsatorna lehetővé teszi az alsóbb rétegbeli mikroszolgáltatások számára az Azure Cosmos DB-ben készített beszúrások és frissítések (például rendelési események) megbízható és növekményes olvasását. Ez a funkció felhasználható egy állandó eseménytár üzenetközvetítőként az állapotmódosítási eseményekhez és a rendelésfeldolgozási munkafolyamat számos mikroszolgáltatás között (amely kiszolgáló nélküli Azure Functionsként implementálható).

Azure Cosmos DB rendelési folyamat referenciaarchitektúrája

Emellett az Azure Cosmos DB-ben tárolt adatok integrálhatók a HDInsighttal big data-elemzésekhez Apache Spark-feladatokon keresztül. Az Azure Cosmos DB-hez készült Spark-összekötő részleteiért lásd : Spark-feladat futtatása az Azure Cosmos DB-vel és a HDInsighttal.

Játékok

Az adatbázis a játékalkalmazások kulcsfontosságú eleme. A modern játékok a grafikus feldolgozást a mobilos és a konzolos ügyfeleken végzik, de a felhőt használják a testreszabott és személyre szabott tartalmakhoz, például a játékon belüli statisztikákhoz, a közösségi média integrációjához és a ranglistákhoz. A játékok gyakran egy ezredmásodpercnyi késést igényelnek az olvasáshoz és az íráshoz, hogy megnyerő játékélményt nyújtsanak. A játékadatbázisnak gyorsnak kell lennie, és képesnek kell lennie arra, hogy kezelni tudja a csúcsterheléseket például egy új játék indításakor vagy egy funkciófrissítés esetén.

Az Azure Cosmos DB-t olyan játékok használják, mint a The Walking Dead: No Man's Land by Next Games és a Halo 5: Guardians by 343 Industries. Az Azure Cosmos DB a következő előnyöket nyújtja a játékfejlesztők számára:

  • Az Azure Cosmos DB lehetővé teszi a teljesítmény rugalmas fel- vagy leskálázását. Ez lehetővé teszi a játékok számára, hogy egyetlen API-hívással több tucatról több millió egyidejű játékosra frissítsék a profilokat és a statisztikákat.
  • Az Azure Cosmos DB támogatja az ezredmásodpercnyi olvasást és írást, hogy elkerülje a játék közbeni késéseket.
  • Az Azure Cosmos DB automatikus indexelése lehetővé teszi, hogy valós időben szűrjön több különböző tulajdonságra, például keresse meg a játékosokat a belső játékosazonosítók, illetve a GameCenter, a Facebook, a Google azonosítók vagy a céh játékostagságán alapuló lekérdezések alapján. Ez összetett indexelési vagy horizontális skálázási infrastruktúra kiépítése nélkül lehetséges.
  • A közösségi funkciók, például a játékon belüli csevegőüzenetek, a játékoscéh tagságai, a befejezett kihívások, a magas pontszámú ranglisták és a szociális grafikonok rugalmas sémával könnyebben implementálhatóak.
  • Az Azure Cosmos DB szolgáltatásként felügyelt platformként (PaaS) minimális beállítási és felügyeleti munkát igényelt a gyors iteráció lehetővé tétele és a piacra dobási idő csökkentése érdekében.

Az Azure Cosmos DB játékreferenciális architektúrája

Webes és mobilalkalmazások

Az Azure Cosmos DB-t gyakran használják webes és mobilalkalmazásokban is, mert kiválóan alkalmas a közösségi interakciók modellezésére, a harmadik féltől származó szolgáltatások integrációjára és sokoldalú személyre szabott élmények megvalósítására. Az Azure Cosmos DB SDK-k gazdag iOS- és Android-alkalmazások készítésére használhatók a népszerű Xamarin-keretrendszer használatával.

Közösségi alkalmazások

Az Azure Cosmos DB gyakori használati esete a felhasználó által létrehozott tartalom (UGC) tárolása és lekérdezése webes, mobil- és közösségi médiaalkalmazásokhoz. Néhány példa az UGC-ra: csevegési munkamenetek, tweetek, blogbejegyzések, értékelések és megjegyzések. A közösségimédia-alkalmazásokban az UGC gyakran olyan szabad formátumú szövegek, tulajdonságok, címkék és kapcsolatok keveréke, amelyeket nem merev szerkezet határol. A tartalmak, például csevegések, megjegyzések és bejegyzések az Azure Cosmos DB-ben tárolhatók anélkül, hogy átalakításokat vagy összetett objektumokat kellene létrehozni a relációs leképezési rétegekhez. Az adattulajdonságok könnyen hozzáadhatók vagy módosíthatók a követelményeknek megfelelően, mivel a fejlesztők iterálnak az alkalmazáskódon, így elősegítve a gyors fejlesztést.

A külső közösségi hálózatokkal integrálható alkalmazásoknak válaszolniuk kell a hálózatok sémáinak módosítására. Mivel az adatok alapértelmezés szerint automatikusan indexelnek az Azure Cosmos DB-ben, az adatok bármikor lekérdezhetők. Ezért ezek az alkalmazások rugalmasan lekérhetik az előrejelzéseket az igényeiknek megfelelően.

Számos közösségi alkalmazás globális szinten fut, és kiszámíthatatlan használati mintákat mutathat. Az adattár skálázásának rugalmassága elengedhetetlen, mivel az alkalmazásréteg a használati igényeknek megfelelően méretezhető. Horizontális felskálázáshoz további adatpartíciókat adhat hozzá egy Azure Cosmos DB-fiókhoz. Emellett további Azure Cosmos DB-fiókokat is létrehozhat több régióban. Az Azure Cosmos DB szolgáltatásrégió rendelkezésre állásával kapcsolatban tekintse meg az Azure-régiókat.

Az Azure Cosmos DB webalkalmazás referenciaarchitektúráját bemutató ábra.

Személyre szabás

Napjainkban a modern alkalmazások összetett nézetekkel és élményekkel járnak. Ezek általában dinamikusak, és kielégítik a felhasználói preferenciákat, hangulatokat és márkaépítési igényeket. Ezért az alkalmazásoknak hatékonyan le kell tudniuk kérni a személyre szabott beállításokat a felhasználói felület elemeinek és felhasználói felületének gyors megjelenítéséhez.

Az Azure Cosmos DB által támogatott JSON egy hatékony formátum a felhasználói felület elrendezési adatainak megjelenítésére, mivel nem csak egyszerű, hanem a JavaScript is könnyen értelmezhető. Az Azure Cosmos DB elérhető konzisztenciaszinteket kínál, amelyek lehetővé teszik a gyors olvasást alacsony késésű írásokkal. Ezért a felhasználói felület elrendezési adatainak tárolása, beleértve a személyre szabott beállításokat is, mivel az Azure Cosmos DB JSON-dokumentumai hatékony eszközt jelentenek az adatok vezeték nélküli lekérésére.

Az Azure Cosmos DB webalkalmazás-referenciaarchitektúrája

Következő lépések

  • Az Azure Cosmos DB használatának megkezdéséhez kövesse a rövid útmutatókat, amelyek végigvezetik a fiók létrehozásán és az Azure Cosmos DB használatbavételén.

  • Ha többet szeretne megtudni az Azure Cosmos DB-t használó ügyfelekről, tekintse meg az ügyfél-esettanulmányok oldalát.