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


Az Azure Cosmos DB-hez készült Azure Synapse Link konfigurálása és használata

A KÖVETKEZŐKRE VONATKOZIK: NoSQL MongoDB Gremlin

Az Azure Cosmos DB-hez készült Azure Synapse Link egy felhőalapú hibrid tranzakciós és elemzési (HTAP) képesség, amellyel közel valós idejű elemzéseket futtathat a működési adatokon az Azure Cosmos DB-ben. A Synapse Link szoros, zökkenőmentes integrációt hoz létre az Azure Cosmos DB és az Azure Synapse Analytics között.

Fontos

A Microsoft Fabricben való tükrözés mostantól előzetes verzióban érhető el a NoSql API-hoz. Ez a funkció az Azure Synapse Link összes funkcióját biztosítja jobb elemzési teljesítménnyel, lehetővé teszi az adattulajdon egyesítését a Fabric OneLake-vel, valamint az adatokhoz való hozzáférést Delta Parquet formátumban, OneLake formátumban. Ha az Azure Synapse Linket fontolgatja, javasoljuk, hogy próbálkozzon tükrözéssel a szervezet általános megfelelőségének felméréséhez. A tükrözés használatának megkezdéséhez kattintson ide.

Az Azure Synapse Link elérhető az Azure Cosmos DB SQL API-hoz vagy a Mongo DB-fiókokhoz készült Azure Cosmos DB API-hoz. És előzetes verzióban érhető el a Gremlin API-hoz, cli-parancsokkal történő aktiválással. Az alábbi lépésekkel elemzési lekérdezéseket futtathat az Azure Cosmos DB-hez készült Azure Synapse Link használatával:

A betanítási modult az Azure Cosmos DB-hez készült Azure Synapse Link konfigurálásáról is ellenőrizheti.

A Synapse Link használatának első lépése az Azure Cosmos DB-adatbázisfiók engedélyezése.

Feljegyzés

Ha ügyfél által felügyelt kulcsokat szeretne használni az Azure Synapse Link használatával, a fiók felügyelt identitását az Azure Key Vault hozzáférési szabályzatában kell konfigurálnia, mielőtt engedélyezi a Synapse Linket a fiókjában. További információkért tekintse meg, hogyan konfigurálhat ügyfél által felügyelt kulcsokat az Azure Cosmos DB-fiókok felügyelt identitásainak használatával.

Feljegyzés

Ha a Full Fidelity Schema for API for NoSQL-fiókokat szeretné használni, az Azure Portal használatával nem engedélyezheti a Synapse Linket. Ez a beállítás nem módosítható, ha a Synapse Link engedélyezve van a fiókjában, és a beállításához az Azure CLI-t vagy a PowerShellt kell használnia. További információkért tekintse meg az elemzési tár sémareprezentációjának dokumentációját.

Feljegyzés

Közreműködői szerepkörre van szüksége a Synapse Link fiókszintű engedélyezéséhez. A Synapse Link tárolókban vagy gyűjteményekben való engedélyezéséhez pedig legalább operátori szerepkörre van szüksége.

Azure Portal

  1. Jelentkezzen be az Azure Portalra.

  2. Hozzon létre egy új Azure-fiókot, vagy válasszon ki egy meglévő Azure Cosmos DB-fiókot.

  3. Lépjen az Azure Cosmos DB-fiókjára, és nyissa meg az Azure Synapse Linket az Integrációk területen a bal oldali panelen.

  4. Válassza ki az Engedélyezés lehetőséget. A folyamat befejezése 1–5 percet vehet igénybe.

    Képernyőkép a Synapse Link funkció engedélyezéséről.

  5. A fiók mostantól használhatja a Synapse Linket. A következő lépésben megtudhatja, hogyan hozhat létre elemzési tárral kompatibilis tárolókat, amelyek automatikusan megkezdik a műveleti adatok replikálását a tranzakciós tárolóból az elemzési tárba.

Feljegyzés

A Synapse Link bekapcsolása nem váltja ki az elemzési tár automatikus bekapcsolását. Ha már engedélyezte a Synapse Linket a Cosmos DB-fiókban, a Synapse Link használatának megkezdéséhez engedélyezze az elemzési tárat a tárolóknál.

Feljegyzés

A Synapse Linket a fiókjához a Power BI és a Synapse Link panel használatával is engedélyezheti a bal oldali navigációs menü Integrációk szakaszában.

Parancssori eszközök

NoSQL- vagy MongoDB-fiókhoz készült Azure Cosmos DB API esetén a Synapse Link az Azure CLI vagy a PowerShell használatával engedélyezhető.

Azure CLI

