文档章节

对云计算和大数据的理解

没有明天的码仔
 没有明天的码仔
发布于 2017/07/04 13:23
字数 1988
阅读 0
收藏 0
点赞 0
评论 0

作者:麻仓叶
下面是自己的理解,希望能通俗的表达出来:
要了解Hadoop和spark,以及它们所依托的云计算,就要先了解这些分布式计算(distributed computing)软件出现的历史背景。
就拿一个too young too simple版的网络聊天软件来举个栗子吧:
比如说有一款火爆的聊天软件叫OOXX,拥有用户A和B。OOXX软件公司有一台自己的服务器。用户A向用户B发一句“约吗”,整个流程大概这样:

1. A的电脑向OOXX服务器发送信息,当然包含了信息的内容(约吗),以及目的地(B用户的客户端)

2. OOXX的服务器收到了“约吗”这个信息,软件公司为了便于在程序出问题的时候探查问题,以及通过收集用户的行为和信息来帮助自己提高OOXX的约炮成功率,会在服务器上面记录当天服务器收到的每一条信息,以及相关的信息(发送者A,目的地B,A的IP地址,B的IP地址,A的性别,B的性别 : ), 这些日志存在服务器上面。这样一来,每天服务器就会积累一堆当天的用户信息,猥琐的管理员可以每天用程序扫描一遍所有的日志,比如记录一下约炮成功的聊天对话的总数,统计一下当天的成功率,如果成功率很高,就可以作为OOXX公司的宣传口号了有没有!

3. OOXX的服务器收到信息,记录下来之后,发现信息是要发给B,于是把信息发到B那里去。

4. B收到“约吗”的信息,回复“不约,叔叔我们不约”给A,然后这条信息又重复1,2这两步,发送给A,同样会被服务器记录下来。

5. A收到信息,发现钓鱼失败,马上拉黑B,转向下个目标。

在互联网刚起步的时候,OOXX的服务器可能每天只用存一存文本聊天信息就好了,后来随着互联网技术的发展,支持发图片了,支持发视频了,想约的用户也越来越多了。在这样的环境下,A会先问问B:“看过优衣库吗”,然后把视频发过去,或者发点图片先挑逗挑逗(此处应有小黄图),这样一来服务器就hold不住了,用户数量暴涨,一两台计算机也是hold不住那么多用户的请求和日志存储了啊,总得想点办法,顶住这一波用户增长,然后做点PPT去忽悠投资人的钱。

像OOXX这样的公司,可能买不起昂贵的企业级服务器(比如IBM之类,会提供整套的data center解决方案,对小公司来说可能贵得一逼),琢磨琢磨就躲买点便宜的服务器(故障率比较高,硬盘容易坏),10台不行我买20台。硬件的故障率高怎么办?买不起好的硬件,我想点办法把软件做好一点,硬盘容易坏就把服务器记录的日志同时写到两三个硬盘里(反正便宜),一个坏了还有另外两个能凑合。这样的用来管理由廉价服务器组成的存储系统故障率高的服务器集群的软件系统,就是HADOOP最开始的动机:GOOGLE的分布式文件系统(GFS)。

现在服务器这么多,日志分散在每个服务器上面,如果我好奇A今天又约了几个妹子,我得把几十台服务器的日志全部扫一遍才能知道,反正我只关心A到底约了几个不同的妹子,我用相同的程序扫描每台机器的日志,在里面找与A相关的聊天记录,把A发送的信息的收件人全部提出来,最后拿到一个地方汇总过滤一下不就好了嘛。每台服务器上面的日志文件太大了(大家小黄图发来发去)一次处理不完怎么办?反正我只关心A的相关记录,把大文件切割成小文件就好了嘛。这样的日志处理是把程序分布在每台电脑上运行,每台电脑上的处理程序都做相同的工作——找与A相关的聊天信息,然后把在所有服务器日志里面找到的信息集中发到一个服务器上,过滤汇总一下,就能知道A到底约了几炮啦。用来管理和执行这些分布式程序的软件系统,需要合理调度其控制的所有计算资源(比如其中一台电脑扫描完没事干了,不能让它闲下来,可以把别的电脑还没处理完的小文件发给它,让闲置的电脑来处理),最后得出结果。这样的分布式资源调度+分布式运算 的软件,就是HADOOP的另一个重要板块map-reduce,用来处理海量的文件,一开始也是GOOGLE搞出来的。

 

