Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A KÖVETKEZŐRE VONATKOZIK: NoSQL
Az Azure Cosmos DB kivonatalapú particionálási sémát használ az adatok horizontális skálázásához. A 2019. május 3. előtt létrehozott összes Azure Cosmos DB-tároló egy kivonatfüggvényt használ, amely a partíciókulcs első 101 bájtja alapján számítja ki a kivonatot. Ha több partíciókulcs is rendelkezik ugyanazzal az első 101 bájttal, akkor a szolgáltatás ugyanazt a logikai partíciót veszi figyelembe, amely partíciókulcs-ütközést okoz. Ez olyan problémákhoz vezethet, mint a partíciókulcs ütközése, a partícióméret kvótája helytelen, az egyedi indexek helytelenül vannak alkalmazva a partíciókulcsokon, és a tárterület egyenetlen eloszlása. A probléma megoldásához nagy partíciókulcsok jelennek meg. Az Azure Cosmos DB mostantól támogatja a nagy partíciókulcsokat, amelyek értéke legfeljebb 2 KB.
A nagyméretű partíciókulcsok a kivonatoló függvény továbbfejlesztett verziójának engedélyezésével támogatottak, amely akár 2 KB méretű nagyméretű partíciókulcsokból is létrehozhat egyedi kivonatot. Ajánlott eljárás, ha nem igényel támogatást egy régebbi Azure Cosmos DB SDK-hoz vagy olyan alkalmazáshoz, amely nem támogatja ezt a funkciót, mindig ajánlott a tárolót nagy partíciókulcsok támogatásával konfigurálni. A nagy partíciókulcsok engedélyezése csak a tároló létrehozásakor végezhető el. Ha már rendelkezik olyan tárolóval, amely nem használ nagy partíciókulcsokat, létre kell hoznia egy új tárolót, és át kell vinnie az adatait .
Nagyméretű partíciókulcs létrehozása (Azure Portal)
Az Azure Portal használatával létrehozott tárolók alapértelmezés szerint nagy partíciókulcsot használnak.
Nagyméretű partíciókulcs létrehozása (PowerShell)
Nagy partíciókulcs-támogatással rendelkező tároló létrehozásához tekintse meg a következő útmutatót:
Nagyméretű partíciókulcs (.NET SDK) létrehozása
Ha nagyméretű partíciókulcsot tartalmazó tárolót szeretne létrehozni a .NET SDK használatával, adja meg a PartitionKeyDefinitionVersion.V2
tulajdonságot. Az alábbi példa bemutatja, hogyan adhatja meg a Version tulajdonságot a PartitionKeyDefinition objektumon belül, és hogyan állíthatja be PartitionKeyDefinitionVersion.V2 értékre.
Feljegyzés
Alapértelmezés szerint a .NET SDK V2 használatával létrehozott összes tároló nem támogatja a nagy partíciókulcsokat. Alapértelmezés szerint a .NET SDK V3 használatával létrehozott összes tároló támogatja a nagy partíciókulcsokat.
await database.CreateContainerAsync(
new ContainerProperties(collectionName, $"/longpartitionkey")
{
PartitionKeyDefinitionVersion = PartitionKeyDefinitionVersion.V2,
})
Támogatott SDK-verziók
A nagyméretű partíciókulcsok az SDK-k alábbi minimális verzióival támogatottak:
SDK típusa | Minimális verzió |
---|---|
.NET | 1.18 |
Java-szinkronizálás | 2.4.0 |
Java Async | 2.5.0 |
REST API | a x-ms-version kérés fejléce használatával magasabb verziót, mint 2017-05-03 |
Resource Manager-sablon | 2- es verzió az "version":2 objektumon belüli partitionKey tulajdonság használatával. |
Jelenleg nem használhat nagy partíciókulcsú tárolókat a Power BI-ban és az Azure Logic Appsben. Ezekből az alkalmazásokból nagy partíciókulcs nélkül is használhat tárolókat.