Létrehozási és frissítési műveletekhez is használható--enable-analytical-storage true. A reprezentációs séma típusát is ki kell választania. A NoSQL-fiókokhoz készült API-fiókokhoz --analytical-storage-schema-type használhatja az értékeket FullFidelity vagy WellDefineda . A MongoDB-fiókokhoz készült API-khoz mindig használja a következőt --analytical-storage-schema-type FullFidelity: .

A Gremlin API-hoz készült Synapse Link előzetes verzióban érhető el. Az Azure CLI használatával engedélyezheti a Synapse Linket az új vagy meglévő gráfokban. Az alábbi CLI-paranccsal engedélyezheti a Synapse Linket a Gremlin API-fiókhoz:

az cosmosdb create --capabilities EnableGremlin --name MyCosmosDBGremlinDatabaseAccount --resource-group MyResourceGroup --enable-analytical-storage true

Meglévő Gremlin API-fiókok esetén cserélje le a következőre create update: .

PowerShell

Létrehozási és frissítési műveletekhez is használhatóEnableAnalyticalStorage true. A reprezentációs séma típusát is ki kell választania. A NoSQL-fiókokhoz készült API-fiókokhoz --analytical-storage-schema-type használhatja az értékeket FullFidelity vagy WellDefineda . A MongoDB-fiókokhoz készült API-khoz mindig használja a következőt -AnalyticalStorageSchemaType FullFidelity: .

Azure Resource Manager-sablon

Ez az Azure Resource Manager-sablon létrehoz egy Synapse Link-kompatibilis Azure Cosmos DB-fiókot az SQL API-hoz. Ez a sablon létrehoz egy Core (SQL) API-fiókot egy régióban, amelyen engedélyezve van az elemzési TTL-vel konfigurált tároló, és lehetővé teszi a manuális vagy automatikus skálázási átviteli sebesség használatát. A sablon üzembe helyezéséhez kattintson az Üzembe helyezés az Azure-ban elemre az olvasási lapon.

Az Azure Synapse Link engedélyezése a tárolókhoz

A második lépés a Synapse Link engedélyezése a tárolókhoz vagy gyűjteményekhez. Ezt úgy érheti el, hogy a analytical TTL tulajdonságot -1 végtelen megőrzésre vagy pozitív egész számra állítja, azaz az elemzési tárban tartani kívánt másodpercek számát. Ez a beállítás később módosítható. További információkért tekintse meg az elemzési TTL által támogatott értékekről szóló cikket.

Az Azure Synapse Link meglévő SQL API-tárolókon való engedélyezésekor vegye figyelembe az alábbi részleteket:

  • Az elemzési tár automatikus szinkronizálási folyamatának teljesítménybeli elkülönítése a kezdeti szinkronizálásra vonatkozik, és nincs hatással a teljesítményre az OLTP számítási feladatra.
  • A tároló kezdeti szinkronizálása az elemzési tár teljes időtartamával az adatmennyiségtől és a dokumentumok összetettségétől függően változik. Ez a folyamat néhány másodperctől több napig is eltarthat. A migrálás előrehaladásának figyeléséhez használja az Azure Portalt.
  • A tároló vagy az adatbázisfiók átviteli sebessége a teljes kezdeti szinkronizálási időt is befolyásolja. Bár ebben az áttelepítésben nem használ ru/s-t, a rendelkezésre álló teljes ru/s befolyásolja a folyamat teljesítményét. A folyamat felgyorsítása érdekében ideiglenesen növelheti a környezet rendelkezésre álló kérelemegységeit.
  • Nem tudja lekérdezni egy meglévő tároló elemzési tárát, amíg a Synapse Link engedélyezve van a tárolón. Az OLTP-számítási feladatra nincs hatással, és az adatok olvasása a szokásos módon is tartható. A kezdeti szinkronizálás kezdete után betöltött adatokat a rendszeres elemzési tár automatikus szinkronizálási folyamata egyesíti az elemzési tárba.

Feljegyzés

Most már engedélyezheti a Synapse Linket a meglévő MongoDB API-gyűjteményeken az Azure CLI vagy a PowerShell használatával.

Azure Portal