好了,这就是HADOOP一开始最主要的两个模块了,在此基础上衍生出了一些别的HADOOP模块(比如PIG),也是基于这两个基本的模块的。所以HADOOP这样的分布式软件系统,就是为了更好的管理和处理当前互联网产生的海量的数据文件而出现的。SPARK也是基于HADOOP,可以理解为性能更优异的HADOOP。

 

有了HADOOP,软件层面的问题解决了,像AMAZON这样的大公司,自然会建造大量的服务器集群,以便处理每天的海量信息。后来这些大公司发现,集群建得太多啦,每天成百上千台计算机闲置在那,烧电不说,还得雇人去维护,太尼玛烧钱啦!于是有人琢磨着,闲着也是闲着,不如把这些闲置的计算资源租给需要的人,然后按使用时长收费,这就是云计算啦,妥妥哒!

于是乎,AMAZON搞出了他们的云计算服务,把自己闲置的计算资源出租给其他人来使用。有的客户什么都不懂,你把计算资源直接给他,他毛也不会用,于是有的云计算提供商就直接把一些软件运行在自己的集群上,这些客户直接上网使用这些软件就好啦,这就是SaaS(Software as a Service)。Salesforce的企业级软件就是这样一种服务。

有的用户不想用云计算服务商提供的软件,想自己打造自己的云服务软件,于是云计算服务商用一些技术直接整个服务器暴露给用户,用户可以远程自定义这个服务器(调整各种机器配置文件,运行各种程序,完全就和自己的电脑一样),这就是IaaS(Infrastructure as a Service)了,给用户提供了更多的把玩空间。AMAZON的EC2就是这样一个服务

还有些用户,又想运行自己的程序,又觉得配置服务器太麻烦了,于是云计算服务商就只提供一个平台供用户去上传和部署自己的软件,外加一些适当的可配置内容,但是整个底层的服务器配置还是由云计算服务商来做,这样用户省心。这就是PaaS(Platform as a Service),GOOGLE最开始的云服务(google app engine)就是这样一种模式。

大概就这样。

本文转载自:https://www.zhihu.com/question/32326748/answer/57341870

共有 人打赏支持
没有明天的码仔
粉丝 0
博文 9
码字总数 6003
作品 0
武汉
程序员
大数据和云计算究竟有什么关系?

周围总是充斥着大数据和云计算这两个词,然而,实际上,很多人对于云计算和大数据的关系却总是容易混淆,所以总是将“云计算”和“大数据”放在一起讨论, 实则不然。   简单来说:云计算是...

kl28978113
2017/08/23
0
0
“云计算的前世今生·从阿里看云计算”内蒙古师范大学刘晨旭博士专题报告会顺利召开

6月29日下午4点,内蒙古师范大学·阿里云大数据学院邀请阿里云产品团队专家刘晨旭博士在学术报告厅做题为《云计算的前世今生——从阿里看云计算》的专题报告分享,此次活动吸引了500多名师生...

昕华
07/02
0
0
大数据发展火爆,云计算平台主打安全至上

随着互联网、云计算、移动通讯技术发展,数据越来越成为人们不可缺少的重要资产,对人们生活起着重要作用。 企业稳抓大数据是关键 作为信息时代下的产物,大数据,则是企业和互联网用户之间产...

数据大王帝
01/29
0
0
备战加薪季(阿里云大学互联网学院开学钜惠)

互联网学院简介 阿里云互联网学院是阿里云即将推出的学院制教学,将会充分利用互联网的特点与优势,贴近真实的教学制度,为用户提供严谨、实用的云计算、大数据、云安全与人工智能四大专业的...

mcy0425
03/07
0
0
云时代的下半场,“深耕”模式的意义和远方

很多人都说云计算已经进入了下半场,这是一个从市场角度切入的看法。但云作为一种新的生产力,作为通往数字化转型的工具,决定云时代的并不是技术,也不是市场走势,而是企业客户的需求本身。...

玄学酱
03/05
0
0
了解大数据开发及和大数据相关的技术

在现如今,随着互联网技术飞速的发展,目前有不少朋友询问关于大数据方面的问题,比如什么是大数据开发啊,和大数据相关的技术是什么呢等问题,我们今天就浅谈一下大数据开发及和大数据相关的...

卢家大少
06/10
0
0
云从科技联合华南理工、华威大学研发跨媒体大数据平台

