为了在 Azure CosmosDB 中创建 mongoDb 集合,我使用
MongoClient().getDatabase("dbName");
,然后执行插入操作,以便在最后创建我的数据库/集合。
但是,还要求创建的集合启用分析存储。我的实现是用 C# 编写的
我的问题是,如何使用 MongoClient 创建一个将分析存储选项设置为 true 的集合?
提前致谢
CreateCollection
方法和 CreateCollectionOptions
来实现 MongoDb,但没有找到任何用于存储启用的东西要使用 C# 驱动程序创建在 Azure Cosmos DB 中启用分析存储的 MongoDB 集合,可以在创建集合时设置分析存储属性。这是一个示例代码片段:
using MongoDB.Driver;
using MongoDB.Bson;
using Microsoft.Azure.CosmosDB.MongoDB.BulkExecutor;
using Microsoft.Azure.CosmosDB.MongoDB.BulkExecutor.BulkImport;
string connectionString = "your_connection_string_here";
string databaseName = "your_database_name_here";
string collectionName = "your_collection_name_here";
MongoClientSettings settings = MongoClientSettings.FromUrl(new MongoUrl(connectionString));
MongoClient client = new MongoClient(settings);
IMongoDatabase database = client.GetDatabase(databaseName);
BsonDocument collectionOptions = new BsonDocument
{
{ "analyticalStoreEnabled", true }
};
database.CreateCollection(collectionName, new CreateCollectionOptions
{
StorageEngine = new BsonDocument
{
{ "wiredTiger", new BsonDocument
{
{ "configString", "block_compressor=zstd" }
}
}
},
Validator = new BsonDocument("$jsonSchema", new BsonDocument
{
{ "bsonType", "object" }
}),
AutoIndexId = true,
MaxSize = null,
Capped = false,
Collation = null,
AnalyticalStoreOptions = collectionOptions
});