private void AccountInfo()
{
ls.Clear();
DateTime dt = DateTime.Now.Date;
IMongoQuery query = Query<mtime_time>.GTE(p => p.showdate, dt);
MapReduceOutput output = new MapReduceOutput("mtime_time_tem"); MongoCollection comcol = MongoFactory.GetMongoCollction("entBoxOffice", "mtime_time_tem"); string mapjs = @"function () {
var result = {};
//总场次
var count = 0;
//有人场次
var haspersoncount = 0;
//入库场次
var hasin = 0;
//入库总人次
var inpersoncount = 0;
//总人次
var personcount = 0;
count = 1;
if (this.sold > 0) {
haspersoncount = 1;
personcount = this.sold;
if (this.Sqlsta == 1) {
inpersoncount = this.sold;
}
}
if (this.Sqlsta == 1) {
hasin = 1;
}
result.count = count;
result.haspersoncount = haspersoncount;
result.hasin = hasin;
result.inpersoncount = inpersoncount;
result.personcount = personcount;
emit(this.movieid, result); }";
string reducejs = @"function (key, values) {
var result = {};
result.count = 0;
result.haspersoncount =0;
result.hasin = 0;
result.inpersoncount = 0;
result.personcount = 0;
values.forEach(function (value) {
result.count += value.count;
result.haspersoncount += value.haspersoncount;
result.hasin += value.hasin;
result.inpersoncount += value.inpersoncount;
result.personcount += value.personcount;
});
return result;
}"; try
{ var options = new MapReduceOptionsBuilder().SetQuery(query).SetOutput(output);
var map = new BsonJavaScript(mapjs);
var reduce = new BsonJavaScript(reducejs);
var obj = mtime_timeDAL.collection.MapReduce(map,
reduce, options
);
List<BsonDocument> doc = obj.GetResults().ToList(); //List<moveibase> //jinyi_timeDAL.collectionmovie GetDocAddLs(doc, "时光网");
comcol.Drop();
map = new BsonJavaScript(mapjs.Replace("movieid", "filmId")); obj = wd_timeDAL.collection.MapReduce(map,
reduce, options
);
doc = obj.GetResults().ToList(); }
catch (Exception ex)
{ throw;
} }

mongodb Map/reduce测试代码的更多相关文章

  1. MongoDB Map Reduce(转载)

    MongoDB Map Reduce Map-Reduce是一种计算模型,简单的说就是将大批量的工作(数据)分解(MAP)执行,然后再将结果合并成最终结果(REDUCE). MongoDB提供的Map ...

  2. MongoDB之Java测试代码(DAO层)

    MongoInit.java是数据库初始化及连接类 MongoUtils.java是对mongodb的各种操作方法 MongoInit.java package com.wlwcloud.datate ...

  3. 记一次MongoDB Map&Reduce入门操作

    需求说明 用Map&Reduce计算几个班级中,每个班级10岁和20岁之间学生的数量: 需求分析 学生表的字段: db.students.insert({classid:1, age:14, ...

  4. MongoDB Map Reduce

    介绍 Map-Reduce是一种计算模型,简单的说就是将大批量的工作分解(MAP)执行,然后再将结果合并成最终结果(REDUCE). MongoDB提供的Map-Reduce非常灵活,对于大规模数据分 ...

  5. springmvc+mongodb+maven 项目测试代码

    你看我有一篇文章配置,或许还会有.mongodb性能测试结果.一个"快"字 源代码包,请留下邮箱 代码结构图 watermark/2/text/aHR0cDovL2Jsb2cuY3 ...

  6. python--函数式编程 (高阶函数(map , reduce ,filter,sorted),匿名函数(lambda))

    1.1函数式编程 面向过程编程:我们通过把大段代码拆成函数,通过一层一层的函数,可以把复杂的任务分解成简单的任务,这种一步一步的分解可以称之为面向过程的程序设计.函数就是面向过程的程序设计的基本单元. ...

  7. map reduce

    作者:Coldwings链接:https://www.zhihu.com/question/29936822/answer/48586327来源:知乎著作权归作者所有,转载请联系作者获得授权. 简单的 ...

  8. mapreduce: 揭秘InputFormat--掌控Map Reduce任务执行的利器

    随着越来越多的公司采用Hadoop,它所处理的问题类型也变得愈发多元化.随着Hadoop适用场景数量的不断膨胀,控制好怎样执行以及何处执行map任务显得至关重要.实现这种控制的方法之一就是自定义Inp ...

  9. 基于python的《Hadoop权威指南》一书中气象数据下载和map reduce化数据处理及其可视化

    文档内容: 1:下载<hadoop权威指南>中的气象数据 2:对下载的气象数据归档整理并读取数据 3:对气象数据进行map reduce进行处理 关键词:<Hadoop权威指南> ...

随机推荐

  1. miniconda安装jupyter

    1.安装jupyter 由于miniconda是anaconda的简化版,只有一个prompt: 安装jupyter,只需要打开prompt的dos窗口,输入命令pip install jupyter ...

  2. Java多线程求和

    package test; import java.util.concurrent.*; import java.util.concurrent.locks.Lock; import java.uti ...

  3. springBoot 使用redis 和 StringRedisTemplate 常用操作

    spring boot 使用 redis : 1,pom 引入 redis,貌似springboot 1.5以上的版本,引入redis必须加 <version></version&g ...

  4. 剑指offer【12】- 二进制中1的个数

    输入一个整数,输出该数二进制表示中1的个数.其中负数用补码表示. public class Solution { public int NumberOf1(int n) { String str = ...

  5. Python笔记_第四篇_高阶编程_GUI编程之Tkinter_5.鼠标事件

    1. 鼠标点击事件: 图示: 实例: import tkinter from tkinter import ttk # 创建主窗口__编程头部 win = tkinter.Tk() # 设置标题 wi ...

  6. python文件读写 文件修改

    #设置一个变量f为文件对象,并打开文件#写文件#f = open('user.txt','w',encoding='utf-8') #f是一个文件对象f=open(r'c:\Users\PL\Desk ...

  7. maven坐标 加速下载

    <repositories> <repository> <id>aliyun</id> <name>aliyun</name> ...

  8. msgfmt - 翻译汉化

    说明 目前大部分自由软件实现国际化使用的是gettext. 国际化就是让程序可以使用多国语言来显示程序里的字符串. 程序里一般都有很多字符串,菜单名也好,错误信息也好,都是字符串.假设字符串为stri ...

  9. Android 自定义dialog类

    首先定制style样式 styles.xml 加入自定义样式 <style name="CustomLoadingDialog"> <item name=&quo ...

  10. Matlab高级教程_第三篇:Matlab转码C/C++方式(混编)_第一部分

    0. 其实Matlab的转码混编大多数就是为了现成的算法函数不用再写了,2就是为了方便提高代码运行速度用C语言去运行. 1. MEX文件: Mex文件是一种可在matlab环境中嗲用C语言(或fort ...