mongo聚合和mapreduce例子

2022-09-02 06:45:08 字數 1453 閱讀 8981

聚合語句-比較集合內兩欄位大小

db.test.aggregate([

,"logtype":"off"}},

,mac:1}},

, 1, 0]}}},}])

聚合條數語句

db.tablename.aggregate([

,"logtype

":"off

"}},

,mac:1

}},, 1, 0

]}}},

},}}

])

簡單聚合語句

db.test.aggregate( [

, buildingid: 49, intftype:"

uplink

", utccode:8

} },

, rxtxbytetotal: } }

] );

簡單的mapreduce

var map =function(),  );

}var reduce =function(key, values))

return ;

}db.test.mapreduce(map,reduce,)

上述為shell中直接執行的指令碼。

使用spring-data-mongodb的版本:

string incollectionname =  "

test";

string mapfunction = "

function(),

" + "

);}"

;string reducefunction = "

function(key, values));

" + "

return ;

" + "}"

;list

result = new arraylist<>();

mongo.mapreduce(incollectionname, mapfunction, reducefunction, test.

class

).foreach(

data->result.add(data) );

result.foreach(data->system.out.println(json.tojsonstring(data)));

帶project的聚合例子

db.test.aggregate( [

},, rxtxbytes:

, rxbytes:

, txbytes:

, rxpkts:

, txpkts:

} },

}] );

mongo聚合指令

為了便於做複雜的聚合查詢,mongo提供了aggregate指令,基於管道運算進行對資料的處理,常見的 sort,project,group,match就不在贅述了,下面整理一些不常見的但是有時候很有用的指令 unwind 我們插入mongo資料的時候,肯定會遇到插入陣列或者列表的場景,但是對於列表...

mongo聚合操作符 unwind

1.按條件獲取所有停機原因及對應的停機時長資料 2.按條件獲取指定停機型別下的停機原因及停機時長 此處用來過濾指定停機分類或停機型別 path你要打散的字段 includearrayindex,可選的。乙個新字段的名稱,用於儲存元素的陣列索引。名稱不能以美元符號開頭。preservenullande...

Hadoop2的Yarn和MapReduce2相關

1 什麼是yarn?2 yarn 和mapreduce相比,它有什麼特殊作用 yarn是乙個分布式的資源管理系統,用以提高分布式的集群環境下的資源利用率,這些資源包括記憶體 io 網路 磁碟等。其產生的原因是為了解決原mapreduce框架的不足。最初mapreduce的committer們還可以週...