HEERY 2012-06-28
云管理平台云是IT实现,是造出来的,不是买来的。我们可以买服务器,买数据库,但买不了云,不可能说买来以后一装就行了,那就不是云了,那只能是买一个服务器,或者买一个集群,要想买一个云的是不大可能。反过来说,这个集成本身就有复杂性,所以会遇到比如说多种虚机不一样的,不同厂家的虚拟机,多种存储设备,很多API都不一样。然后物理机和虚机又混着使用,有些应用在物理机上运行,有些应用在虚机上运行,还有跟已有的应用要集成起来,所以有很多事情要做。这也是为什么会有云管理平台,云管理平台就是一个框架,这个框架是个云框架,它基本上搭建好了一个架构,就是关于云应该如何来设计,把这个架子搭建起来,然后需要把该放的东西放上去,该连接的东西连接起来,该定制的地方定制起来,该要加工的地方加工好,因为云必须要做集成,云管理平台本身就相当于集成的一个中间件,而不是应用的中间件,就是把基础设施中不同的部件连接起来,把存储和操作系统以及不同的虚机更多的聚合起来,形成给上层应用的一个易用的平台。
如何走好第一步
第一,要用别人的云管理平台,不要自己从头做,不要说只买虚拟机,有现成的物理机,自己雇上一大堆人,就能做出来,这样的话就走了很大的弯路,风险也很大,所以一定要用一种云管理平台来做集成;第二,得力的技术力量,自己要有得力的技术力量,因为是自己的平台,自己要知道要什么,自己要不知道,那就很难做到。如果自己不懂的话,最好找一家集成商,来对整个设计进行统筹计划,这样会做的比较全面些。如果是想自己亲手做的话,那么最好不要野心太大,小步走,先做一小步,看见效益再做下一步,这样会比较好一点。能够减少工程失败的机会;第三,要有有效的项目管理,不能说这个走到那是那,一定要最开始,就想到结尾,从结尾开始做计划,计划到开头,这样做出来,一直到最后实现这种东西。
海量数据维度与云目前互联网系统平台化,比如才上市的Facebook,现在大数据已经蔓延到了企业里头,有的企业看到了这个商机,自己也已经有很多数据,比如说银行,比如说大零售业,还有政府等,但是现在大数据技术基本上大部分是基于开源的,如:Hadoop,它是一系列开源的产品,包括文件系统、并行文件系统和MapReduce,然后在上面还有一些应用的工具,比如说Pig、Hive、HBase这类工具,能够让用户比较容易的编程,进行数据处理。除此以外,还有一些传统的数据仓库的工具,最近几年由于大数据进入企业,对于传统的数据仓库已经不足以满足了,因此出现了一些新的数据库,比如NoSQL这样的数据库,它的结构已经不再是那种关系型数据库,能够处理一些类似于大数据的一些概念,其实还可以做分布式计算,把多台计算机当作一台计算机来管理和使用,能够形成一个非常强大的功能的具有很多CPU、很多处理能力的这样一个大机器,逻辑上的一台大机器。
大数据分析,首先要知道什么是大数据,大数据它并不是一个绝对的数据,多大就算大数据,它实际上是一个多维的问题,一个是数据量肯定是比以前要大了,第二个是数据的复杂度,它不再是这种表格型的数据,也不仅仅是重复格式的问题,比如说一张用户表有名字、性别、年龄等字段,这样就好处理一点(结构化数据),那么大数据面临的复杂度叫做非结构化数据,它没有结构,就像一个服务器日志一样,写到哪儿是哪儿,所以它没有什么结构,也就很难用传统的数据处理方式去处理,所以数据量是一个维度,数据复杂度是第二个维度;第三个就是时间压力,数据量如此之大,数据又这么复杂,还要能够及时的处理。
MapReduceMapReduce是一个比较成熟的技术,MapReduce是一个技术,它有相关的像Pig、Hive,那是在它上面做查询,比如实现算平均值,算某某关键字出现的次数,能够帮助用户做一些简单的直观的一些分析(前面文章有介绍),但Hadoop和开源的MapReduc在设计时只考虑到互联网环境下单一的使用,所以还有很多的工作需要做才能满足企业的应用,比如:Master Node宕机以后,你还得重新提交你的作业,还不能自动切换(Fail-Over),再比如:Hadoop MapReduce必须绑定HDFS,不能用其他的文件系统,这样Master Node宕机以后,文件系统也随之瘫痪,这对很多被用来执行关键任务的应用软件是不能接受的。所以很多用户在寻求其他的方案,如果能只做MapReduce这一层,文件系统可以是任何的文件系统,但也支持HDFS、Hadoop就好了(目前我了解的已经有了fourinone(淘宝)、Platform)。
后记
很多的人有个误区,就是说SaaS建立在PaaS上,PaaS是建立在IaaS,这个模式是不对的,很多时候是独立的,各做各的,其实只要做到服务产品就是想要的云,只要做任何一个就是云,不一定非要把三个都做了才是云;多听用户、客户的意见,因为最终做云,是给客户做的,否则的话,做出来没有客户,云也就意味着失败。