zoukankan      html  css  js  c++  java
  • 大数据系统基础(自主模式) 2.1大数据和云计算关系概述

    数量大  做海量的计算和存储

    算的速度快  处理速度快

    数据产生的地方和数据处理的地方往往不是同一个地方

    做一个智能城市的应用  数据产生是在业外。比如说由各个地方,由传感器采集来的,那数据处理是在数据中心里面进行的,如果能把收集到的数据快速传输到数据中心里头,这需要一个很快的广域网的数据传输。所以这个也是由数据量和我们对数据处理速度的要求共同决定的。当然还有一些更不明显的需求,而且大数据这个事情,刚刚起步,具体它会发展成什么样的大家也不是很清楚,所以我们需要一个非常灵活,所以灵活是大数据一个非常重要的特征。大数据,价值密度非常的低,存储很多很多的数据,分析很多很多的数据,实际上它真正有用的只有那一点点。在这种情况下,我们要求大数据系统有一个低成本的特性,否则的话任何企业也不可能负担的起我们用非常昂贵的系统,象我们过去做数据仓库和数据库那种方式做出来的存储系统。我们不可能利用那些系统来处理大数据,因为成本太高了。

    那么如何实现这些需求呢?这是大数据系统设计和很多的分布式系统设计的三个核心的理念。并行化:一个事情一个人干不了,我们把它切成很多个小块分给好多人同时干,这样你干的就快乐。这就是并行化的概念。

    规模经济:如果你做一个这个事情,实际上它的成本是很低的,但是如果你规模经济,同时你把它做很多很多,你把规模做大,你把设计成本你把这些个一次投入的成本都摊销到这些个规模上去,这时候你的平均成本就低了,所以这是一个规模经济的概念。

    第三个是虚拟化,硬件、软件都是多种多样的,你把这些多种多样的东西放在一起,你不好管理不好调度,我们需要定义一个非常漂亮的接口,然后把那些个非常恶心的具体的实现隐藏在下面,这些给大家一个好看的接口,这样的话方便调度和管理,这就是虚拟化的概念。

    这三个其实都是一些非常朴实的观点,因为做计算机的人,为什么叫做IT民工,他就是一些非常朴实的想法,但是这些想法推进到真正的系统中去,我们会发现这个系统设计出来才能够解决这样的问题。

    大数据系统的基本的软硬件架构:

    当然最基础的硬件,从硬件层来说我们就是计算资源、存储资源,以及把它们用网络连接起来。这是硬件层。刚才我们说到这种硬件层实际上是多种多样的,我们很难管理。所以我们有一层虚拟化层,我们把存储网络和云计算都虚拟化,这样提供一个标准的接口。到云计算这一层,实际上是通过这个很好的虚拟化的这样抽象的接口,我们把这些资源进行统一的调度和管理。

    在云计算上层,因为我们有资源了,这时候我们提供的接口的是什么?我要多少存储,我要多少计算资源,我要多少网络,这个云就会提供给我。所以在这上层我们可以建设一系列的大数据处理的叫做框架,这个框架实际上是体现了一种并行化的思想,它利用这些资源,把这些资源组织在一起,让它们协同工作,然后提供一个更加高层的接口。这种更加高层的接口隐藏了底下这些并行化的这些理念,所以让大家开发应用会更加容易。比方说上面我们可以开发智能城市应用,开发一些视频的应用,多媒体的应用等等。但是当你开发这些应用的时候,你会发现,你不用再想底下的这层复杂的这种实现了。

    虚拟化及以下的这一层,是云计算的基础。云这一层,主要讲的是资源的调度和管理。我们是如何把这些资源分配给不同的框架的。Hadoop、Spark大数据处理的框架。它们是提供怎样的一个抽象,你怎样来做这个应用。整体的最底下的这一系列的系统,为大数据应用的开发,提供了一个非常非常好的环境。真正应用开发的人,或者说数据分析师们,已经不需要再想底下的这些个复杂的东西是怎么回事了。

  • 相关阅读:
    JVM 综述
    看 Netty 在 Dubbo 中如何应用
    Netty 心跳服务之 IdleStateHandler 源码分析
    Netty 高性能之道
    Netty 解码器抽象父类 ByteToMessageDecoder 源码解析
    Netty 源码剖析之 unSafe.write 方法
    Netty 出站缓冲区 ChannelOutboundBuffer 源码解析(isWritable 属性的重要性)
    Netty 源码剖析之 unSafe.read 方法
    Netty 内存回收之 noCleaner 策略
    Netty 源码阅读的思考------耗时业务到底该如何处理
  • 原文地址:https://www.cnblogs.com/ZHONGZHENHUA/p/6432008.html
Copyright © 2011-2022 走看看