تعريف مفاتيح فريدة لحاوية Azure Cosmos DB
ينطبق على: NoSQL
تعرض هذه المقالة الطرق المختلفة لتعريف مفاتيح فريدة عند إنشاء حاوية Azure Cosmos DB. من الممكن حاليا إجراء هذه العملية إما باستخدام مدخل Azure أو من خلال أحد عدة تطوير البرامج.
استخدام مدخل Microsoft Azure
قم بتسجيل الدخول إلى بوابة Azure.
افتح جزء مستكشف البيانات وحدد الحاوية التي تريد العمل عليها.
انقر على حاوية جديدة.
في مربع شريط الحوار إضافة حاوية، انقر فوق + إضافة مفتاح فريد لإضافة إدخال مفتاح فريد.
أدخل المسار (المسارات) لقيد المفتاح الفريد
إذا لزم الأمر، فأضف المزيد من إدخالات المفتاح الفريد من نوعه من خلال النقر على + إضافة مفتاح فريد
استخدام PowerShell
لإنشاء حاوية بمفاتيح فريدة، راجع إنشاء حاوية Azure Cosmos DB باستخدام مفتاح فريد وTL
استخدم .NET عدة تطوير البرامج
عند إنشاء حاوية جديدة باستخدام .NET عدة تطوير البرامج إصدار2 يمكنك استخدام عنصرUniqueKeyPolicy
لتعريف قيود المفتاح الفريد.
client.CreateDocumentCollectionAsync(UriFactory.CreateDatabaseUri("database"), new DocumentCollection
{
Id = "container",
PartitionKey = new PartitionKeyDefinition { Paths = new Collection<string>(new List<string> { "/myPartitionKey" }) },
UniqueKeyPolicy = new UniqueKeyPolicy
{
UniqueKeys = new Collection<UniqueKey>(new List<UniqueKey>
{
new UniqueKey { Paths = new Collection<string>(new List<string> { "/firstName", "/lastName", "/emailAddress" }) },
new UniqueKey { Paths = new Collection<string>(new List<string> { "/address/zipCode" }) }
})
}
});
استخدم Java SDK
عند إنشاء حاوية جديدة باستخدام Java عدة تطوير البرامج، يمكن استخدام عنصرUniqueKeyPolicy
لتعريف قيود المفتاح الفريد.
// create a new DocumentCollection object
DocumentCollection container = new DocumentCollection();
container.setId("container");
// create array of strings and populate them with the unique key paths
Collection<String> uniqueKey1Paths = new ArrayList<String>();
uniqueKey1Paths.add("/firstName");
uniqueKey1Paths.add("/lastName");
uniqueKey1Paths.add("/emailAddress");
Collection<String> uniqueKey2Paths = new ArrayList<String>();
uniqueKey2Paths.add("/address/zipCode");
// create UniqueKey objects and set their paths
UniqueKey uniqueKey1 = new UniqueKey();
UniqueKey uniqueKey2 = new UniqueKey();
uniqueKey1.setPaths(uniqueKey1Paths);
uniqueKey2.setPaths(uniqueKey2Paths);
// create a new UniqueKeyPolicy object and set its unique keys
UniqueKeyPolicy uniqueKeyPolicy = new UniqueKeyPolicy();
Collection<UniqueKey> uniqueKeys = new ArrayList<UniqueKey>();
uniqueKeys.add(uniqueKey1);
uniqueKeys.add(uniqueKey2);
uniqueKeyPolicy.setUniqueKeys(uniqueKeys);
// set the unique key policy
container.setUniqueKeyPolicy(uniqueKeyPolicy);
// create the container
client.createCollection(String.format("/dbs/%s", "database"), container, null);
استخدام عقدة.js عدة تطوير البرامج
عند إنشاء حاوية جديدة باستخدام عقدة js. عدة تطوير البرامج، يمكن استخدام عنصرUniqueKeyPolicy
لتعريف قيود المفتاح الفريد.
client.database('database').containers.create({
id: 'container',
uniqueKeyPolicy: {
uniqueKeys: [
{ paths: ['/firstName', '/lastName', '/emailAddress'] },
{ paths: ['/address/zipCode'] }
]
}
});
استخدام Python عدة تطوير البرامج
عند إنشاء حاوية جديدة باستخدام Python عدة تطوير البرامج، يمكن تحديد قيود المفتاح الفريدة كجزء من القاموس الذي تم تمريره كمعلمة.
client.CreateContainer('dbs/' + config['DATABASE'], {
'id': 'container',
'uniqueKeyPolicy': {
'uniqueKeys': [
{'paths': ['/firstName', '/lastName', '/emailAddress']},
{'paths': ['/address/zipCode']}
]
}
})
الخطوات التالية
- تعلم المزيد عنالتقسيم
- استكشاف كيفية عمل الفهرسة