美文网首页
Flink知识图谱整理 - 基本概念和架构

Flink知识图谱整理 - 基本概念和架构

作者: 小胡子哥灬 | 来源:发表于2020-07-18 15:43 被阅读0次

    Streaming Processing Concepts(流处理基本概念)

    Bounded and UnBounded Data and Processing(有界和无界数据)

    latency and throughput(延迟和吞吐量)

    Time Semantics(时间语义)

    1. Processing Time
    2. Event Time
    3. Wartermarks
    4. Windows
    5. Trigger

    Architecture(架构)

    runtime 核心机制解析

    Layered Apis(API层级)

    flink api layered
    1. SQL/Table API (dynamic tables)
    2. DataStream API (stream, windows)
    3. Process Function(events, state, time)

    Components of a Flink Setup (flink 组件)

    flink组件
    1. Jobmanager(也叫 masters)

      jobmanager负责协调分布式执行。 调度任务,协调检查点,协调故障恢复等。

      至少要有一个jobmanager, 高可用性设置将有多个JobManager,其中一个始终是leader,而其他则是standby。

    2. Taskmanager(也叫workers)

      执行任务(或更具体地说,子任务),并缓冲和交换数据流。

      必须始终至少有一个TaskManager。

    3. Clients(flink-clients)

      client 并不是runtime和程序执行的一部分, 它只是用于准备和构建program以及发送dataflow给Jobmanager。之后可以断开连接,也可以驻留进程接收数据。client可以通过Java/Scala语言编写触发任务执行,也可以使用flink的./bin/flink run 脚本执行。

    Task Execution(任务执行)

    1. Operators - 比如source map reduce sink

    2. Tasks - 多个Operators组成一个task

      • Setting Parallelism(设置并行度) - 级别从高到低
        • Operator Level - 算子级别
        • Execution Enverionment Level - env级别
        • Client Level - ./bin/flink run 级别
        • System Level (set in flink-conf.yaml) - 配置文件级别
      • Task Failure Recovery(失败恢复)
    3. Job - 所有的Task组成一个job

    4. Slot and Resources

      每个worker (TaskManager) 是一个JVM进程,并且可以在单独的线程(slots)中执行一个或者多个子任务. 一个worker为了能够接收多个task, 就把worker平均分成多个slot。slot之间只是内存的隔离,并没有发生CPU的隔离。每个slot在同一JVM中的任务共享TCP连接(通过多路复用)和心跳消息。 它们还可以共享数据集和数据结构,从而减少每个任务的开销。

    tasks_slots

    默认情况下,Flink允许子任务共享slot,即使它们是不同任务的子任务也是如此,只要它们来自同一Job即可。 允许此插槽共享有两个主要好处:

    • Flink集群所需的任务槽与作业中使用的最高并行度恰好一样。 无需计算一个程序总共包含多少个任务(并行度各不相同)。

    • 更容易获得更好的资源利用率。 如果没有插槽共享,则非密集型source / map()子任务将阻塞与资源密集型窗口子任务一样多的资源。 通过插槽共享,我们示例中的基本并行度从2增加到6,可以充分利用插槽资源,同时确保沉重的子任务在TaskManager之间公平分配。


      slot_sharing

    相关文章

      网友评论

          本文标题:Flink知识图谱整理 - 基本概念和架构

          本文链接:https://www.haomeiwen.com/subject/tooxkktx.html