zoukankan      html  css  js  c++  java
  • Distributed processing

    Distributed processing

    Tool

    好处

    坏处

    类型

    支持序列化

    支持根据负载动态调度任务

    支持c

    支持dependency的调度

    有成熟的library

    Actor model

    天生支持分布式,本身已经包含基本的serialization功能

    比较底层

    需要自己编写调度代码

    没有广泛支持c的library

    传统基于msg的系统

    v

    x

    v

    x

    x

    Apache Storm

    http://storm.apache.org/

    本身支持分布式,dependency的调度

    基于java,不支持c

    Streaming 系统

    v

    v

    x

    v

    v

    Grpc

    支持c

    需要自己编写调度代码

    效率不高(基于http)

    RPC

    v

    x

    v

    x

    v

    Stapl (Standard Adaptive Parallel Library)

    https://parasol.tamu.edu/stapl/

    https://parasol-lab.gitlab.io/stapl-home/docs/sgl/

    https://gitlab.com/parasol-lab

    STAPL(标准模板自适应并行库)是用于在C ++中开发并行程序的框架。它设计用于共享和分布式内存并行计算机

    TaskGraph

    V?

    Stolos,

    https://github.com/sailthru/stolos/blob/master/README.md

    Chronos, luigi, Azkaban

     a task dependency scheduler that helps build distributed pipelines

    像是接近批处理框架,实时性可能会慢?

    V?

    Zeromq

    支持c

    只是消息队列,需要自己编写序列化,和调度

    V?

    Celery http://www.celeryproject.org/

    芹菜:分布式任务队列

    Celery是基于分布式消息传递的异步任务队列/作业队列。它专注于实时操作,但也支持调度。

    基于python

    V?

    x

    v

    Thrift

    hadoop

    批处理系统,慢

    Map reduce不是非常适用

    Java

    MapReduce-like 系统

    v

    v

    v

    x

    V

    MPI (mpich2 和 openmpi)

    传统基于msg的系统

    GraphLab (dato) https://turi.com/

    好像用于机器学习方面的

    图计算系统

    Giraph / Hama

    图计算系统

    Spark Streaming

    不是纯粹的流处理,实时性可能会有影响

    Streaming 系统

    Flink

    Streaming 系统

    TBB

    Charm++

    Titanium

    UPC

    PSTL

    Bonic

    https://boinc.berkeley.edu/trac/wiki/ProjectMain

    Tpl dataflow

    Julia language

    https://julialang.org/

    语言层面支持分布式

    没有图调度

    v

    v

    vx

    x

    V

     

    是一个标准

    是一个标准

    • Apache graphx
    • Apache Storm,Trident,Spark Streaming,Samza和Apache Flink

    Keywords

    Distributed processing

    Distributed computing

    Distributed task scheduler

    并行计算

    高性能计算

    Task Dependence Graph

    技术

    Paxos

    Consistent Hash

    分布式存储系统还有一系列的理论、算法、技术作为支撑:例如 Paxos, CAP, ConsistentHash, Timing (时钟), 2PC, 3PC

    分布式计算系统也做了一个分类,如下:

    1. 传统基于msg的系统

    2. MapReduce-like 系统

    3. 图计算系统

    4. 基于状态(state)的系统

    5. Streaming 系统

    https://en.wikipedia.org/wiki/List_of_concurrent_and_parallel_programming_languages

    http://www.infoq.com/cn/articles/comparison-of-main-stream-processing-framework

    http://www.infoq.com/cn/articles/comparison-of-main-stream-processing-framework

  • 相关阅读:
    失格
    救赎
    篝火晚会
    旅行家的预算
    荒诞
    mod
    clique
    序列
    [CF932E]Team Work & [BZOJ5093]图的价值
    NOIWC2018游记
  • 原文地址:https://www.cnblogs.com/cutepig/p/9165209.html
Copyright © 2011-2022 走看看