zoukankan      html  css  js  c++  java
  • 阿里的100TB Sort Benchmark排序比雅虎快了一倍还多,我的看法

        如果我的判断正确,它们使用的软件和算法应该是HADOOP,MAP/REDUCE,或者类似的技术方案。如果这些条件一样,影响计算结果的还有三个因素:


    1.CPU的数量和CPU的处理能力
        CPU的数量可以用一个最体力活的例子来说明:挖沙!如果阿里巴巴带着1000个民工在河里挖沙,而旁边的雅虎只有200个民工,那么挖沙的结果可想而知,肯定是阿里赢了。后者相当于一个成年人和一个儿童比体力,无论如何,一个儿童的体力是比不上成人的。


    2.网络带宽
        这涉及到分布计算和集中计算的根本不同,网络!现在我们大多数的计算模式仍然是集中计算,常见的就是我们经常用的EXCLE表格。集中计算的特点是数据的存储和计算混合在一台计算机上进行。分布计算的特点是把存储和计算分开,这样就需要一批计算机参与,每台计算机成为一个节点,或者存储,或者计算,或者兼而有之。网络是将它们连接起来的纽带。假设数据存储在E节点,那么数据计算可能发生在D节点,也可能是W节点。为了能够在等量时间内传输更多的数据,网络带宽就显得非常重要了。如果把网络比喻成水管,那么带宽就是这个水管的粗细,越粗的水管流量会越大。据说阿里的机房带宽都是万兆级,这决对是目前顶级的配置了。


    3.数据存储的位置
        换句话说,就是这100TB的数据放在哪里。目前的存储介质有三种:内存、固态硬盘、机械硬盘。因为这些数据无论放在哪里,都要从存储介质里读出来,再通过网络传到其它节点上计算。这个"读"本身就是一个耗时的过程。根据这些存储介质自身的特性,内存的速度远远快过固态硬盘,固态硬盘又超过机械硬盘。


    综上所述,基本条件相同下的竞赛才有可比性,如果玩田忌赛马,偷换概念的比赛,即使赢了,也是胜之不武,没有什么可夸耀的。
  • 相关阅读:
    Spring Security教程(一)
    java报错:The reference to entity "characterEncoding" must end with the ';' delimiter.
    SpringBoot定时任务升级篇(动态添加修改删除定时任务)
    SpringBoot几种定时任务的实现方式
    JDK中的Timer和TimerTask详解
    SpringMVC拦截器与SpringBoot自定义拦截器
    Java注解入门
    Servlet 4.0 入门
    spring邮件发送
    class path resource [spring/ApplicationContext-springmvc.xml] cannot be opened because it does not exist
  • 原文地址:https://www.cnblogs.com/laxcus/p/5303539.html
Copyright © 2011-2022 走看看