能否利用Hadoop搭建完整的云计算平台「建议收藏」

Hadoop并不完全代表云计算,所以,要用Hadoop搭建完整的云计算平台,答案是不够。我们常说云计算,实际上还是通过计算机的大规模或者说海量处理来为生活中各式各样的人和各行各业服务——所以,核心在“服务”。关于服务,展开来就是常用的那3种(也是事实上的标准):SaaS,PaaS,IaaS。对云计算来说,公有和私有,虚拟和存储,这其实是相对讨论的核心。回头说Hadoop。在Google三大…

大家好,又见面了,我是你们的朋友全栈君。

Hadoop并不完全代表云计算,所以,要用Hadoop搭建完整的云计算平台,答案是不够。我们常说云计算,实际上还是通过计算机的大规模或者 说海量处理来为生活中各式各样的人和各行各业服务——所以,核心在“服务”。关于服务,展开来就是常用的那3种(也是事实上的标 准):SaaS,PaaS,IaaS。对云计算来说,公有和私有,虚拟和存储,这其实是相对讨论的核心。

回头说Hadoop。在Google三大论文的直接刺激下,Hadoop社区兴起,而在众多的开源实现中,Hadoop(主项目)可以说是所有已知云计算方面开源项目的一个Top项目。

云计算中有哪些构件?发展到目前的技术与规模,并没有一个确切的定论,今天的说的话明天可能就不一样了。但对Hadoop来说,实现了的部分,就是大部分企业在不断发展中所遇到的大部分问题。直接上图:
能否利用Hadoop搭建完整的云计算平台「建议收藏」

从整体生态系统的角度,从底层存储,到中间的计算模型和框架,再到上层的逻辑处理和流、显示,都有相应开源的实现。这就是你说的构件了。

包括我们看到的Hadoop2.0中,引入的新的处理框架,Spark,Storm,YARN(取代MR),都是Hadoop生态系统的完善与实现。

Hadoop实现的是在简易硬件的基础上进行尽量高可用性海量计算与处理的中上层模型。Hadoop处理了存储(也只是一部分),虚拟化是没有涉 及的,而底层硬件Hadoop也是不涉及的,不管是Hadoop还是其他的项目,只是在软件的层面想通过纵向或者横向的拓展解决所有的问题是不现实的。 Hadoop在硬件这方面,只是在实现中预留或者接入硬件特性,也就是在虚拟化这方面Hadoop只是个“APP”,不是“始作俑者”(用词不当了)。

那么,完整的云计算平台呢?

按照企业级来说,是要看具体的企业方向和企业类型的,包括IBM和VMware都有提供不同的解决方案。大致上一定是由单点–>集群 –>多层(准分布式)–>硬件–>分布式(地域分布)来解决的。具体到Hadoop体系的技术,直接去对应上图就好了。

从云计算这个概念出现到今天,资料可以说“浩如烟海”了,但很多资料只是互相复制黏贴,并没有说到云计算的核心。我想提出的一个观点是,完整的云计算平台,依赖的是业务,提供的是存储与支持。

没有业务需求而是照搬网上的资料或者自认为“活用”了某些技术,都可能只是“娱人娱己”。我们看一下互联网负载均衡技术是如何发展的就就更容易理解云计算:

客户端缓存–>CDN缓存–>Apache&Nginx静态页面缓存–>PHP和Java动态内存 –>Memcache&Other Nosql–>Mysql&Oracle–>HDFS&Other Big Table

从技术的角度看,所有问题解决起来都是层次化的(大家肯定都有写Demo吧),都是根据不同的需求引入不同的技术,在单层单点乃至集群都无法解决 问题的时候,新的计算框架,云计算与网格计算乃至动画需要的大规模渲染都在需要的时候顺理成章的引入。总之,完整的云计算平台,对于不同的公司业务都是不 同的,拿腾讯来说,平台的组件多如牛毛,“平台”只是提供最基础的服务:存储与支持,其他的都需要业务根据自身的特点在其上进行构建(相信大公司都是有自 己的完整方案的,这里我就不能再说了……),至于提高什么样级别的这种“服务”,就要看公司的业务规模,需要支撑的体系,乃至公司的决策战略了等等

原文链接:
http://www.open-open.com/solution/view/1426725577820

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/126265.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • AssertValid和Dump 这两个函数的作用[通俗易懂]

    AssertValid和Dump 这两个函数的作用[通俗易懂]
    AssertValid函数是用来判断表达式的合法性或正确性,如果不正确或不合法则终止程序并返回相应的提示信息 
     如AssertValid(t==0);//用来判断t是否等于0,如果t!=0则终止程序 
     Dump函数一般用来显示debug信息的,其函数中的内容一般在debug时,在debug窗口中才能看到。
    CObject::AssertValid 成员函数提供对对象内部状态的运行时检查。尽管从 CObject 派生类时不需要重写 Asse

    2022年7月14日
    17
  • LUCENE3.0 自学吧 5 TokenStream

    LUCENE3.0 自学吧 5 TokenStream
    研究Lucene分析器的实现。
    Analyzer抽象类
    所有的分析器的实现,都是继承自抽象类Analyzer,它的源代码如下所示:
    packageorg.apache.lucene.analysis;importjava.io.Reader;publicabstractclassAnalyzer{//通过Field的名称,和一个Reader对象,创建一个分词流,该方法是抽象方法publicabstractTokenStrea

    2022年7月22日
    8
  • 我手写了个SLAM算法!「建议收藏」

    我手写了个SLAM算法!「建议收藏」我手写了个SLAM算法!点击蓝色按钮,设置星标,第一时间获得文章推送哦1、前言前一段时间看过我文章的都知道,我打算写一个SLAM源码阅读的文章,然后,我就去读了Gmapping的源码,感受良多,不足的地方就是源码太乱了,阅读起来真的不香。于是就有了这篇文章,在我仔细阅读之后,我在源码的结构基础之上,进行大刀阔斧的删减和更改之后得到一个易于阅读的建图算法功能包,极大的降低了代码量,极大的提升了阅读体验。在这里将该算法功能包分享给大家,希望需要的朋友,善待它。之前文章链接:ps:为什么是gmappin

    2022年6月29日
    48
  • 使用正则表达式替换(保留部分内容不变)

    使用正则表达式替换(保留部分内容不变)正则表达式保留部分内容替换需求:把trim(ABC)替换成trim(replace(ABC,char(9),”)需要把ABC保留不变,替换其它的。实现:trim\(([^).]*)\)替换成trim\(replace\($1,char\(9\),”\)在查找的时候用括号括起来的代表一部分,在替换的时候可以用$1,$2…引用。注意:有写编…

    2022年5月17日
    119
  • STM32CubeMX使用方法及功能介绍

    STM32CubeMX使用方法及功能介绍推荐分享一个大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!http://www.captainbed.net/strongerhuang我的网站:https://www.strongerhuang.com我的知乎:https://www.zhihu.com/people/strongerHuang.comⅠ、写在前面…

    2022年6月10日
    34
  • 页面的高度设置_word页面高度在哪设置

    页面的高度设置_word页面高度在哪设置问题1:页面加上doctype后height=100%不好使解决:增加css设置:html{height:100%}body{height:100%};另外,其他的容器也需要设置height

    2022年8月1日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号