Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Atom™ N2800 2c/4t 1.86 GHz+ 4Go RAM 80Go SSD 100 Mbps
- loc: {
- lon: ,
- lat:
- }
- var x = mongoose.Schema({
- loc: {
- lon: Number,
- lat: Number
- },
- created_at: { type: Date, default: Date.now }
- }, { collection: 'places' });
- xSchema.index({loc: "2d", "created_at": -1});
- xSchema.index({"created_at": -1});
- var Model = mongoose.model('places', xSchema);
- Model.on('index', function (error) {
- if (error) return error;
- console.log("ON INDEX");
- });
- ON INDEX
- Mongoose: x.ensureIndex({ loc: '2d', created_at: -1 }) { background: true }
- Mongoose: x.ensureIndex({ created_at: -1 }) { background: true }
- db.places.find({ loc: { '$geoWithin': { '$box': [ [ 2.1566688432447227, 48.62968892500415 ], [ 2.5523096661210394, 49.07990389337538 ] ], } } }).sort({created_at: -1}).limit(100).explain()
- Model.find({
- loc: {
- $geoWithin: {
- $box:[
- [ parseFloat(Math.min(values.lngmin, values.lngmax)), parseFloat(Math.min(values.latmin, values.latmax)) ],
- [ parseFloat(Math.max(values.lngmin, values.lngmax)), parseFloat(Math.max(values.latmin, values.latmax)) ]
- ]
- }
- }
- },function (err, places) {
- if(err){
- callback(err, null);
- return;
- }
- callback(err, places);
- }).
- sort({ created_at: -1 }).
- limit(limit);
- "queryPlanner" : {
- "plannerVersion" : 1,
- "namespace" : "test.x",
- "indexFilterSet" : false,
- "parsedQuery" : {
- "loc" : {
- "$geoWithin" : {
- "$box" : [
- [
- 2.1566688432447227,
- 48.62968892500415
- ],
- [
- 2.5523096661210394,
- 49.07990389337538
- ]
- ]
- }
- }
- },
- "winningPlan" : {
- "stage" : "LIMIT",
- "limitAmount" : 100,
- "inputStage" : {
- "stage" : "FETCH",
- "filter" : {
- "loc" : {
- "$geoWithin" : {
- "$box" : [
- [
- 2.1566688432447227,
- 48.62968892500415
- ],
- [
- 2.5523096661210394,
- 49.07990389337538
- ]
- ]
- }
- }
- },
- "inputStage" : {
- "stage" : "IXSCAN",
- "keyPattern" : {
- "created_at" : -1
- },
- "indexName" : "created_at_-1",
- "isMultiKey" : false,
- "isUnique" : false,
- "isSparse" : false,
- "isPartial" : false,
- "indexVersion" : 1,
- "direction" : "forward",
- "indexBounds" : {
- "created_at" : [
- "[MaxKey, MinKey]"
- ]
- }
- }
- }
- },
- "rejectedPlans" : [
- {
- "stage" : "SORT",
- "sortPattern" : {
- "created_at" : -1
- },
- "limitAmount" : 100,
- "inputStage" : {
- "stage" : "SORT_KEY_GENERATOR",
- "inputStage" : {
- "stage" : "FETCH",
- "filter" : {
- "loc" : {
- "$geoWithin" : {
- "$box" : [
- [
- 2.1566688432447227,
- 48.62968892500415
- ],
- [
- 2.5523096661210394,
- 49.07990389337538
- ]
- ]
- }
- }
- },
- "inputStage" : {
- "stage" : "IXSCAN",
- "keyPattern" : {
- "loc" : "2d",
- "created_at" : -1
- },
- "indexName" : "loc_2d_created_at_-1",
- "isMultiKey" : false,
- "isUnique" : false,
- "isSparse" : false,
- "isPartial" : false,
- "indexVersion" : 1,
- "direction" : "forward",
- "indexBounds" : {
- "loc" : [
- "[BinData(128, C406C10000000000), BinData(128, C406C1FFFFFFFFFF)]",
- "[BinData(128, C406C30000000000), BinData(128, C406C3FFFFFFFFFF)]",
- "[BinData(128, C406C40000000000), BinData(128, C406C7FFFFFFFFFF)]",
- "[BinData(128, C406C90000000000), BinData(128, C406C9FFFFFFFFFF)]",
- "[BinData(128, C406CB0000000000), BinData(128, C406CBFFFFFFFFFF)]",
- "[BinData(128, C406CC0000000000), BinData(128, C406CFFFFFFFFFFF)]",
- "[BinData(128, C406D00000000000), BinData(128, C406D3FFFFFFFFFF)]",
- "[BinData(128, C406D40000000000), BinData(128, C406D7FFFFFFFFFF)]",
- "[BinData(128, C406D80000000000), BinData(128, C406DBFFFFFFFFFF)]",
- "[BinData(128, C406DC0000000000), BinData(128, C406DCFFFFFFFFFF)]",
- "[BinData(128, C406DE0000000000), BinData(128, C406DEFFFFFFFFFF)]",
- "[BinData(128, C406E10000000000), BinData(128, C406E1FFFFFFFFFF)]",
- "[BinData(128, C406E30000000000), BinData(128, C406E3FFFFFFFFFF)]",
- "[BinData(128, C406E40000000000), BinData(128, C406E7FFFFFFFFFF)]",
- "[BinData(128, C406F00000000000), BinData(128, C406F3FFFFFFFFFF)]",
- "[BinData(128, C406F40000000000), BinData(128, C406F7FFFFFFFFFF)]"
- ],
- "created_at" : [
- "[MaxKey, MinKey]"
- ]
- }
- }
- }
- }
- }
- ]
- },
- "serverInfo" : {
- "host" : "",
- "port" : ,
- "version" : "3.2.8",
- "gitVersion" : ""
- },
- "ok" : 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement