MapReduce 基础模型|学习笔记-阿里云开发者社区

开发者社区> 学堂小助手> 正文

MapReduce 基础模型|学习笔记

简介: 快速学习 MapReduce 基础模型
+关注继续查看

开发者学堂课程【Java 高级编程MapReduce 基础模型】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/20/detail/427


MapReduce 基础模型


内容简介:


1.MapRuduce 基础模型


MapRuduce 基础模型

在进行数据分析的处理之中有一个最重要的基础模型:MapReduce 模型,对于这个模型一共是分为两个部分:Map 处理部分,Reduce 分析部分,在进行数据分析之前必须要对数据进行合理的处理,而后才可以做统计分析操作。

 

范例:MapRuduce 基础模型

要分析用户的订单,首先存入订单数据:

购买的商品名称  private string name;

购买的商品价格  private double price;

购买的商品数量  private int amount;

public Order(String name,double price,int amount){

this.name = name;

this.price = price;

this.amount =amount;

}

为了分析问题,在代码中应该把所有的 get 方法都提供。

public int getAmount(){

return amount;

}

public String getName(){

return name;

}

public double getPrice(){

return price;

 }

如果想使用 Stream 进行分析处理,则一定要将全部要分析的数据保存在集合之中,如下

List<Order> all = new ArrayList<Order>();

all.add(new Order(“小强娃娃”,9.9,10));

all.add(new Order(“林弱娃娃”,2987.9,3));

all.add(new Order(“不强牌笔记本电脑”,8987.9,8));

all.add(new Order(“弱强茶杯”,2.9,800));

all.add(new Order(“阿强牌煎饼”,0.9,138));

1.png

分析购买商品之中带有“强”的信息数据,先对其进行过滤操作,对商品单价和数量进行处理,分析汇总

DoubleSummaryStatistics stat=         all.stream().filter((ele)->ele.getName().contains(“强”)).mapToDouble((orderObject.getPrice()*orderObject,getAmount()).summaryStatistics();

System.out.println(“购买数量” + stat.getCount());

System.out.println(“购买总价” + stat.getSum());

System.out.println(“平均花费” + stat.getAverage());

System.out.println(“最高花费” + stat.getMax());

System.out.println(“最低花费” + stat.getMin());

图片2.png

运行结果为:

购买数量: 4

购买总价: 74446.4

平均花费: 18611.6

最高花费: 71903.2

最低花费: 99.0

以上这就是MapReduce的基础操作流程

这些分析操作只是 JDK 本身提供的支持,而实际当中,由于面对的是大数据环境,这种操作又将所有数据都保存在内存里面,由于数据非常大故而是不能实现的,所以这只是提出的一个基础模型而已。

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Python零基础学习笔记(四)——数据类型
python数据类型:Number(数字):包括整数/浮点数(小数)/复数String(字符串)Boolean(布尔值)None(空值)list(列表)tuple(元组)dict(字典)set(集合)
1236 0
通过搭建wordpress博客来学习云服务器的详细使用方法
云服务器越来越普及,很多企业及个人都纷纷上云,从传统的虚拟主机或者托管服务器上把网站和应用迁移到腾讯云、阿里云、百度云等这些云服务器上。 云服务器相比传统服务器的优势有很多,比如安全性、性价比、稳定性、可用性、便捷性等等各方面,大家可以百度自己了解,我就不在这里多说了。
1822 0
Python零基础学习笔记(六)—— 变量和常量
变量: 程序可操作的存储空间的名称 程序运行期间可改变的数据 每个变量都有特定的类型 作用:将不同类型的数据存储到内存 定义变量:变量名 = 初始值(为了确定变量的类型,python里面可以直接识别数据类型 例如:age = 10) 数据的存储:变量名 = 数据值 特别注意:变...
1388 0
Python零基础学习笔记(三)——注释、输入和输出
单行注释# """多行注释多行注释......""" '''多行注释多行注释......'''print 打印到屏幕上一些信息,内容就是“”之间的print("这是第一个关于注释的文件") 2 .打印多个字符转,用逗号隔开,但遇到逗号会输出一个空格print("我","是","谁") 可以运算pr...
1474 0
Python零基础学习笔记(十六)—— if-elif-else语句
''' if-elif-else语句 格式: if 表达式1: 语句1 elif 表达式2: 语句2 elif 表达式3: 语句3 ...... elif 表达式4: 语句4 else: #可有可无 语句n 逻辑:当程序执行到if-elif-el.
1322 0
Python零基础学习笔记(十七)—— for 语句
''' for 语句,是一种循环语句 格式: for 变量名 in 集合: 语句 逻辑:按顺序取“集合”中的每个元素赋值给“变量”,再去执行语句 如此循环往复,直到取玩“集合”中的元素为止 ''' for i in [1,2,3,4,5]: print(i) '...
1196 0
1394
文章
0
问答
来源圈子
更多
技术图谱:由专家组参与技术图谱的绘制与编写,知识与实践的结合让开发者们掌握学习路线与逻辑,快速提升技能 电子书:电子书由阿里内外专家打造,供开发者们下载学习,更与课程相结合,使用户更易理解掌握课程内容 训练营:学习训练营 深入浅出,专家授课,带领开发者们快速上云 精品课程:汇集知识碎片,解决技术难题,体系化学习场景,深入浅出,易于理解 技能自测:提供免费测试,摸底自查 体验实验室:学完即练,云资源免费使用
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载