我建议您花几分钟时间阅读 mongodb php 扩展的基础知识
http://www.php.net/manual/en/mongocollection.find.php
它很容易上手,您可以按照示例进行操作。
关于性能,这在很大程度上取决于您的设置。
我创建了两个集合并填充了演示数据:
一百万:
for (var i=0; i<100000; i++) { cat = { name : 'category'+i }; db.onemillion.save(cat); }
一千万:
for (var i=0; i<10000000; i++) { cat = { name : 'category'+i }; db.tenmillion.save(cat); }
在我的设置/硬件上,这些是查询类别名称的结果:
一百万:
> db.onemillion.find({'name':'category12345'}).explain();
{
"cursor" : "BasicCursor",
"isMultiKey" : false,
"n" : 1,
"nscannedObjects" : 1000000,
"nscanned" : 1000000,
"nscannedObjectsAllPlans" : 1000000,
"nscannedAllPlans" : 1000000,
"scanAndOrder" : false,
"indexOnly" : false,
"nYields" : 1,
"nChunkSkips" : 0,
"millis" : 331,
"indexBounds" : {
},
"server" : "station7.local:27017"
}
>
一千万:
> db.tenmillion.find({'name':'category12345'}).explain();
{
"cursor" : "BasicCursor",
"isMultiKey" : false,
"n" : 1,
"nscannedObjects" : 10000000,
"nscanned" : 10000000,
"nscannedObjectsAllPlans" : 10000000,
"nscannedAllPlans" : 10000000,
"scanAndOrder" : false,
"indexOnly" : false,
"nYields" : 4,
"nChunkSkips" : 0,
"millis" : 3301,
"indexBounds" : {
},
"server" : "station7.local:27017"
}
>
正如预期的那样。
您可以使用它来测试您的案例。
我无法想象一千万个类别集合的用例。
因此,如果您能提供更多信息,那就更好了。