Új tároló

  1. Jelentkezzen be az Azure Portalra vagy az Azure Cosmos DB Explorerbe.

  2. Lépjen az Azure Cosmos DB-fiókjára, és nyissa meg az Adatkezelő lapot.

  3. Válassza az Új tároló lehetőséget, és adja meg az adatbázis, a tároló, a partíciókulcs és az átviteli sebesség adatait. Kapcsolja be az Elemzési tár lehetőséget. Az elemzési tár engedélyezése után létrehoz egy tárolót, amelynek analytical TTL tulajdonsága a -1 (végtelen megőrzés) alapértelmezett értékre van állítva. Ez az elemzési tár megőrzi a rekordok összes előzményverzióját, és később módosítható.

    Az Elemzési tár bekapcsolása az Azure Cosmos DB-tárolóhoz

  4. Ha korábban nem engedélyezte a Synapse Linket ezen a fiókon, az arra fogja kérni, hogy tegye meg, mert ez egy elemzési tárat engedélyező tároló létrehozásának előfeltétele. Ha a rendszer kéri, válassza a Synapse Link engedélyezése lehetőséget. A folyamat befejezése 1–5 percet vehet igénybe.

  5. Válassza az OK gombot egy elemzési tárat engedélyező Azure Cosmos DB-tároló létrehozásához.

  6. A tároló létrehozása után ellenőrizze, hogy az elemzési tár engedélyezve van-e. Ehhez kattintson a Beállítások gombra, közvetlenül az Adatkezelő Dokumentumok alatt, és ellenőrizze, hogy be van-e kapcsolva az Elemzési tár élettartam beállítása.

Meglévő tároló

  1. Jelentkezzen be az Azure Portalra vagy az Azure Cosmos DB Explorerbe.

  2. Lépjen az Azure Cosmos DB-fiókjára, és nyissa meg az Azure Synapse Link lapot.

  3. A tárolókhoz készült Azure Synapse Link engedélyezése szakaszban válassza ki a tárolót.

    Képernyőkép egy meglévő Azure Cosmos DB-tároló elemzési tárának bekapcsolásáról.

  4. A tároló engedélyezése után ellenőrizze, hogy az elemzési tár engedélyezve van-e. Ehhez kattintson a Beállítások gombra, közvetlenül a Dokumentumok az Adatkezelő Dokumentumok területén, és ellenőrizze, hogy be van-e kapcsolva az Elemzési tár ideje az élőben lehetőség.

Feljegyzés

A Synapse Linket a fiókjához a Power BI és a Synapse Link panel használatával is engedélyezheti a bal oldali navigációs menü Integrációk szakaszában.

Parancssori eszközök

Azure CLI

Az alábbi lehetőségek lehetővé teszik a Synapse Link használatát egy tárolóban az Azure CLI használatával a --analytical-storage-ttl tulajdonság beállításával.

A Gremlin API-hoz készült Synapse Link előzetes verzióban érhető el. Az Azure CLI használatával engedélyezheti a Synapse Linket az új vagy meglévő gráfokban. Az alábbi CLI-paranccsal engedélyezheti a Synapse Linket a Gremlin API-gráfokhoz:

az cosmosdb gremlin graph create --g MyResourceGroup --a MyCosmosDBGremlinDatabaseAccount --d MyGremlinDB --n MyGraph --analytical-storage-ttl –1

Meglévő grafikonok esetén cserélje le a következőre create update: .

PowerShell

Az alábbi lehetőségek lehetővé teszik a Synapse Link használatát egy tárolóban az Azure CLI használatával a -AnalyticalStorageTtl tulajdonság beállításával.

Azure Cosmos DB SDK-k – csak SQL API

.NET SDK

A következő .NET-kód létrehoz egy Synapse Link-kompatibilis tárolót a AnalyticalStoreTimeToLiveInSeconds tulajdonság beállításával. Meglévő tároló frissítéséhez használja a metódust Container.ReplaceContainerAsync .

// Create a container with a partition key, and analytical TTL configured to -1 (infinite retention)
ContainerProperties properties = new ContainerProperties()
{
    Id = "myContainerId",
    PartitionKeyPath = "/id",
    AnalyticalStoreTimeToLiveInSeconds = -1,
};
CosmosClient cosmosClient = new CosmosClient("myConnectionString");
await cosmosClient.GetDatabase("myDatabase").CreateContainerAsync(properties);

Java V4 SDK

A következő Java-kód létrehoz egy Synapse Link-kompatibilis tárolót a setAnalyticalStoreTimeToLiveInSeconds tulajdonság beállításával. Meglévő tároló frissítéséhez használja az osztályt container.replace .

// Create a container with a partition key and  analytical TTL configured to  -1 (infinite retention) 
CosmosContainerProperties containerProperties = new CosmosContainerProperties("myContainer", "/myPartitionKey");

containerProperties.setAnalyticalStoreTimeToLiveInSeconds(-1);

container = database.createContainerIfNotExists(containerProperties, 400).block().getContainer();

Python V4 SDK

A következő Python-kód létrehoz egy Synapse Link-kompatibilis tárolót a analytical_storage_ttl tulajdonság beállításával. Meglévő tároló frissítéséhez használja a metódust replace_container .

# Client
client = cosmos_client.CosmosClient(HOST,  KEY )

# Database client
try:
    db = client.create_database(DATABASE)

except exceptions.CosmosResourceExistsError:
    db = client.get_database_client(DATABASE)

