• Distributed Systems MIT - Introduction总结


    1.Main Topics

    • Storage.(存储)
    • Communication.(通信)
    • Computation.(计算)

    2. 什么是Distributed systems:

    ·多台电脑合作完成
    ·大规模数据集运算,如:MapReduce,点对点共享
    ·许多设施是分布式的
    
    • 1
    • 2
    • 3

    3. Distributed systems功能:

    ·通过多线程并行操作,提高性能
    ·通过生成副本,避免文件丢失
    ·可以将计算放在离外部实体更近的地方
    ·通过隔离增加系统的安全
    
    • 1
    • 2
    • 3
    • 4

    4. Topic

    • implementation(实现):RPC、线程、并发控制
    • performance(性能):我们想要提供一个性能可以扩展的系统,通常需要更好的设计而不仅仅是更多的计算机,数量的增多也会带来负载不均衡等问题。
    • fault tolerance(容错):对应用程序隐藏这些故障,我们希望系统拥有可用性、可恢复性,如果一台服务器宕机,可以继续使用其他服务器。
    • consistency(一致):想要达成正确工作的系统十分困难,一致性与性能存在矛盾,服务器节点能难保证相同,KV服务。

    5. MapReduce

    MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)“和"Reduce(归约)”,是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。

    函数式编程思想构建成抽象模型 — Map 和 Reduce,隐藏系统底层细节,编程方便,不够灵活。即 MapReduce的思想是,应用程序设计人员和分布式运算的使用者,只需要写简单的Map函数和Reduce函数,而不需要知道任何有关分布式的事情,MapReduce框架会处理剩下的事情。

    • Job:整个MapReduce计算称为Job。
    • Task:每一次MapReduce调用称为Task。

    对于一个完整的MapReduce Job,它由一些Map Task和一些Reduce Task组成。所以这是一个单词计数器的例子,它解释了MapReduce的基本工作方式。

    Map函数使用一个key和一个value作为参数。key是输入文件的名字,通常会被忽略,因为我们不太关心文件名是什么,value是输入文件的内容。

    Reduce函数的入参是某个特定key的所有实例(Map输出中的key-value对中,出现了一次特定的key就可以算作一个实例)。所以Reduce函数也是使用一个key和一个value作为参数,其中value是一个数组,里面每一个元素是Map函数输出的key的一个实例的value。

    Example: word count

      input is thousands of text files
      
      Map(k, v)
        split v into words
        for each word w
          emit(w, "1")
          
      Reduce(k, v)
        emit(len(v))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
  • 相关阅读:
    java8:Collector集合方法
    docker swarm下部署的spring cloud,时不时就会取到ingress网络的ip
    新型BI解决方案:SaaS BI,在浏览器上分析数据
    AIX 7.2 虚拟机 bash安装及 Aix 文件名补齐 使用优化篇
    Prompt 驱动架构设计:探索复杂 AIGC 应用的设计之道?
    js逆向tips-某思录登录
    5.5 真-白给题
    IO流核心模块与基本原理
    Clickhouse—时间窗口函数
    企业级的商用远程控制软件有哪些
  • 原文地址:https://blog.csdn.net/weixin_54338498/article/details/128003020