雷锋网(公众号:雷锋网) AI 科技评论消息,人工智能国家队云从科技国际科技合作项目正式立项,将与英国华威大学(The University of Warwick)与华南理工大学合作研发跨媒体大数据智能计算关...

奕欣
05/21
0
0
SinoBBD北美子公司落地,打通中国通向世界的“大数据之桥”

1月11日,北京供销大数据集团北美子公司开业仪式在美国加州圣克拉拉市中关村硅谷创新中心举行,北京市供销合作总社党委书记、理事长高守良,中华人民共和国驻旧金山总领事馆科技领事蒋玉宏、...

玄学酱
04/20
0
0
“2016大数据技术与应用人才培养研讨会” 在泸州成功召开

由全国高校大数据教育联盟、四川省计算机学会主办,北京大学信息化与信息管理研究中心-泸州电子商务大数据开放实验室承办,清华大学出版社、人民邮电出版社、电子工业出版社协办的“大数据技...

玄学酱
04/24
0
0
2016年人工智能、云计算、大数据版块发展大事记

大数据丰富着处理燃料,云计算提供者云端处理平台,而人工智能恰是让这些数据在平台上“跑”起来的引擎。“不做人工智能的云平台不是好的大数据”,从巨头的强势布局到人们对人工智能出现的恐...

玄学酱
05/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

TextView设置行间距、字体间距

一、设置行间距 1、设置行间距:android:lineSpacingExtra,取值范围:正数、负数和0,正数表示增加相应的大小,负数表示减少相应的大小,0表示无变化 2、设置行间距的倍数:android:lineSpa...

王先森oO
6分钟前
0
0
适配器模式

适配器模式(Adapter):将一个类的接口转换成客户端希望的另外一个接口,适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 适配器用于连接两种不同种类的对象,使其毫...

阿元
7分钟前
0
0
CoreText进阶(四)-文字行数限制和显示更多

CoreText进阶(四)-文字行数限制和显示更多 用例和效果 Demo:CoreTextDemo 效果图: 默认的截断标识和自定义的截断标识符效果图  点击查看更多之后的效果图  为了可以设置显示的行数以...

aron1992
9分钟前
0
0
nginx的五种负载算法

nginx的五种负载算法 2017年04月26日 15:01:11 阅读数:1297 1.round robin(默认) 轮询方式,依次将请求分配到各个后台服务器中,默认的负载均衡方式。 适用于后台机器性能一致的情况。 挂...

linjin200
11分钟前
0
0
Android RecyclerView快速上手

RecyclerView mainMenu = findViewById(R.id.fragmentMain); mainMenu.setLayoutManager(new GridLayoutManager(getActivity(),4)); mainMenu.setAdapter(new MainAdapter......

燕归南
13分钟前
0
0
RabbitMQ实战:理解消息通信 

应用RabbitMQ的5种队列 一、简单队列 P:消息的生产者 C:消息的消费者 红色:队列 简单队列的生产者和消费者关系一对一 但有时我们的需求,需要一个生产者,对应多个消费者,那就可以采用第...

spinachgit
14分钟前
0
0
Linux的使用技巧:到底要不要会用?[图]

Linux的使用技巧:到底要不要会用?[图] 最近有个项目接近了尾声,要进入到调试测试阶段。这是一个使用Springboot框架为后台程序,mpvue构建的小程序项目。服务器我最终仍旧选择了Linux操作系...

原创小博客
15分钟前
0
0
记elasticdump 备份数据导出导入

版本: elasticsearch 5.5.2 elasticdump 2.2 系统 CentOS7.3 因项目需求 从生产导出一份索引到测试 帮助文档 https://github.com/taskrabbit/elasticsearch-dump?utm_source=dbweekly&utm_m......

雁南飞丶
16分钟前
0
0
saltstack配置目录管理

1.服务端配置 -接着编辑之前的 top.sls 文件 #vim /srv/salt/top.sls //修改为如下 base: 'slaver.test.com': - filedir -新建 filedir.sls 文件 # vim /srv/salt/filedir.sls file-dir: fi......

硅谷课堂
17分钟前
0
0
python日期时间

日期和时间 Python内建的datetime模块提供了datetime、date和time类型。datetime类型结合了date和time,是最常使用的: In [102]: from datetime import datetime, date, timeIn [103]:...

火力全開
24分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部