# Creating the container with analytical store enabled
try:
    container = db.create_container(
        id=CONTAINER,
        partition_key=PartitionKey(path='/id', kind='Hash'),analytical_storage_ttl=-1
    )
    properties = container.read()
    print('Container with id \'{0}\' created'.format(container.id))
    print('Partition Key - \'{0}\''.format(properties['partitionKey']))

except exceptions.CosmosResourceExistsError:
    print('A container with already exists')

Csatlakozás Synapse-munkaterülethez

Az Azure Synapse Linkhez való csatlakozásban található utasításokat követve megtudhatja, hogyan férhet hozzá egy Azure Cosmos DB-adatbázishoz az Azure Synapse Analytics Studióból az Azure Synapse Link használatával.

Elemzési tár lekérdezése az Azure Synapse Analytics használatával

Elemzési tár lekérdezése az Azure Synapse Analyticshez készült Apache Spark használatával

Használja az Azure Cosmos DB elemzési tárában található utasításokat a Spark 3-ban a Synapse Spark 3 lekérdezéséről szóló cikk használatával. Ez a cikk néhány példát mutat be arra, hogyan használhatja az elemzési tárat a Synapse-kézmozdulatokból. Ezek a kézmozdulatok akkor jelennek meg, ha a jobb gombbal kattint egy tárolóra. A kézmozdulatok segítségével gyorsan létrehozhat kódot, és igény szerint módosíthatja azt. Az adatok egyetlen kattintással történő felderítéséhez is tökéletesek.

A Spark 2-integrációhoz használja az Azure Cosmos DB elemzési tárában található utasításokat a Spark 2-cikk használatával.

Az elemzési tár lekérdezése kiszolgáló nélküli SQL-készlet használatával az Azure Synapse Analyticsben

A kiszolgáló nélküli SQL-készlet lehetővé teszi az Azure Synapse Linkkel engedélyezett Azure Cosmos DB-tárolókban lévő adatok lekérdezését és elemzését. Az adatokat közel valós időben elemezheti anélkül, hogy hatással lenne a tranzakciós számítási feladatok teljesítményére. Egy jól ismert T-SQL-szintaxist kínál az elemzési tárból származó adatok lekérdezéséhez, valamint a T-SQL-felületen keresztül a bi- és alkalmi lekérdezési eszközök széles köréhez való integrált kapcsolódáshoz. További információkért tekintse meg a Lekérdezési elemzési tár kiszolgáló nélküli SQL-készletet használó cikkét.

Adatok elemzése és vizualizációja kiszolgáló nélküli SQL-készlet használatával a Power BI-ban

Az Azure Cosmos DB portál integrált BI-felületével mindössze néhány kattintással hozhat létre BI-irányítópultokat a Synapse Link használatával. További információkért tekintse meg , hogyan hozhat létre BI-irányítópultokat a Synapse Link használatával. Ez az integrált felület egyszerű T-SQL-nézeteket hoz létre a Synapse kiszolgáló nélküli SQL-készleteiben az Azure Cosmos DB-tárolókhoz. Ezeken a nézeteken keresztül hozhat létre BI-irányítópultokat, amelyek valós időben kérdezik le az Azure Cosmos DB-tárolókat a Direct Query használatával, az adatok legújabb változásait tükrözve. A tranzakciós számítási feladatokra nincs hatással a teljesítmény vagy a költség, és nincs összetettsége az ETL-folyamatok kezelésének.

Ha speciális T-SQL-nézeteket szeretne használni a tárolók közötti illesztésekkel, vagy Power BI-irányítópultokat szeretne létrehozni Importálás módban, olvassa el a Kiszolgáló nélküli SQL-készlet használata az Azure Cosmos DB-adatok Synapse Linkkel való elemzéséhez című témakört.

A teljesítmény javítása ajánlott eljárásokkal

Egyéni particionálás

Az egyéni particionálás lehetővé teszi az elemzési tár adatainak particionálását olyan mezőkön, amelyeket gyakran használnak szűrőkként az elemzési lekérdezésekben, ami jobb lekérdezési teljesítményt eredményez. További információkért tekintse meg az egyéni particionálás bevezetését és az egyéni particionálási cikkek konfigurálását .

Használja ezt a kötelező ajánlott eljárásokat kiszolgáló nélküli SQL-lekérdezésekhez.

A GitHubon az Azure Synapse Link használatának megkezdéséhez találhat példákat. Ezek az IoT- és kiskereskedelmi forgatókönyvekkel rendelkező, végpontok közötti megoldásokat mutatják be. A MongoDB-hez készült Azure Cosmos DB-nek megfelelő mintákat is megtalálhatja ugyanabban az adattárban, a MongoDB mappában.

Következő lépések

További információért tekintse meg a következő dokumentumokat: