• 本篇更偏重业务相关的学习,代码层面设涉及不多

image.png

离线计算

  • 计算任务有时间间隔,比如5分钟计算一次,类似的实现场景

    特点

  • 数据量巨大,保存时间长

  • 在大量数据上进行复杂的批量运算
  • 数据在计算之前已经完全到位,不会发生变化
  • 能够方便地查询计算结果

    实时计算

  • 实时计算则是数据是不停的产生,不停的运算,不停的输出

    场景

  • 电商成交量实时大屏

  • 港口流量实时分析
  • 证券系统买入卖出实时统计

    能解决的问题

    image.png

    市面上的流计算平台做到了什么

    image.png

    我司vs竞品

    image.png

    采集数据的方式

  • mysql 下的binlog 与 间隔轮训

    • 间隔轮训。 顾名思义 ,隔段时间去请求数据库得到数据库数据返回
    • binlog 则涉及到 流表二向性相关的知识点,本篇吧binlog当作是数据库的ddl日志,通过ddl日志可以获取到数据库操作数据,这样理解即可。

      编写flinksql进行处理后输出到目标表

      我司的flinkstreamsql 与 flinksql 对比

      测试点

  • 定制化flinksql的在线ide

  • 运维 metrics 图形是否展示正常
  • 实时采集到的数据准确度,有无丢失,是否按照逻辑完成提取跟写入
  • 用户自定义函数 jar包的导入,计算任务导出
  • 在线问题的复现,修复之后的确认,问题log追溯方式方法,追溯思路

    数据中台做了什么事情?

  • 业务产生数据。—- 中台治理数据反哺业务发展。

    Flink学习前置知识了解

    数据集合类型

  • 无穷数据集: 无穷的持续继承的数据集合 实时计算中

  • 有界数据机:有限不会改变的数据集合 离线计算中

    常见的无穷数据集有哪些?

  • 用户行为数据,即,用户与客户端的实时交互数据

  • 应用实时产生的log
  • 金融股票市场的实时交易记录
  • 类似与iot之类的物联网信息记录,比如港口进出口流量,

    数据运算模型

  • 流式

    • 只要数据一直产生,计算就持续的进行
  • 批处理

    • 在预先定义的时间内运行计算,当完成时释放计算机资源

      Flink

  • 可以处理有界的数据集,也可处理无界的数据集,简单来说,批流两种方式都可以

image.png
image.png
image.png
上面三张图转自 云邪 成都站 《Flink 技术介绍与未来展望》,侵删。