- 使用 Detail 选项查看查询的详细访问计划,并且使用 Location 选项查看查询在 group1 上的访问计划
> db.sample.employee.find( { a : { $gt : 100 } } ).explain( { Detail : true, Location : { GroupName : 'group1' } } )
{
"NodeName": "hostname:11800",
"GroupName": "SYSCoord",
"Role": "coord",
"Collection": "sample.employee",
"Query": {
"a": {
"$gt": 100
}
},
"Sort": {},
"Selector": {},
"Hint": {},
"Skip": 0,
"Return": -1,
"Flag": 0,
"ReturnNum": 0,
"ElapsedTime": 0.011374,
"IndexRead": 0,
"DataRead": 0,
"UserCPU": 0,
"SysCPU": 0,
"PlanPath": {
"Operator": "COORD-MERGE",
"Sort": {},
"NeedReorder": false,
"DataNodeNum": 2,
"DataNodeList": [
{
"Name": "hostname:11810",
"EstTotalCost": 1.484
},
{
"Name": "hostname:11820",
"EstTotalCost": 0.7418349999999999
}
],
"Selector": {},
"Skip": 0,
"Return": -1,
"Estimate": {
"StartCost": 0,
"RunCost": 1.5214865,
"TotalCost": 1.5214865,
"Output": {
"Records": 74973,
"RecordSize": 29,
"Sorted": false
}
},
"ChildOperators": [
{
"NodeName": "hostname:11810",
"GroupName": "group1",
"Role": "data",
"Collection": "sample.employee",
"Query": {
"a": {
"$gt": 100
}
},
"Sort": {},
"Selector": {},
"Hint": {},
"Skip": 0,
"Return": -1,
"Flag": 2048,
"ReturnNum": 0,
"ElapsedTime": 0.000088,
"IndexRead": 0,
"DataRead": 0,
"UserCPU": 0,
"SysCPU": 0,
"CacheStatus": "HitCache",
"MainCLPlan": false,
"CacheLevel": "OPT_PLAN_PARAMETERIZED",
"Parameters": [
100
],
"MatchConfig": {
"EnableMixCmp": false,
"Parameterized": true,
"FuzzyOptr": false
}
}
]
}
}
Copy
- 使用 Detail 选项查看垂直分区的详细访问计划,并使用 Expand 选项展开所有细节
> db.maincs.maincl.find( { a : { $gt : 100 } } ).explain( { Detail : true, Expand : true } )
{
"NodeName": "hostname:11800",
"GroupName": "SYSCoord",
"Role": "coord",
"Collection": "maincs.maincl",
"Query": {
"a": {
"$gt": 100
}
},
"Sort": {},
"Selector": {},
"Hint": {},
"Skip": 0,
"Return": -1,
"Flag": 0,
"ReturnNum": 0,
"ElapsedTime": 0.002748,
"IndexRead": 0,
"DataRead": 0,
"UserCPU": 0,
"SysCPU": 0,
"PlanPath": {
"Operator": "COORD-MERGE",
"Sort": {},
"NeedReorder": false,
"DataNodeNum": 2,
"DataNodeList": [
{
"Name": "hostname:11810",
"EstTotalCost": 0.9624999999999999
},
{
"Name": "hostname:11820",
"EstTotalCost": 0.9624999999999999
}
],
"Selector": {},
"Skip": 0,
"Return": -1,
"Estimate": {
"StartCost": 0,
"RunCost": 0.9874999999999999,
"TotalCost": 0.9874999999999999,
"Output": {
"Records": 50000,
"RecordSize": 43,
"Sorted": false
}
},
"ChildOperators": [
{
"NodeName": "hostname:11810",
"GroupName": "group1",
"Role": "data",
"Collection": "maincs.maincl",
"Query": {
"a": {
"$gt": 100
}
},
"Sort": {},
"Selector": {},
"Hint": {},
"Skip": 0,
"Return": -1,
"Flag": 2048,
"ReturnNum": 0,
"ElapsedTime": 0.00062,
"IndexRead": 0,
"DataRead": 0,
"UserCPU": 0,
"SysCPU": 0,
"PlanPath": {
"Operator": "MERGE",
"Sort": {},
"NeedReorder": false,
"SubCollectionNum": 2,
"SubCollectionList": [
{
"Name": "subcs.subcl2",
"EstTotalCost": 0.475
},
{
"Name": "subcs.subcl1",
"EstTotalCost": 0.475
}
],
"Selector": {},
"Skip": 0,
"Return": -1,
"Estimate": {
"StartCost": 0,
"RunCost": 0.9624999999999999,
"TotalCost": 0.9624999999999999,
"Output": {
"Records": 25000,
"RecordSize": 43,
"Sorted": false
}
},
"SubCollections": [
{
"Collection": "subcs.subcl2",
"Query": {
"a": {
"$gt": 100
}
},
"Sort": {},
"Selector": {},
"Hint": {},
"Skip": 0,
"Return": -1,
"Flag": 2048,
"ReturnNum": 0,
"ElapsedTime": 0.000042,
"IndexRead": 0,
"DataRead": 0,
"UserCPU": 0,
"SysCPU": 0,
"CacheStatus": "HitCache",
"MainCLPlan": true,
"CacheLevel": "OPT_PLAN_PARAMETERIZED",
"Parameters": [
100
],
"MatchConfig": {
"EnableMixCmp": false,
"Parameterized": true,
"FuzzyOptr": false
},
"PlanPath": {
"Operator": "TBSCAN",
"Collection": "subcs.subcl2",
"Query": {
"$and": [
{
"a": {
"$gt": 100
}
}
]
},
"Selector": {},
"Skip": 0,
"Return": -1,
"Estimate": {
"StartCost": 0,
"RunCost": 0.475,
"TotalCost": 0.475,
"CLEstFromStat": false,
"Input": {
"Pages": 25,
"Records": 25000,
"RecordSize": 43
},
"Filter": {
"MthSelectivity": 0.4999994999999995
},
"Output": {
"Records": 12500,
"RecordSize": 43,
"Sorted": false
}
}
}
},
{
"Collection": "subcs.subcl1",
"Query": {
"a": {
"$gt": 100
}
},
"Sort": {},
"Selector": {},
"Hint": {},
"Skip": 0,
"Return": -1,
"Flag": 2048,
"ReturnNum": 0,
"ElapsedTime": 0.000049,
"IndexRead": 0,
"DataRead": 0,
"UserCPU": 0,
"SysCPU": 0,
"CacheStatus": "HitCache",
"MainCLPlan": true,
"CacheLevel": "OPT_PLAN_PARAMETERIZED",
"Parameters": [
100
],
"MatchConfig": {
"EnableMixCmp": false,
"Parameterized": true,
"FuzzyOptr": false
},
"PlanPath": {
"Operator": "TBSCAN",
"Collection": "subcs.subcl1",
"Query": {
"$and": [
{
"a": {
"$gt": 100
}
}
]
},
"Selector": {},
"Skip": 0,
"Return": -1,
"Estimate": {
"StartCost": 0,
"RunCost": 0.475,
"TotalCost": 0.475,
"CLEstFromStat": false,
"Input": {
"Pages": 25,
"Records": 25000,
"RecordSize": 43
},
"Filter": {
"MthSelectivity": 0.4999994999999995
},
"Output": {
"Records": 12500,
"RecordSize": 43,
"Sorted": false
}
}
}
}
]
}
},
{
"NodeName": "hostname:11820",
"GroupName": "group2",
"Role": "data",
"Collection": "maincs.maincl",
"Query": {
"a": {
"$gt": 100
}
},
"Sort": {},
"Selector": {},
"Hint": {},
"Skip": 0,
"Return": -1,
"Flag": 2048,
"ReturnNum": 0,
"ElapsedTime": 0.00067,
"IndexRead": 0,
"DataRead": 0,
"UserCPU": 0,
"SysCPU": 0,
"PlanPath": {
"Operator": "MERGE",
"Sort": {},
"NeedReorder": false,
"SubCollectionNum": 2,
"SubCollectionList": [
{
"Name": "subcs.subcl2",
"EstTotalCost": 0.475
},
{
"Name": "subcs.subcl1",
"EstTotalCost": 0.475
}
],
"Selector": {},
"Skip": 0,
"Return": -1,
"Estimate": {
"StartCost": 0,
"RunCost": 0.9624999999999999,
"TotalCost": 0.9624999999999999,
"Output": {
"Records": 25000,
"RecordSize": 43,
"Sorted": false
}
},
"SubCollections": [
{
"Collection": "subcs.subcl2",
"Query": {
"a": {
"$gt": 100
}
},
"Sort": {},
"Selector": {},
"Hint": {},
"Skip": 0,
"Return": -1,
"Flag": 2048,
"ReturnNum": 0,
"ElapsedTime": 0.000034,
"IndexRead": 0,
"DataRead": 0,
"UserCPU": 0,
"SysCPU": 0,
"CacheStatus": "HitCache",
"MainCLPlan": true,
"CacheLevel": "OPT_PLAN_PARAMETERIZED",
"Parameters": [
100
],
"MatchConfig": {
"EnableMixCmp": false,
"Parameterized": true,
"FuzzyOptr": false
},
"PlanPath": {
"Operator": "TBSCAN",
"Collection": "subcs.subcl2",
"Query": {
"$and": [
{
"a": {
"$gt": 100
}
}
]
},
"Selector": {},
"Skip": 0,
"Return": -1,
"Estimate": {
"StartCost": 0,
"RunCost": 0.475,
"TotalCost": 0.475,
"CLEstFromStat": false,
"Input": {
"Pages": 25,
"Records": 25000,
"RecordSize": 43
},
"Filter": {
"MthSelectivity": 0.4999994999999995
},
"Output": {
"Records": 12500,
"RecordSize": 43,
"Sorted": false
}
}
}
},
{
"Collection": "subcs.subcl1",
"Query": {
"a": {
"$gt": 100
}
},
"Sort": {},
"Selector": {},
"Hint": {},
"Skip": 0,
"Return": -1,
"Flag": 2048,
"ReturnNum": 0,
"ElapsedTime": 0.000048,
"IndexRead": 0,
"DataRead": 0,
"UserCPU": 0,
"SysCPU": 0,
"CacheStatus": "HitCache",
"MainCLPlan": true,
"CacheLevel": "OPT_PLAN_PARAMETERIZED",
"Parameters": [
100
],
"MatchConfig": {
"EnableMixCmp": false,
"Parameterized": true,
"FuzzyOptr": false
},
"PlanPath": {
"Operator": "TBSCAN",
"Collection": "subcs.subcl1",
"Query": {
"$and": [
{
"a": {
"$gt": 100
}
}
]
},
"Selector": {},
"Skip": 0,
"Return": -1,
"Estimate": {
"StartCost": 0,
"RunCost": 0.475,
"TotalCost": 0.475,
"CLEstFromStat": false,
"Input": {
"Pages": 25,
"Records": 25000,
"RecordSize": 43
},
"Filter": {
"MthSelectivity": 0.4999994999999995
},
"Output": {
"Records": 12500,
"RecordSize": 43,
"Sorted": false
}
}
}
}
]
}
}
]
}
}
相关文章请点击阅读