Добавил:
margarita_rusheva
rushevamar@mail.ru
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:лаба 8 / запросы mongo
.txt mongod: launch
mongo:
use codb
mongo:
db.log.find()
requests:
db.log.find({},{URL:1,_id:0}).sort({URL:1})
db.log.find({URL: "www.testurl2.com"},{IP:1,_id:0}).sort({IP:1})
db.log.find({timeStemp: "20200101"},{URL:1,_id:0}).sort({URL:1})
db.log.find({IP: "192.169.0.2"},{URL:1,_id:0}).sort({URL:1})
mapReduce:
var map1 = function() { emit(this.URL, this.timeSpent);};
var reduce1 = function(keyURL, timeValues) { return Array.sum(timeValues);};
db.log.mapReduce(map1,reduce1,{out:"map_reduce1"})
db.map_reduce1.find().sort({_id: 1})
var map2 = function() { emit(this.URL, 1); };
var reduce2 = function(keyURL, IPValue) { return Array.sum(IPValue);};
db.log.mapReduce(map2,reduce2,{out:"map_reduce2"})
db.map_reduce2.find().sort({_id: 1})
var map3 = function() { emit(this.URL, 1); if ( this.timeStamp>= this.timeStamp && this.timeStamp <= this.timeStamp) emit(this.timeStamp, 1); };
var reduce3 = function(keyURL, IPValue) { return Array.sum(IPValue);};
db.log.mapReduce(map3,reduce3,{out:"map_reduce3"})
db.map_reduce3.find().sort({_id: -1})
var map4 = function() { emit({ip: this.IP, url: this.URL}, {totalCount: 1, totalDuration: this.timeSpent}); };
var reduce4 = function(keyURL, IPValue) { var totalCount = 0; var totalDuration = 0; for (var i in IPValue) { totalCount += IPValue[i].totalCount; totalDuration += IPValue[i].totalDuration;} return {totalCount: totalCount, totalDuration: totalDuration};};
db.log.mapReduce(map4,reduce4,{out:"map_reduce4"})
db.map_reduce4.find().sort({url: -1, totalCount: -1, totalDuration: -1})
mongo:
use codb
mongo:
db.log.find()
requests:
db.log.find({},{URL:1,_id:0}).sort({URL:1})
db.log.find({URL: "www.testurl2.com"},{IP:1,_id:0}).sort({IP:1})
db.log.find({timeStemp: "20200101"},{URL:1,_id:0}).sort({URL:1})
db.log.find({IP: "192.169.0.2"},{URL:1,_id:0}).sort({URL:1})
mapReduce:
var map1 = function() { emit(this.URL, this.timeSpent);};
var reduce1 = function(keyURL, timeValues) { return Array.sum(timeValues);};
db.log.mapReduce(map1,reduce1,{out:"map_reduce1"})
db.map_reduce1.find().sort({_id: 1})
var map2 = function() { emit(this.URL, 1); };
var reduce2 = function(keyURL, IPValue) { return Array.sum(IPValue);};
db.log.mapReduce(map2,reduce2,{out:"map_reduce2"})
db.map_reduce2.find().sort({_id: 1})
var map3 = function() { emit(this.URL, 1); if ( this.timeStamp>= this.timeStamp && this.timeStamp <= this.timeStamp) emit(this.timeStamp, 1); };
var reduce3 = function(keyURL, IPValue) { return Array.sum(IPValue);};
db.log.mapReduce(map3,reduce3,{out:"map_reduce3"})
db.map_reduce3.find().sort({_id: -1})
var map4 = function() { emit({ip: this.IP, url: this.URL}, {totalCount: 1, totalDuration: this.timeSpent}); };
var reduce4 = function(keyURL, IPValue) { var totalCount = 0; var totalDuration = 0; for (var i in IPValue) { totalCount += IPValue[i].totalCount; totalDuration += IPValue[i].totalDuration;} return {totalCount: totalCount, totalDuration: totalDuration};};
db.log.mapReduce(map4,reduce4,{out:"map_reduce4"})
db.map_reduce4.find().sort({url: -1, totalCount: -1, totalDuration: -1})