• (点击上方公众号,可快速关注)作者: 刘超www.cnblogs.com/popsuper1982/p/8505203.html原标题:不是技术也能看懂云计算,大数据,人...
        

    (点击上方公众号,可快速关注)


    作者: 刘超

    www.cnblogs.com/popsuper1982/p/8505203.html


    原标题:不是技术也能看懂云计算,大数据,人工智能


    我今天要讲这三个话题,一个是云计算,一个大数据,一个人工智能,我为什么要讲这三个东西呢?因为这三个东西现在非常非常的火,它们之间好像互相有关系,一般谈云计算的时候也会提到大数据,谈人工智能的时候也会提大数据,谈人工智能的时候也会提云计算。所以说感觉他们又相辅相成不可分割,如果是非技术的人员来讲可能比较难理解说这三个之间的相互关系,所以有必要解释一下。


    一、云计算最初是实现资源管理的灵活性


    我们首先来说云计算,云计算最初的目标是对资源的管理,管理的主要是计算资源,网络资源,存储资源三个方面。

    640?wx_fmt=png

    1.1 管数据中心就像配电脑

    什么叫计算,网络,存储资源呢?就说你要买台笔记本电脑吧,你是不是要关心这台电脑什么样的CPU啊?多大的内存啊?这两个我们称为计算资源。

    这台电脑要能上网吧,需要有个网口可以插网线,或者有无线网卡可以连接我们家的路由器,您家也需要到运营商比如联通,移动,电信开通一个网络,比如100M的带宽,然后会有师傅弄一根网线到您家来,师傅可能会帮您将您的路由器和他们公司的网络连接配置好,这样您家的所有的电脑,手机,平板就都可以通过您的路由器上网了。这就是网络。

    您可能还会问硬盘多大啊?原来硬盘都很小,10G之类的,后来500G,1T,2T的硬盘也不新鲜了。(1T是1024G),这就是存储。

    对于一台电脑是这个样子的,对于一个数据中心也是同样的。想象你有一个非常非常大的机房,里面堆了很多的服务器,这些服务器也是有CPU,内存,硬盘的,也是通过类似路由器的设备上网的。这个时候的一个问题就是,运营数据中心的人是怎么把这些设备统一的管理起来的呢?

    1.2 灵活就是想啥时要都有,想要多少都行

    管理的目标就是要达到两个方面的灵活性。哪两个方面呢?比如有个人需要一台很小很小的电脑,只有一个CPU,1G内存,10G的硬盘,一兆的带宽,你能给他吗?像这种这么小规格的电脑,现在随便一个笔记本电脑都比这个配置强了,家里随便拉一个宽带都要100M。然而如果去一个云计算的平台上,他要想要这个资源的时候,只要一点就有了。

    所以说它就能达到两个方面灵活性。

    • 第一个方面就是想什么时候要就什么时候要,比如需要的时候一点就出来了,这个叫做时间灵活性。

    • 第二个方面就是想要多少呢就有多少,比如需要一个很小很小的电脑,可以满足,比如需要一个特别大的空间,以云盘为例,似乎云盘给每个人分配的空间动不动就就很大很大,随时上传随时有空间,永远用不完,这个叫做空间灵活性。

    空间灵活性和时间灵活性,也即我们常说的云计算的弹性。

    为了解决这个弹性的问题,经历了漫长时间的发展。

    1.3 物理设备不灵活

    首先第一个阶段就是物理机,或者说物理设备时期。这个时期相当于客户需要一台电脑,我们就买一台放在数据中心里。物理设备当然是越来越牛,例如服务器,内存动不动就是百G内存,例如网络设备,一个端口的带宽就能有几十G甚至上百G,例如存储,在数据中心至少是PB级别的(一个P是1024个T,一个T是1024个G)。

    然而物理设备不能做到很好的灵活性。首先它不能够达到想什么时候要就什么时候要、比如买台服务器,哪怕买个电脑,都有采购的时间。突然用户告诉某个云厂商,说想要开台电脑,如果使用物理服务器,当时去采购啊就很难,如果说供应商啊关系一般,可能采购一个月,供应商关系好的话也需要一个星期。用户等了一个星期后,这时候电脑才到位,用户还要登录上去开始慢慢部署自己的应用,时间灵活性非常差。第二是空间灵活性也不行,例如上述的用户,要一个很小很小的电脑,现在哪还有这么小型号的电脑啊。不能为了满足用户只要一个G的内存是80G硬盘的,就去买一个这么小的机器。但是如果买一个大的呢,因为电脑大,就向用户多收钱,用户说他只用这么小的一点,如果让用户多付钱就很冤。

    1.4 虚拟化灵活多了

    有人就想办法了。第一个办法就是虚拟化。用户不是只要一个很小的电脑么?数据中心的物理设备都很强大,我可以从物理的CPU,内存,硬盘中虚拟出一小块来给客户,同时也可以虚拟出一小块来给其他客户,每个客户都只能看到自己虚的那一小块,其实每个客户用的是整个大的设备上其中的一小块。虚拟化的技术能使得不同的客户的电脑看起来是隔离的,我看着好像这块盘就是我的,你看这呢这块盘就是你的,实际情况可能我这个10G和您这个10G是落在同样一个很大很大的这个存储上的。

    而且如果事先物理设备都准备好,虚拟化软件虚拟出一个电脑是非常快的,基本上几分钟就能解决。所以在任何一个云上要创建一台电脑,一点几分钟就出来了,就是这个道理。

    这个空间灵活性和时间灵活性就基本解决了。

    1.5 虚拟世界的赚钱与情怀

    在虚拟化阶段,最牛的公司是Vmware,是实现虚拟化技术比较早的一家公司,可以实现计算,网络,存储的虚拟化,这家公司很牛,性能也做得非常好,然后虚拟化软件卖的也非常好,赚了好多的钱,后来让EMC(世界五百强,存储厂商第一品牌)给收购了。

    但是这个世界上还是有很多有情怀的人的,尤其是程序员里面,有情怀的人喜欢做一件什么事情呢?开源。这个世界上很多软件都是有闭源就有开源,源就是源代码。就是说某个软件做的好,所有人都爱用,这个软件的代码呢,我封闭起来只有我公司知道,其他人不知道,如果其他人想用这个软件,就要付我钱,这就叫闭源。但是世界上总有一些大牛看不惯钱都让一家赚了去。大牛们觉得,这个技术你会我也会,你能开发出来,我也能,我开发出来就是不收钱,把代码拿出来分享给大家,全世界谁用都可以,所有的人都可以享受到好处,这个叫做开源。

    比如最近蒂姆·伯纳斯·李就是个非常有情怀的人,2017年,他因“发明万维网、第一个浏览器和使万维网得以扩展的基本协议和算法”而获得2016年度的图灵奖。图灵奖就是计算机界的诺贝尔奖。然而他最令人敬佩的是,他将万维网,也就是我们常见的www的技术无偿贡献给全世界免费使用。我们现在在网上的所有行为都应该感谢他的功劳,如果他将这个技术拿来收钱,应该和比尔盖茨差不多有钱。

    例如在闭源的世界里有windows,大家用windows都得给微软付钱,开源的世界里面就出现了Linux。比尔盖茨靠windows,Office这些闭源的软件赚了很多钱,称为世界首富,就有大牛开发了另外一种操作系统Linux。很多人可能没有听说过Linux,很多后台的服务器上跑的程序都是Linux上的,比如大家享受双十一,支撑双十一抢购的系统,无论是淘宝,京东,考拉,都是跑在Linux上的。

    再如有apple就有安卓。apple市值很高,但是苹果系统的代码我们是看不到的。于是就有大牛写了安卓手机操作系统。所以大家可以看到几乎所有的其他手机厂商,里面都装安卓系统,因为苹果系统不开源,而安卓系统大家都可以用。

    在虚拟化软件也一样,有了Vmware,这个软件非常非常的贵。那就有大牛写了两个开源的虚拟化软件,一个叫做Xen,一个叫做KVM,如果不做技术的,可以不用管这两个名字,但是后面还是会提到。

    1.6 虚拟化的半自动和云计算的全自动

    虚拟化软件似乎解决了灵活性问题,其实不全对。因为虚拟化软件一般创建一台虚拟的电脑,是需要人工指定这台虚拟电脑放在哪台物理机上的,可能还需要比较复杂的人工配置,所以使用Vmware的虚拟化软件,需要考一个很牛的证书,能拿到这个证书的人,薪资是相当的高,也可见复杂程度。所以仅仅凭虚拟化软件所能管理的物理机的集群规模都不是特别的大,一般在十几台,几十台,最多百台这么一个规模。这一方面会影响时间灵活性,虽然虚拟出一台电脑的时间很短,但是随着集群规模的扩大,人工配置的过程越来越复杂,越来越耗时。另一方面也影响空间灵活性,当用户数量多的时候,这点集群规模,还远达不到想要多少要多少的程度,很可能这点资源很快就用完了,还得去采购。所以随着集群的规模越来越大,基本都是千台起步,动辄上万台,甚至几十上百万台,如果去查一下BAT,包括网易,包括谷歌,亚马逊,服务器数目都大的吓人。这么多机器要靠人去选一个位置放这台虚拟化的电脑并做相应的配置,几乎是不可能的事情,还是需要机器去做这个事情。

    人们发明了各种各样的算法来做这个事情,算法的名字叫做调度(Scheduler)。通俗一点的说,就是有一个调度中心,几千台机器都在一个池子里面,无论用户需要多少CPU,内存,硬盘的虚拟电脑,调度中心会自动在大池子里面找一个能够满足用户需求的地方,把虚拟电脑启动起来做好配置,用户就直接能用了。这个阶段,我们称为池化,或者云化,到了这个阶段,才可以称为云计算,在这之前都只能叫虚拟化。

    1.7 云计算的私有与公有

    云计算大致分两种,一个是私有云,一个是公有云,还有人把私有云和公有云连接起来称为混合云,我们暂且不说这个。私有云就是把虚拟化和云化的这套软件部署在别人的数据中心里面,使用私有云的用户往往很有钱,自己买地建机房,自己买服务器,然后让云厂商部署在自己这里,Vmware后来除了虚拟化,也推出了云计算的产品,并且在私有云市场赚的盆满钵满。所谓公有云就是虚拟化和云化软件部署在云厂商自己数据中心里面的,用户不需要很大的投入,只要注册一个账号,就能在一个网页上点一下创建一台虚拟电脑,例如AWS也即亚马逊的公有云,例如国内的阿里云,腾讯云,网易云等。

    亚马逊呢为什么要做公有云呢?我们知道亚马逊原来是国外比较大的一个电商,它做电商的时候也肯定会遇到类似双11的场景,在某一个时刻大家都冲上来买东西。当大家都冲上买东西的时候,就特别需要云的时间灵活性和空间灵活性。因为它不能时刻准备好所有的资源,那样太浪费了。但也不能什么都不准备,看着双十一这么多用户想买东西登不上去。所以需要双十一的时候,创建一大批虚拟电脑来支撑电商应用,过了双十一再把这些资源都释放掉去干别的。所以亚马逊是需要一个云平台的。

    然而商用的虚拟化软件实在是太贵了,亚马逊总不能把自己在电商赚的钱全部给了虚拟化厂商吧。于是亚马逊基于开源的虚拟化技术,如上所述的Xen或者KVM,开发了一套自己的云化软件。没想到亚马逊后来电商越做越牛,云平台也越做越牛。而且由于他的云平台需要支撑自己的电商应用,而传统的云计算厂商多为IT厂商出身,几乎没有自己的应用,因而亚马逊的云平台对应用更加的友好,迅速发展成为云计算的第一品牌,赚了很多钱。在亚马逊公布其云计算平台财报之前,人们都猜测,亚马逊电商赚钱,云也赚钱吗?后来一公布财报,发现不是一般的赚钱,仅仅去年,亚马逊AWS年营收达122亿美元,运营利润31亿美元。

    1.8 云计算的赚钱与情怀

    公有云的第一名亚马逊过得很爽,第二名Rackspace过的就一般了。没办法,这就是互联网行业的残酷性,多是赢者通吃的模式。所以第二名如果不是云计算行业的,很多人可能都没听过了。第二名就想,我干不过老大怎么办呢?开源吧。如上所述,亚马逊虽然使用了开源的虚拟化技术,但是云化的代码是闭源的,很多想做又做不了云化平台的公司,只能眼巴巴的看着亚马逊挣大钱。Rackspace把源代码一公开,整个行业就可以一起把这个平台越做越好,兄弟们大家一起上,和老大拼了。

    于是Rackspace和美国航空航天局合作创办了开源软件OpenStack,如图所示OpenStack的架构图,不是云计算行业的不用弄懂这个图,但是能够看到三个关键字,Compute计算,Networking网络,Storage存储。还是一个计算,网络,存储的云化管理平台。

    当然第二名的技术也是非常棒的,有了OpenStack之后,果真像Rackspace想象的一样,所有想做云的大企业都疯了,你能想象到的所有如雷贯耳的大型IT企业,IBM,惠普,戴尔,华为,联想等等,都疯了。原来云平台大家都想做,看着亚马逊和Vmware赚了这么多钱,眼巴巴看着没办法,想自己做一个好像难度还挺大。现在好了,有了这样一个开源的云平台OpenStack,所有的IT厂商都加入到这个社区中来,对这个云平台进行贡献,包装成自己的产品,连同自己的硬件设备一起卖。有的做了私有云,有的做了公有云,OpenStack已经成为开源云平台的事实标准。

    1.9 IaaS, 资源层面的灵活性

    随着OpenStack的技术越来越成熟,可以管理的规模也越来越大,并且可以有多个OpenStack集群部署多套,比如北京部署一套,杭州部署两套,广州部署一套,然后进行统一的管理。这样整个规模就更大了。在这个规模下,对于普通用户的感知来讲,基本能够做到想什么时候要就什么什么药,想要多少就要多少。还是拿云盘举例子,每个用户云盘都分配了5T甚至更大的空间,如果有1亿人,那加起来空间多大啊。其实背后的机制是这样的,分配你的空间,你可能只用了其中很少一点,比如说它分配给你了5个T,这么大的空间仅仅是你看到的,而不是真的就给你了,你其实只用了50个G,则真实给你的就是50个G,随着你文件的不断上传,分给你的空间会越来越多。当大家都上传,云平台发现快满了的时候(例如用了70%),会采购更多的服务器,扩充背后的资源,这个对用户是透明的,看不到的,从感觉上来讲,就实现了云计算的弹性。其实有点像银行,给储户的感觉是什么时候取钱都有,只要不同时挤兑,银行就不会垮。

    这里做一个简单的总结,到了这个阶段,云计算基本上实现了时间灵活性和空间灵活性,实现了计算,网络,存储资源的弹性。计算,网络,存储我们常称为基础设施Infranstracture, 因而这个阶段的弹性称为资源层面的弹性,管理资源的云平台,我们称为基础设施服务,就是我们常听到的IaaS,Infranstracture As A Service。

    二、云计算不光管资源,也要管应用

    640?wx_fmt=png

    有了IaaS,实现了资源层面的弹性就够了吗?显然不是。还有应用层面的弹性。这里举个例子,比如说实现一个电商的应用,平时十台机器就够了,双十一需要一百台。你可能觉得很好办啊,有了IaaS,新创建九十台机器就可以了啊。但是90台机器创建出来是空的啊,电商应用并没有放上去啊,只能你公司的运维人员一台一台的弄,还是需要很长时间才能安装好的。虽然资源层面实现了弹性,但是没有应用层的弹性,依然灵活性是不够的。

    有没有方法解决这个问题呢?于是人们在IaaS平台之上又加了一层,用于管理资源以上的应用弹性的问题,这一层通常称为PaaS(Platform As A Service)。这一层往往比较难理解,其实大致分两部分,一部分我称为你自己的应用自动安装,一部分我称为通用的应用不用安装。

    我们先来说第一部分,自己的应用自动安装。比如电商应用是你自己开发的,除了你自己,其他人是不知道怎么安装的,比如电商应用,安装的时候需要配置支付宝或者微信的账号,才能别人在你的电商上买东西的时候,付的钱是打到你的账户里面的,除了你,谁也不知道,所以安装的过程平台帮不了忙,但是能够帮你做的自动化,你需要做一些工作,将自己的配置信息融入到自动化的安装过程中方可。比如上面的例子,双十一新创建出来的90台机器是空的,如果能够提供一个工具,能够自动在这新的90台机器上将电商应用安装好,就能够实现应用层面的真正弹性。例如Puppet, Chef, Ansible, Cloud Foundary都可以干这件事情,最新的容器技术Docker能更好的干这件事情,不做技术的可以不用管这些词。

    第二部分,通用的应用不用安装。所谓通用的应用,一般指一些复杂性比较高,但是大家都在用的,例如数据库。几乎所有的应用都会用数据库,但是数据库软件是标准的,虽然安装和维护比较复杂,但是无论谁安装都是一样。这样的应用可以变成标准的PaaS层的应用放在云平台的界面上。当用户需要一个数据库的时候,一点就出来了,用户就可以直接用了。有人问,既然谁安装都一个样,那我自己来好了,不需要花钱在云平台上买。当然不是,数据库是一个非常难的东西,光Oracle这家公司,靠数据库就能赚这么多钱。买Oracle也是要花很多很多钱的。然而大多数云平台会提供Mysql这样的开源数据库,又是开源,钱不需要花这么多了,但是维护这个数据库,却需要专门招一个很大的团队,如果这个数据库能够优化到能够支撑双十一,也不是一年两年能够搞定的。比如您是一个做单车的,当然没必要招一个非常大的数据库团队来干这件事情,成本太高了,应该交给云平台来做这件事情,专业的事情专业的人来自,云平台专门养了几百人维护这套系统,您只要专注于您的单车应用就可以了。

    要么是自动部署,要么是不用部署,总的来说就是应用层你也要少操心,这就是PaaS层的重要作用。

    640?wx_fmt=png

    虽说脚本的方式能够解决自己的应用的部署问题,然而不同的环境千差万别,一个脚本往往在一个环境上运行正确,到另一个环境就不正确了。

    而容器是能更好的解决这个问题的。

    640?wx_fmt=png

    容器是 Container,Container另一个意思是集装箱,其实容器的思想就是要变成软件交付的集装箱。集装箱的特点,一是封装,二是标准。

    640?wx_fmt=png

    在没有集装箱的时代,假设将货物从 A运到 B,中间要经过三个码头、换三次船。每次都要将货物卸下船来,摆的七零八落,然后搬上船重新整齐摆好。因此在没有集装箱的时候,每次换船,船员们都要在岸上待几天才能走。

    640?wx_fmt=png

    有了集装箱以后,所有的货物都打包在一起了,并且集装箱的尺寸全部一致,所以每次换船的时候,一个箱子整体搬过去就行了,小时级别就能完成,船员再也不用上岸长时间耽搁了。

    这是集装箱“封装”、“标准”两大特点在生活中的应用。

    640?wx_fmt=png

    那么容器如何对应用打包呢?还是要学习集装箱,首先要有个封闭的环境,将货物封装起来,让货物之间互不干扰,互相隔离,这样装货卸货才方便。好在 Ubuntu中的LXC技术早就能做到这一点。

    封闭的环境主要使用了两种技术,一种是看起来是隔离的技术,称为 Namespace,也即每个 Namespace中的应用看到的是不同的 IP地址、用户空间、程号等。另一种是用起来是隔离的技术,称为 Cgroups,也即明明整台机器有很多的 CPU、内存,而一个应用只能用其中的一部分。

    所谓的镜像,就是将你焊好集装箱的那一刻,将集装箱的状态保存下来,就像孙悟空说:“定”,集装箱里面就定在了那一刻,然后将这一刻的状态保存成一系列文件。这些文件的格式是标准的,谁看到这些文件都能还原当时定住的那个时刻。将镜像还原成运行时的过程(就是读取镜像文件,还原那个时刻的过程)就是容器运行的过程。

    有了容器,使得 PaaS层对于用户自身应用的自动部署变得快速而优雅。

    三、大数据拥抱云计算

    在PaaS层中一个复杂的通用应用就是大数据平台。大数据是如何一步一步融入云计算的呢?

    3.1 数据不大也包含智慧

    一开始这个大数据并不大,你想象原来才有多少数据?现在大家都去看电子书,上网看新闻了,在我们80后小时候,信息量没有那么大,也就看看书,看看报,一个星期的报纸加起来才有多少字啊,如果你不在一个大城市,一个普通的学校的图书馆加起来也没几个书架,是后来随着信息化的到来,信息才会越来越多。

    首先我们来看一下大数据里面的数据,就分三种类型,一种叫结构化的数据,一种叫非结构化的数据,还有一种叫半结构化的数据。什么叫结构化的数据呢?叫有固定格式和有限长度的数据。例如填的表格就是结构化的数据,国籍:中华人民共和国,民族:汉,性别:男,这都叫结构化数据。现在越来越多的就是非结构化的数据,就是不定长,无固定格式的数据,例如网页,有时候非常长,有时候几句话就没了,例如语音,视频都是非结构化的数据。半结构化数据是一些xml或者html的格式的,不从事技术的可能不了解,但也没有关系。

    数据怎么样才能对人有用呢?其实数据本身不是有用的,必须要经过一定的处理。例如你每天跑步带个手环收集的也是数据,网上这么多网页也是数据,我们称为Data,数据本身没有什么用处,但是数据里面包含一个很重要的东西,叫做信息Information,数据十分杂乱,经过梳理和清洗,才能够称为信息。信息会包含很多规律,我们需要从信息中将规律总结出来,称为知识knowledge,知识改变命运。信息是很多的,但是有人看到了信息相当于白看,但是有人就从信息中看到了电商的未来,有人看到了直播的未来,所以人家就牛了,你如果没有从信息中提取出知识,天天看朋友圈,也只能在互联网滚滚大潮中做个看客。有了知识,然后利用这些知识去应用于实战,有的人会做得非常好,这个东西叫做智慧intelligence。有知识并不一定有智慧,例如好多学者很有知识,已经发生的事情可以从各个角度分析的头头是道,但一到实干就歇菜,并不能转化成为智慧。而很多的创业家之所以伟大,就是通过获得的知识应用于实践,最后做了很大的生意。

    所以数据的应用分这四个步骤:数据,信息,知识,智慧。这是很多商家都想要的,你看我收集了这么多的数据,能不能基于这些数据来帮我做下一步的决策,改善我的产品,例如让用户看视频的时候旁边弹出广告,正好是他想买的东西,再如让用户听音乐的时候,另外推荐一些他非常想听的其他音乐。用户在我的应用或者网站上随便点点鼠标,输入文字对我来说都是数据,我就是要将其中某些东西提取出来,指导实践,形成智慧,让用户陷入到我的应用里面不可自拔,上了我的网就不想离开,手不停的点,不停的买,很多人说双十一我都想断网了,我老婆在上面不断的买买买,买了A又推荐B,老婆大人说,“哎呀,B也是我喜欢的啊,老公我要买”。你说这个程序怎么这么牛,这么有智慧,比我还了解我老婆,这件事情是怎么做到的呢?

    640?wx_fmt=png

    3.2 数据如何升华为智慧

    数据的处理分几个步骤,完成了才最后会有智慧。

    第一个步骤叫数据的收集。首先得有数据,数据的收集有两个方式,第一个方式是拿,专业点的说法叫抓取或者爬取,例如搜索引擎就是这么做的,它把网上的所有的信息都下载到它的数据中心,然后你一搜才能搜出来。比如你去搜索的时候,结果会是一个列表,这个列表为什么会在搜索引擎的公司里面呢,就是因为他把这个数据啊都拿下来了,但是你一点链接,点出来这个网站就不在搜索引擎它们公司了。比如说新浪有个新闻,你拿百度搜出来,你不点的时候,那一页在百度数据中心,一点出来的网页就是在新浪的数据中心了。另外一个方式就是推送,有很多终端可以帮我收集数据,比如说小米手环,可以将你每天跑步的数据,心跳的数据,睡眠的数据都上传到数据中心里面。

    第二个步骤是数据的传输。一般会通过队列方式进行,因为数据量实在是太大了,数据必须经过处理才会有用,可是系统处理不过来,只好排好队,慢慢的处理。

    第三个步骤是数据的存储。现在数据就是金钱,掌握了数据就相当于掌握了钱。要不然网站怎么知道你想买什么呢?就是因为它有你历史的交易的数据,这个信息可不能给别人,十分宝贵,所以需要存储下来。

    第四个步骤是数据的处理和分析。上面存储的数据是原始数据,原始数据多是杂乱无章的,有很多垃圾数据在里面,因而需要清洗和过滤,得到一些高质量的数据。对于高质量的数据,就可以进行分析,从而对数据进行分类,或者发现数据之间的相互关系,得到知识。比如盛传的沃尔玛超市的啤酒和尿布的故事,就是通过对人们的购买数据进行分析,发现了男人一般买尿布的时候,会同时购买啤酒,这样就发现了啤酒和尿布之间的相互关系,获得知识,然后应用到实践中,将啤酒和尿布的柜台弄的很近,就获得了智慧。

    第五个步骤就是对于数据的检索和挖掘。检索就是搜索,所谓外事不决问google,内事不决问百度。内外两大搜索引擎都是讲分析后的数据放入搜索引擎,从而人们想寻找信息的时候,一搜就有了。另外就是挖掘,仅仅搜索出来已经不能满足人们的要求了,还需要从信息中挖掘出相互的关系。比如财经搜索,当搜索某个公司股票的时候,该公司的高管是不是也应该被挖掘出来呢?如果仅仅搜索出这个公司的股票发现涨的特别好,于是你就去买了,其实其高管发了一个声明,对股票十分不利,第二天就跌了,这不坑害广大股民么?所以通过各种算法挖掘数据中的关系,形成知识库,十分重要。

    640?wx_fmt=png

    640?wx_fmt=png

    3.3 大数据时代,众人拾柴火焰高

    当数据量很小的时候,很少的几台机器就能解决。慢慢的当数据量越来越大,最牛的服务器都解决不了问题的时候,就想怎么办呢?要聚合多台机器的力量,大家齐心协力一起把这个事搞定,众人拾柴火焰高。

    对于数据的收集,对于IoT来讲,外面部署这成千上万的检测设备,将大量的温度,适度,监控,电力等等数据统统收集上来,对于互联网网页的搜索引擎来讲,需要将整个互联网所有的网页都下载下来,这显然一台机器做不到,需要多台机器组成网络爬虫系统,每台机器下载一部分,同时工作,才能在有限的时间内,将海量的网页下载完毕。

    640?wx_fmt=png

    对于数据的传输,一个内存里面的队列肯定会被大量的数据挤爆掉,于是就产生了基于硬盘的分布式队列,这样队列可以多台机器同时传输,随你数据量多大,只要我的队列足够多,管道足够粗,就能够撑得住。

    640?wx_fmt=png

    对于数据的存储,一台机器的文件系统肯定是放不下了,所以需要一个很大的分布式文件系统来做这件事情,把多台机器的硬盘打成一块大的文件系统。

    640?wx_fmt=png

    再如数据的分析,可能需要对大量的数据做分解,统计,汇总,一台机器肯定搞不定,处理到猴年马月也分析不完,于是就有分布式计算的方法,将大量的数据分成小份,每台机器处理一小份,多台机器并行处理,很快就能算完。例如著名的Terasort对1个TB的数据排序,相当于1024G,如果单机处理,怎么也要几个小时,但是并行处理209秒就完成了。

    640?wx_fmt=png

    640?wx_fmt=png

    640?wx_fmt=png

    所以说大数据平台,什么叫做大数据,说白了就是一台机器干不完,大家一起干。随着数据量越来越大,很多不大的公司都需要处理相当多的数据,这些小公司没有这么多机器可怎么办呢?

    3.4 大数据需要云计算,云计算需要大数据

    说到这里,大家想起云计算了吧。当想要干这些活的时候,需要好多好多的机器一块做,真的是想什么时候要,想要多少就要多少。例如大数据分析公司的财务情况,可能一周分析一次,如果要把这一百台机器或者一千台机器都在那放着,一周用一次对吧,非常浪费。那能不能需要计算的时候,把这一千台机器拿出来,然后不算的时候,这一千台机器可以去干别的事情。谁能做这个事儿呢?只有云计算,可以为大数据的运算提供资源层的灵活性。而云计算也会部署大数据放到它的PaaS平台上,作为一个非常非常重要的通用应用。因为大数据平台能够使得多台机器一起干一个事儿,这个东西不是一般人能开发出来的,也不是一般人玩得转的,怎么也得雇个几十上百号人才能把这个玩起来,所以说就像数据库一样,其实还是需要有一帮专业的人来玩这个东西。现在公有云上基本上都会有大数据的解决方案了,一个小公司我需要大数据平台的时候,不需要采购一千台机器,只要到公有云上一点,这一千台机器都出来了,并且上面已经部署好了的大数据平台,只要把数据放进去算就可以了。

    云计算需要大数据,大数据需要云计算,两个人就这样结合了。

    四、人工智能拥抱大数据

    4.1 机器什么时候才能懂人心

    虽说有了大数据,人的欲望总是这个不能够满足。虽说在大数据平台里面有搜索引擎这个东西,想要什么东西我一搜就出来了。但是也存在这样的情况,我想要的东西不会搜,表达不出来,搜索出来的又不是我想要的。例如音乐软件里面推荐一首歌,这首歌我没听过,当然不知道名字,也没法搜,但是软件推荐给我,我的确喜欢,这就是搜索做不到的事情。当人们使用这种应用的时候,会发现机器知道我想要什么,而不是说当我想要的时候,去机器里面搜索。这个机器真像我的朋友一样懂我,这就有点人工智能的意思了。

    人们很早就在想这个事情了。最早的时候,人们想象,如果要是有一堵墙,墙后面是个机器,我给它说话,它就给我回应,我如果感觉不出它那边是人还是机器,那它就真的是一个人工智能的东西了。

    4.2 让机器学会推理

    怎么才能做到这一点呢?人们就想:我首先要告诉计算机人类的推理的能力。你看人重要的是什么呀,人和动物的区别在什么呀,就是能推理。我要是把我这个推理的能力啊告诉机器,机器就能根据你的提问,推理出相应的回答,真能这样多好。推理其实人们慢慢的让机器能够做到一些了,例如证明数学公式。这是一个非常让人惊喜的一个过程,机器竟然能够证明数学公式。但是慢慢发现其实这个结果,也没有那么令人惊喜,因为大家发现了一个问题,数学公式非常严谨,推理过程也非常严谨,而且数学公式很容易拿机器来进行表达,程序也相对容易表达。然而人类的语言就没这么简单了,比如今天晚上,你和你女朋友约会,你女朋友说:如果你早来,我没来,你等着,如果我早来,你没来,你等着。这个机器就比比较难理解了,但是人都懂,所以你和女朋友约会,你是不敢迟到的。

    4.3 教给机器知识

    所以仅仅告诉机器严格的推理是不够的,还要告诉机器一些知识。但是知识这个事儿,一般人可能就做不来了,可能专家可以,比如语言领域的专家,或者财经领域的专家。语言领域和财经领域知识能不能表示成像数学公式一样稍微严格点呢?例如语言专家可能会总结出主谓宾定状补这些语法规则,主语后面一定是谓语,谓语后面一定是宾语,将这些总结出来,并严格表达出来不久行了吗?后来发现这个不行,太难总结了,语言表达千变万化。就拿主谓宾的例子,很多时候在口语里面就省略了谓语,别人问:你谁啊?我回答:我刘超。但是你不能规定在语音语义识别的时候,要求对着机器说标准的书面语,这样还是不够智能,就像罗永浩在一次演讲中说的那样,每次对着手机,用书面语说:请帮我呼叫某某某,这是一件很尴尬的事情。

    人工智能这个阶段叫做专家系统。专家系统不易成功,一方面是知识比较难总结,另一方面总结出来的知识难以教给计算机。因为你自己还迷迷糊糊,似乎觉得有规律,就是说不出来,就怎么能够通过编程教给计算机呢?

    4.4 算了,教不会你自己学吧

    于是人们想到,看来机器是和人完全不一样的物种,干脆让机器自己学习好了。机器怎么学习呢?既然机器的统计能力这么强,基于统计学习,一定能从大量的数字中发现一定的规律。

    其实在娱乐圈有很好的一个例子,可见一斑

    有一位网友统计了知名歌手在大陆发行的 9 张专辑中 117 首歌曲的歌词,同一词语在一首歌出现只算一次,形容词、名词和动词的前十名如下表所示(词语后面的数字是出现的次数):

    a形容词b名词c动词
    0孤独:340生命:500爱:54
    1自由:171路:371碎:37
    2迷惘:162夜:292哭:35
    3坚强:133天空:243死:27
    4绝望:84孩子:234飞:26
    5青春:75雨:215梦想:14
    6迷茫:66石头:96祈祷:10
    7光明:67鸟:97离去:10

    如果我们随便写一串数字,然后按照数位依次在形容词、名词和动词中取出一个词,连在一起会怎么样呢?

    例如取圆周率 3.1415926,对应的词语是:坚强,路,飞,自由,雨,埋,迷惘。稍微连接和润色一下:

    坚强的孩子,

    依然前行在路上,

    张开翅膀飞向自由,

    让雨水埋葬他的迷惘。

    是不是有点感觉了?当然真正基于统计的学习算法比这个简单的统计复杂的多。

    然而统计学习比较容易理解简单的相关性,例如一个词和另一个词总是一起出现,两个词应该有关系,而无法表达复杂的相关性,并且统计方法的公式往往非常复杂,为了简化计算,常常做出各种独立性的假设,来降低公式的计算难度,然而现实生活中,具有独立性的事件是相对较少的。

    4.5 模拟大脑的工作方式

    于是人类开始从机器的世界,反思人类的世界是怎么工作的。

    640?wx_fmt=png

    人类的脑子里面不是存储着大量的规则,也不是记录着大量的统计数据,而是通过神经元的触发实现的,每个神经元有从其他神经元的输入,当接收到输入的时候,会产生一个输出来刺激其他的神经元,于是大量的神经元相互反应,最终形成各种输出的结果。例如当人们看到美女瞳孔放大,绝不是大脑根据身材比例进行规则判断,也不是将人生中看过的所有的美女都统计一遍,而是神经元从视网膜触发到大脑再回到瞳孔。在这个过程中,其实很难总结出每个神经元对最终的结果起到了哪些作用,反正就是起作用了。

    于是人们开始用一个数学单元模拟神经元

    这个神经元有输入,有输出,输入和输出之间通过一个公式来表示,输入根据重要程度不同(权重),影响着输出。

    640?wx_fmt=png

    于是将n个神经元通过像一张神经网络一样连接在一起,n这个数字可以很大很大,所有的神经元可以分成很多列,每一列很多个排列起来,每个神经元的对于输入的权重可以都不相同,从而每个神经元的公式也不相同。当人们从这张网络中输入一个东西的时候,希望输出一个对人类来讲正确的结果。例如上面的例子,输入一个写着2的图片,输出的列表里面第二个数字最大,其实从机器来讲,它既不知道输入的这个图片写的是2,也不知道输出的这一系列数字的意义,没关系,人知道意义就可以了。正如对于神经元来说,他们既不知道视网膜看到的是美女,也不知道瞳孔放大是为了看的清楚,反正看到美女,瞳孔放大了,就可以了。

    对于任何一张神经网络,谁也不敢保证输入是2,输出一定是第二个数字最大,要保证这个结果,需要训练和学习。毕竟看到美女而瞳孔放大也是人类很多年进化的结果。学习的过程就是,输入大量的图片,如果结果不是想要的结果,则进行调整。如何调整呢,就是每个神经元的每个权重都向目标进行微调,由于神经元和权重实在是太多了,所以整张网络产生的结果很难表现出非此即彼的结果,而是向着结果微微的进步,最终能够达到目标结果。当然这些调整的策略还是非常有技巧的,需要算法的高手来仔细的调整。正如人类见到美女,瞳孔一开始没有放大到能看清楚,于是美女跟别人跑了,下次学习的结果是瞳孔放大一点点,而不是放大鼻孔。

    4.6 没道理但做得到

    听起来也没有那么有道理,但是的确能做到,就是这么任性。

    神经网络的普遍性定理是这样说的,假设某个人给你某种复杂奇特的函数,f(x):

    640?wx_fmt=png

    不管这个函数是什么样的,总会确保有个神经网络能够对任何可能的输入x,其值f(x)(或者某个能够准确的近似)是神经网络的输出。

    如果在函数代表着规律,也意味着这个规律无论多么奇妙,多么不能理解,都是能通过大量的神经元,通过大量权重的调整,表示出来的。

    4.7 人工智能的经济学解释

    这让我想到了经济学,于是比较容易理解了。

    640?wx_fmt=png

    我们把每个神经元当成社会中从事经济活动的个体。于是神经网络相当于整个经济社会,每个神经元对于社会的输入,都有权重的调整,做出相应的输出,比如工资涨了,菜价也涨了,股票跌了,我应该怎么办,怎么花自己的钱。这里面没有规律么?肯定有,但是具体什么规律呢?却很难说清楚。

    基于专家系统的经济属于计划经济,整个经济规律的表示不希望通过每个经济个体的独立决策表现出来,而是希望通过专家的高屋建瓴和远见卓识总结出来。专家永远不可能知道哪个城市的哪个街道缺少一个卖甜豆腐脑的。于是专家说应该产多少钢铁,产多少馒头,往往距离人民生活的真正需求有较大的差距,就算整个计划书写个几百页,也无法表达隐藏在人民生活中的小规律。

    基于统计的宏观调控就靠谱的多了,每年统计局都会统计整个社会的就业率,通胀率,GDP等等指标,这些指标往往代表着很多的内在规律,虽然不能够精确表达,但是相对靠谱。然而基于统计的规律总结表达相对比较粗糙,比如经济学家看到这些统计数据可以总结出长期来看房价是涨还是跌,股票长期来看是涨还是跌,如果经济总体上扬,房价和股票应该都是涨的。但是基于统计数据,无法总结出股票,物价的微小波动规律。

    基于神经网络的微观经济学才是对整个经济规律最最准确的表达,每个人对于从社会中的输入,进行各自的调整,并且调整同样会作为输入反馈到社会中。想象一下股市行情细微的波动曲线,正是每个独立的个体各自不断交易的结果,没有统一的规律可循。而每个人根据整个社会的输入进行独立决策,当某些因素经过多次训练,也会形成宏观上的统计性的规律,这也就是宏观经济学所能看到的。例如每次货币大量发行,最后房价都会上涨,多次训练后,人们也就都学会了。

    4.8 人工智能需要大数据

    然而神经网络包含这么多的节点,每个节点包含非常多的参数,整个参数量实在是太大了,需要的计算量实在太大,但是没有关系啊,我们有大数据平台,可以汇聚多台机器的力量一起来计算,才能在有限的时间内得到想要的结果。

    人工智能可以做的事情非常多,例如可以鉴别垃圾邮件,鉴别黄色暴力文字和图片等。这也是经历了三个阶段的。第一个阶段依赖于关键词黑白名单和过滤技术,包含哪些词就是黄色或者暴力的文字。随着这个网络语言越来越多,词也不断的变化,不断的更新这个词库就有点顾不过来。第二个阶段时,基于一些新的算法,比如说贝叶斯过滤等,你不用管贝叶斯算法是什么,但是这个名字你应该听过,这个一个基于概率的算法。第三个阶段就是基于大数据和人工智能,进行更加精准的用户画像和文本理解和图像理解。

    由于人工智能算法多是依赖于大量的数据的,这些数据往往需要面向某个特定的领域(例如电商,邮箱)进行长期的积累,如果没有数据,就算有人工智能算法也白搭,所以人工智能程序很少像前面的IaaS和PaaS一样,将人工智能程序给某个客户安装一套让客户去用,因为给某个客户单独安装一套,客户没有相关的数据做训练,结果往往是很差的。但是云计算厂商往往是积累了大量数据的,于是就在云计算厂商里面安装一套,暴露一个服务接口,比如您想鉴别一个文本是不是涉及黄色和暴力,直接用这个在线服务就可以了。这种形势的服务,在云计算里面称为软件即服务,SaaS (Software AS A Service)

    于是工智能程序作为SaaS平台进入了云计算。

    五、云计算,大数据,人工智能过上了美好的生活

    终于云计算的三兄弟凑齐了,分别是IaaS,PaaS和SaaS,所以一般在一个云计算平台上,云,大数据,人工智能都能找得到。对一个大数据公司,积累了大量的数据,也会使用一些人工智能的算法提供一些服务。对于一个人工智能公司,也不可能没有大数据平台支撑。所以云计算,大数据,人工智能就这样整合起来,完成了相遇,相识,相知。


    【关于作者】


     刘超:《Lucene应用开发揭秘》的作者。个人公众号:刘超的通俗云计算 (id:popsuper1982)。


    【关于投稿】


    如果大家有原创好文投稿,请直接给公号发送留言。


    ① 留言格式:
    【投稿】+《 文章标题》+ 文章链接

    ② 示例:
    【投稿】《不要自称是程序员,我十多年的 IT 职场总结》:http://blog.jobbole.com/94148/

    ③ 最后请附上您的个人简介哈~




    关注「程序员的那些事」,不错过圈内事

    640?wx_fmt=png

    展开全文
  • 不少人会把数据云计算中心、数据中心、大数据搞混淆,觉得三者是一样的产品,其实有显著地区别,数据中心机房是一整套复杂设施,如今,云计算即将成为信息社会的公共资源,而数据中心是支撑云计算服务的基础设施,...

    不少人会把数据云计算中心、数据中心、大数据搞混淆,觉得三者是一样的产品,其实有显著地区别,数据中心机房是一整套复杂设施,如今,云计算即将成为信息社会的公共资源,而数据中心是支撑云计算服务的基础设施,所以自从云计算横空出世后,一切信息技术开始围着它转,云计算有如神一样地存在着,下面看看数据中心、云计算以及大数据之间有什么区别和联系?

    数据中心是全球协作的特定设备网络,用来在网络基础设施上传递、加速、展示、计算、存储数据信息,数据中心绝大部分电子元件都是由低压直流电源驱动运行的。数据中心面临物理问题是服务器本身和用来连接这些服务器到其他应用环境的电缆。

    云计算CloudComputing,是种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。典型的云计算提供商往往提供通用的网络业务应用,可以通过浏览器等软件或者其他Web服务来访问,而软件和数据都存储在服务器上。云计算服务通常提供通用的通过浏览器访问的在线商业应用,软件和数据存储在数据中心。

    狭义云计算指IT基础设施交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源。

    广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT、软件和互联网相关,也可以是其他服务,它意味着计算能力可作为一种商品通过互联网进行流通。对云计算的定义有多种说法,云计算是通过网络提供可伸缩的廉价的分布式计算能力。

    在这里我还是要推荐下我自己建的大数据学习交流qq裙:522189307 , 裙 里都是学大数据开发的,如果你正在学习大数据 ,小编欢迎你加入,大家都是软件开发党,不定期分享干货(只有大数据开发相关的),包括我自己整理的一份最新的大数据进阶资料和高级开发教程,欢迎进阶中和进想深入大数据的小伙伴。上述资料加群可以领取

    大数据又称为巨量资料,指需要新处理模式才能具有更强的决策力、洞察力以及流程优化能力的海量、高增长率和多样化信息资产。

    大数据技术的战略意义不在于掌握庞大的数据信息,而在于对这些含有意义的数据进行专业化处理。换而言之,如果把大数据比作一种产业,那么这种产业实现盈利关键,在于提高对数据的“加工能力”通过“加工”实现数据“增值”

    移动互联网大数据主要来自四个方面:

    1. 内容数据:Web2.0时代后,每个人都成为媒体,都会在网络上生产内容,包括文字、图片、视频等等;
    2. 电商数据:随着电子商务发展,线上交易量已经占据整个零售业交易的大部分。每一笔交易都包含买家、卖家以及商品背后的整条价值链条的信息;
    3. 社交数据:随着移动社交成为最主要的社交方式,社交不仅只有人与人之间的交流作用,社交数据中包括了人的喜好、生活轨迹、消费能力、价值取向等各种重要的用户画像信息;
    4. 物联数据:各行各业都出现了物联网需求和解决方案,每时每刻都在产生巨量监测数据。那么如此多的数据,包含很多有价值的信息,这些信息并不是以直观的形式呈现出来的,需要有办法对这些数据进行处理,无论计算、存储还是通信,都提出了很高要求,云计算的相关技术就是对巨量数据的计算、存储和通信的解决方案。

    数据中心、云计算以及大数据之间的区别与联系:

    1. 大数据和云计算的概念区别:大数据说的是种移动互联网和物联网背景下的应用场景,各种应用产生巨量数据,需要处理、分析,挖掘有价值的信息;云计算说的是一种技术解决方案,就是利用这种技术可以解决计算、存储、数据库等一系列IT基础设施的按需构建的需求,两者并不是同一层面的东西;
    2. 大数据与云计算的关系那么上面说了大数据和云计算的区别,两者之间又有着非常紧密的联系,大数据是云计算非常重要的应用场景,而云计算则为大数据的处理和数据挖掘都提供了最佳的技术解决方案。

    大数据分析经常和云计算联系到一起,因为实时的大型数据集分析需要像MapReduce一样的框架来向数十数百或甚至数千的服务器分配工作,大数据需要特殊的技术,以有效地处理大量数据。适用大数据的技术,包括大规模并行处理数据库、数据挖掘电网、分布文件系统、分布式数据库、计算平台、互联网和可扩展的存储系统,大数据指的海量的数据一般日处理PB级别以上,一般用于挖掘,分析,做一些智能性商业板块。

    大数据必然与云计算有相关(大数据和云计算没有必然的联系,你要作大数据,可以用云计算,也可不用)数据中心是云计算基础,从技术上来看,大数据与云计算的关系就像一枚硬币的正反面一样密不可分,大数据必然无法用单台的计算机进行处理,必须采用分布式的架构。它的特色在于对海量数据进行分布式数据挖掘,但它必须依托云计算分布式处理、分布式数据库和云存储、虚拟化等技术,随着云时代的来临,大数据也吸引了越来越多的关注。

    数据中心是云计算基础设施,我们通常讲到的服务器资源分配,带宽分配,业务支撑能力,流量防护,清洗能力,都是基于数据中心的大小和其带宽的容量,数据中心分布在不同的核心城市,辐射到周边的城市,提供基础支撑,其一般都符合国家机房一级标准,具备极强容灾能力,多数厂商会选择两地三中心等方式来架设机房,云计算是在数据中心基础上提供的从基础服务到增值服务的一种闲置资源利用。

    但有一点不变的是,不管云计算怎样去变化,必然需要依托数据中心实现落地。也可以说,数据中心是云计算的根,云计算是数据中心“叶子”云计算通过光合作用促进数据中心的发展,而数据中心得壮大又为云计算发展提供了坚实基础,这三者起到相互依存互相促进的作用。

    展开全文
  • 为解决广大系统设计人员深入研究与开发云计算系统的需要,培训中心特举办“云计算与海量数据处理技术”培训班,具体事宜通知如下: 一、培训对象 1,系统架构师、系统分析师、高级程序员、资深开发人员。 2,牵涉...

    云计算提供了一种对资源“按需索取服务”的能力,确保了使用时间与需要时间的完全一致,从而建立了一种分布式、高效率、低成本的IT商业模式。正是这些特点,使云计算成为IT发展的潮流与趋势。为解决广大系统设计人员深入研究与开发云计算系统的需要,培训中心特举办“云计算与海量数据处理技术”培训班,具体事宜通知如下:

    一、培训对象

    1,系统架构师、系统分析师、高级程序员、资深开发人员。

    2,牵涉到海量数据处理的机构数据中心运行、规划、设计负责人。

    3,云服务运营服务提供商规划负责人。

    4,高校、科研院所牵涉到大数据与分布式数据处理的项目负责人。

    二、学员基础

    1,对IT系统设计有一定的理论与实践经验。

    2,数据仓库与大数据处理有一定的基础知识。

    三、师资

    由业界知名云计算专家亲自授课:

    杨老师   主要研究网络信息分析以及云计算相关技术,长期从事通信网管系统、网络信息处理、商务智能(BI)以及电信决策支持系统的研究开发工作,主持和参与了多个国家和省部级基金项目,具有丰富的工程实践及软件研发经验。

    雷老师   国内知名企业云平台技术负责人,中国云亲身实践者。

    四、培训要点

    今天,随着IT规模越来越大,数据规模呈几何级数增长,已经超出了传统技术方法所能解决的范畴。为此,人们把目光转向了刚刚兴起的云计算,希望通过云计算来实施海量数据处理解决方案,实现以更小的成本来处理更大规模数据的目标,并成为目前云计算应用所面对的极大挑战。本课程基本思想如下:

    1,目前,“云计算”已经不是一个刚刚流行的时髦概念了,在一些传统IT方法显得无能为力的场合,云计算正在开始大展拳脚,表现了强大的解决问题的能力,海量数据存储与处理正是属于这种场合。我们如何在云计算分布式环境下正确设计大数据量数据模型?如何在设计中解决资源、效率、安全性、可靠性等一系列极难平衡的问题?如何通过云计算帮助我们解决在传统IT技术中看似解决不了的敏感问题?这些都是我们在云计算架构设计中需要深入研究的键问题。

    2,理解问题最好的方法是分析成功案例,本课程分别从多个角度分析在面对海量数据处理的困难时,不同的应用体系是如何解决问题并获得成功的。研究这些已有的体系不是目的,而是希望学员能够通过学习这些解决问题的方法和思路,通过归纳整理深入理解,再根据自己所面对的领域特征,形成解决具体实际问题的方案。这也是让云计算在海量数据处理领域真正发挥作用的有效途径。

    3,云计算是一种服务,在云计算应用架构设计中,就必须考虑作为服务与普通的产品设计有哪些不同?需要考虑的产品的服务特征有哪些?如何搭建面向不同层次、合适的服务平台?在这个过程中,我们需要考虑哪些问题?有哪些成功的案例?有些什么解决方案?

    4,云计算应用最重要的问题是安全问题。安全不是一个后期需要解决的独立问题,而是在前期就需要投入巨大精力来考虑的产品策略。可以说,安全性与可用性是云计算能否顺利实施与应用的关键点,也是云计算架构设计的关键因素。我们应该如何考虑安全问题?如何解决诸如数据安全、网络安全、主机安全、数据管理以及灾难恢复等一系列问题?如何制定合适的安全性与可用性策略?在实践中有什么经验和教训?

    5,为了把传统数据中心改造为基于云计算的服务系统,虚拟化是一个重要手段。我们必须深入研究虚拟化技术是如何实现的。虚拟化技术有哪几个层面的问题?如何正确应用虚拟化技术来实现把基础设施向服务转型?各种虚拟化技术有些什么优点?有哪些陷阱?如何规划技术解决方案?如何正确进行云计算体系结构设计?

    本课程不是一个泛泛的理论性、概念性的介绍课程,而是针对问题讨论解决方案的深入课程。教师对于上述领域有深入的理论研究与实践经验,在课程中将会针对这些问题与学员一起进行研究,在关键点上还会搭建实验环境进行实践研究,以加深对于这些解决方案的理解。通过本课程学习,希望推动国内云计算项目开发上升到一个新水平。

    五、培训内容

    第一讲 云计算的概念与现状

      1)云计算的概念

      2)云计算发展现状

      3)云计算实现机制

      4)云计算的发展环境

      5)云计算的优势

    第二讲 从Google云计算体系,理解海量数据处理的方法

      1)如何构建海量存储文件系统?

          GFS系统架构

          GFS容错机制

          GFS系统管理技术

          MapReduce产生背景

          MapReduce编程模型

          MapReduce实现机制

          MapReduce案例分析

      2)如何提供锁服务解决分布式数据一致性问题?

          Chubby的设计思路

          Chubby中的Paxos算法

          Chubby文件系统

      3)如何建立规模庞大的高性能表结构?

          BigTable设计目标

          BigTable系统架构

          BigTable服务器

          BigTable性能优化

      4)如何建立高可用性和高可扩展性的数据系统?

          Megastore设计目标

          Megastore数据模型

          Megastore事务及并发控制 

          Megastore基本架构

          Dapper监控系统

          Dapper关键性技术

          Dapper工具

    第三讲 从Hadoop云计算项目,进一步研究云数据处理方法

      1)HDFS:高可靠性处理机制及应用

          Hadoop项目简介

          HDFS体系结构

          HDFS关键运行机制

          Hadoop vs Google

          Hadoop API

          Hadoop环境搭建

      2)HBASE:庞大、极其稀疏的可扩展性数据模型

          Hbase简介

          HBase的运行机制

          HBase与 HDFS

          HBase的对外接口

          ZooKeeper的数据模型

          ZooKeeper的读写机制

          ZooKeeper的使用方法

    第四讲 从Windows Azure,理解平台即服务的本质

      1)微软云计算平台

      2)微软云操作系统Windows Azure

      3)微软云关系数据库SQL Azure

      4)Azure AppFabric

      5)Azure Marketplace

    第五讲 从Amazon云计算,讨论如何提供云服务

      1)Dynamo基础存储架构

      2)弹性计算云EC2

      3)简单存储服务S3

      4)简单队列服务SQS 

      5)简单数据库服务Simple DB

      6)关系数据库服务RDS

      7)内容推送服务CloudFront

    第六讲 实施云计算的关键点:安全策略

      1)云计算安全是一个必须前期重视的策略

      2)云计算的特征与安全挑战

      3)云计算的安全体系与关键技术

      4)基础架构云安全框架

      5)云计算安全平台

    第七讲 当前数据中心如何向云计算环境转变?

      1)VMware云产品

      2)云管理平台 vCenter

      3)vCloud Service Director

      4)VMware的网络和存储虚拟化

      5)主流商业云计算解决方案比较

      6)主流开源云计算系统比较 

      7)国内代表性云计算平台比较 

    第八讲 基础设施即服务(IaaS)关键实现技术

      1)IaaS技术体系概述

      2)服务器虚拟化技术

          CPU虚拟化

          内存虚拟化

          I/O虚拟化

      3)存储虚拟化技术

          存储系统概述

          存储设备层的存储虚拟化

          块聚合层的存储虚拟化

          文件/记录层的存储虚拟化

      4)主机网络虚拟化

    第九讲 软件即服务(SaaS)关键实现技术

      1)SaaS技术概述

      2)呈现层技术综述

      3)调度层技术

          基于DNS的调度

          基于虚拟IP的调度

          基于链路聚合的调度

          基于应用的调度

          调度策略

      4)业务层

      5)数据层

      6)用户管理和配置管理

      7)用户体验的设计

      8)课程总结

    展开全文
  • 云计算产生的背景 什么是云计算? 云计算 (Cloud Computing)是基于互联网的相关服务的增加、使用和交互模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云是网络、互联网的一种比喻说法。过去...

    云计算产生的背景

    什么是云计算?

    云计算 (Cloud Computing)是基于互联网的相关服务的增加、使用和交互模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云是网络互联网的一种比喻说法。过去在图中往往用云来表示电信网,后来也用来表示互联网和底层基础设施的抽象。因此,云计算甚至可以让你体验每秒10万亿次的运算能力,拥有这么强大的计算能力可以模拟核爆炸、预测气候变化和市场发展趋势。用户通过电脑笔记本、手机等方式接入数据中心,按自己的需求进行运算。(引用百度百科)

    对云计算的定义有多种说法。对于到底什么是云计算,至少可以找到100种解释。 现阶段广为接受的是美国国家标准与技术研究院(NIST)定义:云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问, 进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。(引用百度百科)

    云计算的分类

    • IaaS—基础设施即服务,只涉及到租用硬件,是一种最基础的服务
    • PaaS—平台即服务,已经从硬件的基础上,租用一个特定的操作系统与应用程序,来自己进行应用软件的开发
    • SaaS—软件即服务,在云平台提供的定制软件上,直接部署自己的应用系统

    云计算的主要技术特征

    • 按需服务—根据用户是实际计算量与数据存储量,自动分配CPU的数量与存储空间的大小,避免服务质量下降与资源浪费
    • 资源池化—利用虚拟化技术,根据需求定制用户使用的计算与存储资源,计算与存储资源管理对用户是透明的
    • 服务可计费—“云”可以监控用户的计算、存储资源的使用量,并根据资源的使用“量”进行计费
    • 泛在接入—用户的各种终端设备,如PC机、笔记本计算机、智能手机和移动终端设备,都可以作为云终端,随时随地访问“云”
    • 高可靠性—“云”采用数据多副本备份冗余,计算节点可替换等方法,提高云计算系统的可靠性
    • 快速部署—云计算不针对某一些特定的应用,用户可以方便地开发各种应用软件,组建自己的应用系统,快速部署业务

    云计算模式

    • 云计算是一种计算模式,它是将计算与存储资源、软件与应用作为服务,通过网络提供给用户

    展开全文
  • 什么是云计算数据中心? 现在可能会有很多人对云计算数据中心还有大数据等这类技术和名次感到模糊不清,云计算数据中心是一种基于云计算架构的,计算、存储及网络资源松耦合,完全虚拟化各种IT设备、模块化程度较...

    什么是云计算数据中心?

    现在可能会有很多人对云计算、数据中心还有大数据等这类技术和名次感到模糊不清,云计算数据中心是一种基于云计算架构的,计算、存储及网络资源松耦合,完全虚拟化各种IT设备、模块化程度较高、自动化程度较高、具备较高绿色节能程度的新型数据中心。

    云数据中心的特点首先是高度的虚拟化,这其中包括服务器、存储、网络、应用等虚拟化,使用户可以按需调用各种资源;其次是自动化管理程度,包括对物理服务器、虚拟服务器的管理,对相关业务的自动化流程管理、对客户服务的收费等自动化管理,最后是绿色节能,云计算数据中心在各方面符合绿色节能标准,一般PUE值不超过1.5。

    云计算数据中心和传统IDC有何区别?

    在设计理念方面,云计算数据中心(或者说新一代数据中心)更加强调与IT系统协同优化,在满足需求的前提下,实现整个数据中心的最高效率和最低成本;而传统数据中心通常片面强调机房的可靠、安全、高标准,但与IT系统相互割裂,成本高昂。

    传统的IDC大致可以分为托管型服务和用户自主服务两类模式,一类是服务器由用户自己进行购买,期间对设备的监控和管理工作也由客户自行完成。数据中心主要提供IP接入,带宽接入和电力供应等服务。另一种模式则是数据中心不仅提供管理服务,也向客户提供服务器和存储,客户无需自行购买设备就可以使用数据中心所提供的存储空间和计算环境,但是现在走进云计算时代的IT产业,在数据中心托管方面已经不再需要用户自己提供硬件设备了,反而大大提升了硬件设备的计算能力和IT可扩展性以及可操作性。

    (1)云计算和传统IDC在资源集约化速度和规模上的区别

    归根到底,云计算是通过资源集约化实现的动态资源调配。传统IDC服务也能实现简单的集约化,但两者在资源整合速度和规模上有着很大区别。传统IDC,只是在硬件服务器的基础进行有限的整合,例如多台虚拟机共享一台实体服务器性能。但这种简单的集约化受限于单台实体服务器的资源规模,远远不如云计算那样跨实体服务器,甚至跨数据中心的大规模有效整合。

    更重要的是,传统IDC提供的资源难以承受短时间内的快速再分配。

    (2)云计算和传统IDC在平台运行效率上的区别

    更加灵活的资源应用方式、更高的技术提升,使云服务商拥有集合优势创新资源利用方式,促进整个平台运作效率提升。并且,和传统IDC服务不同,云计算使用户从硬件设备的管理和运维工作中解脱出来,专注内部业务的开发和创新,由云服务商负责云平台本身的稳定。这种责任分担模式使整个平台的运行效率获得提升。

    简单地说,云计算是在传统IDC服务上的延伸和发展。云计算是将多台计算节点连接成一个大型的虚拟资源池来提高计算效率,使资源再分配的效率和规模不受限于单台实体服务器甚至单个IDC数据中心。无论从交付/服务方式、资源分配规模、资源分配速度,还是整个平台的运行效率方面,相比传统IDC服务,云计算均有着极大提升,这种提升将为各行业的企业和开发者创造更高价值。

    (3)云计算和传统IDC在服务类型上的区别

    常用的传统IDC服务包括实体服务器托管和租用两类。前者是由用户自行购买硬件发往机房托管,期间设备的监控和管理工作均由用户单方独立完成,IDC数据中心提供IP接入、带宽接入、电力供应和网络维护等,后者是由IDC数据中心租用实体设备给客户使用,同时负责环境的稳定,用户无需购买硬件设备。

    而云计算提供的服务是从基础设施到业务基础平台再到应用层的连续的整体的全套服务。

    IDC数据中心将规模化的硬件服务器整合虚拟到云端,为用户提供的是服务能力和IT效能。用户无需担心任何硬件设备的性能限制问题,可获得具备高扩展性和高可用的计算能力。

    (4)云计算和传统IDC在资源分配时滞上的区别

    众所周知,由于部署和配置实体硬件的缘故,传统IDC资源的交付通常需要数小时甚至数天,将增加企业承受的时间成本,以及更多的精力消耗,并且难以做到实时、快速的资源再分配,且容易造成资源闲置和浪费。

    云计算,则通过更新的技术实现资源的快速再分配,可以在数分钟甚至几十秒内分配资源实现快速可用,并且云端虚拟资源池中庞大的资源规模使海量资源的快速再分配得以承受,并以此有效地规避资源闲置的风险。

    (5)云计算和传统IDC收费模式的区别

    传统数据中心一般按照月或者年收费,计算的标准就是机柜数量,带宽大小,用电量这些数据,这些数据是粗放型的,统计不够精确,往往造成很多资源的浪费。比如一个客户租下十个机柜,但实际上只用了五个,另外五个可以要日后慢慢上线,但必须要提前支付这十个机柜的费用,让客户多花了不少钱。而云数据中心就不同,甚至可以按照小时或者分钟收费,而客户使用的就是计算、带宽和存储数据,就像家里用的燃气费,只要不开启煤气灶,也不会花费燃气费,燃气表只有在打开燃气灶的时候才开始走,精确度量,云数据中心就是按照这样的模式来收费的,客户用了多少计算和带宽资源,就收多少费用,这个费用可以精确到分钟,为客户节省了开支,这样又有哪些客户能不喜欢呢。

    (6)云计算和传统IDC对于光学器件的要求有区别

    与传统器件相比,用在数据中心的器件密度要求更高,在同一块板卡上要求可以插上更多的模块。功率需求直线下降为八分之一的水准。对速度的需求也是越来越高,因为在有限的空间,有限的板卡上为了实现更大的数据量,要求模块的速度直线上升,所有的这些要求加在一起,对于器件,要求的集成度越来越高。
      人工智能、大数据、云计算和物联网的未来发展值得重视,均为前沿产业,多智时代专注于人工智能和大数据的入门和科谱,在此为你推荐几篇优质好文:
    企业为何采用云计算?主要用途是什么?
    http://www.duozhishidai.com/article-14574-1.html
    企业云计算的基本特征是什么,在建设过程中主要分为哪几个阶段?
    http://www.duozhishidai.com/article-13379-1.html
    什么是云计算技术,对云计算技术的产生、概念、原理、应用和前景又在哪里?
    http://www.duozhishidai.com/article-527-1.html


    多智时代-人工智能大数据学习入门网站|人工智能、大数据、物联网云计算的学习交流网站

    多智时代-人工智能大数据学习入门网站|人工智能、大数据、云计算、物联网的学习服务的好平台
    展开全文
  • 云计算数据处理技术

    2019-01-13 18:09:05
    当今互联网时代最火的技术莫过于云计算和大数据 云计算是什么? 云计算跟大数据有着什么样不可告人的关系? 云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问, 进入可配置的计算资源...
  • 本文讲的是云计算时代的数据泄密风险你了解多少,根据云计算安全公司Elastica的最新研究数据显示,云计算允许移动员工方便地存储信息,并让他们可以广泛地与同事共享信息,但很多人没有考虑将敏感数据放在云计算中的...
  • 数据中心和云计算,二者起数同源,但亦有差异不同之处。是企业为其网站应用程序选择置放管理及保护的地点。那么数据中心和云计算各自能提供的优质服务内容有哪些呢?该如何作出选择呢? 从下表可以看出数据中心和...
  • 不少人把数据中心、云计算数据中心、大数据搞混淆,觉得这三者是一样的产品,其实有显著地区别,数据中心机房是一整套复杂的设施,如今,云计算即将成为信息社会的公共资源,而数据中心则是支撑云计算服务的基础设施...
  • 1. 大数据、云计算和物联网的区别 大数据侧重于海量数据的存储、处理与分析,从海量数据中发现价值,服务于生产和生活;云计算本质上旨在整合和优化各种IT...大数据根植于云计算,大数据分析的很多技术都来自于云计算...
  • 不少人把数据中心、云计算数据中心、大数据搞混淆,觉得这三者是一样的产品,其实有显著地区别,数据中心机房是一整套复杂的设施,如今,云计算即将成为信息社会的公共资源,而数据中心则是支撑云计算服务的基础设施...
  • 一般而言,一家互联网公司一定同时是数据公司,反之,不能从数据中获取利益的互联网公司一定不是一个好的云计算应用者。更进一步,挖掘数据价值很多企业都会做,但如果不能用最低成本得到数据价值,企业同样活不下去...
  • 大数据(big data),指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。(引用百度百科)...
  • 云计算数据中心建设

    2020-07-11 05:18:09
    云计算数据中心建设,包括云计算数据架构,平台建设的背景、意义等
  • 云计算数据中心中数据集如何布局,是现在大家研究的热门话题。 目前国内外,相应的研究还很缺乏。 如何将数据集布局在各个数据中心,是云计算进一步发展的主要解决问题。 一个合理的数据布局,会减少数据集在书...
  • 云计算与大数据安全

    2018-10-16 08:38:54
    社会信息化和网络化的发展导致数据爆炸式增长,全球数据量大约每两年翻一番,这就意味着最近两年产生的数据量相当于之前产生的全部数据量。大数据技术已悄然渗透到各个行业领域,逐渐成为一种生产要素发挥着重要作用...
  • 云计算将如何改变数据中心运营与发展  如今,信息技术一直在不断发展。而这种技术进步继续以极快的速度发生,需要更快的处理和大量的数据存储,而在过去二十年中引入了改变数据中心设计和部署的云计算模型。...
  • 有网友问云计算,大数据,数据库,数据仓库之间是什么关系,在这里我就我的理解简单解释一下:首先简单的看一下云计算与大数据的概念.1)云计算:云计算本质上是一种计算资源集中分布和充分共享的效用计算模式,其中集中...
  • 云计算数据中心网络技术.pdf 云计算数据中心网络技术.pdf
1 2 3 4 5 ... 20
收藏数 162,559
精华内容 65,023