美文网首页flink
01-数据架构演变

01-数据架构演变

作者: 当当一丢丢 | 来源:发表于2020-02-16 18:20 被阅读0次

目录

架构历程

我们从两个维度纵观数据架构的演变:一个是数据集的使用方式,另一个是这种使用方式的使用范围-即(所说的大数据框架,Hadoop,storm,spark等)主要针对企业内部进行数据挖掘和分析

1.传统数据基础架构

1.1单体应用数据架构

单一的RDMS(MySQL,Oracle)作为数据库对外部所有应用提供服务(包括企业外部的业务应用及内部进行数据挖掘和分析的应用)

单体数据库如下图

单体数据库

1.2微服务应用数据架构

主要理解数仓的概念

1)每个服务有各自的DB,各自DB支撑各自的业务逻辑

2)为了满足企业内部的数据挖掘和分析要求,且鉴于微服务各自DB(主要是业务数据)分散不集中的情况:

a. 抽象出数据仓库的概念,数仓周期性从不同DB中进行数据抽取、汇总-作为存储角度

b.数仓会进行数据的加工、转换-构建不同的数据集(可以理解成不同格式)

3)微服务数据库架构如下

微服务数据库架构

2.大数据数据架构

2.1背景

1)RDMS规模、数据量、计算处理能力的限制

2.2产品

2.2.1 纯Hadoop时代

说明:

a.存储-HDFS

b.ETL-Hive

c.实时交互查询-Impala

优劣:

a.Hadoop作为大数据平台,其数据需周期从业务系统中同步->一系列ETL转换->形成数据集市,影响时效性

2.2.2 Lambda架构时代(只有storm,但spark, flink未出现的年代)

组成:

a.批量计算-Batch Layer(比如MapReduce),

b.实时计算-Speed Layer(比如Storm)

优劣:

a.平台复杂,运维成本高

Lambda架构如下

lambda大数据架构

2.2.3 Spark时代

思想:

a.分布式内存处理框架

b.将数流切片分成微批的处理模型

c.一套计算框架容纳:批处理+流处理

d.spark本身是批处理模式(局限)

3.有流状态的计算架构

3.1回归本质

1)数据产生的本质是一条条真实存在的事件,我们最期望的是每产生一条数据就可以立刻得到计算结果(想要:数据产生过程中进行计算并直接产生统计结果)

2)前面的方式,都是有一点延迟(数仓存储,ETL转化等)

3.2有状态的流计算架构

a.状态即计算过程中产生的中间计算结果

b.每次计算新的数据都是基于之前的中间状态结果

c.中间状态从常驻内存

d.有状态计算方式最大优势:不需将原始数据从外部存储中取出再计算,也不需将计算结果落入外部仓库

3.3特点

a.时效性

3.4状态计算架构示意图

有状态计算框架

4.为什么是Flink

4.1 三大性能的综合体

大数据库框架考虑3个因素:高性能、高吞吐、低延迟

1.Flink

a.低延迟

b.高性能

c.高吞吐

2.Storm

a.低延迟

b.高性能

3.Spark

a.高性能

b.高吞吐

4.2 支持Event Time

基于窗口的计算(Windows)是大数据实时处理的核心概念

1)一般大数据框架只支持系统时间,即数据到达大数据系统时系统机器的时间

2)FLink支持按Event产生时间构造计算窗口的机制

避免网络耗时、机器状态对时间的影响,保存原数据产生的原生时间,不乱序

4.3 有状态计算

在内存保存中间数据

4.4 支持高度灵活的Windows窗口

基于不同类型窗口(即对数据流进行一定时间范围内的聚合运算)的实时数据统计

1)Time

2)Count

3)Session

4.5 基于轻量级分布式快照(SnapShot)实现容错-对异常问题的处理

1)分布式节点宕机、重启导致的内存状态数据丢失

2)Flink采用SnapShot机制 在执行过程中将采用基于SnapShot的checkpoint机制,将state状态信息持久化存储

4.6 基于JVM实现独立的内存管理

1)基于状态的流式框架处理,状态会耗用大量内存

2)Flink 对状态数据的内存处理采用特殊的二进制序列化方式,降低内存使用率

4.7 save point

1)SnapShot checkpoint解决异常问题时state的持久化

2)save point 解决对于24 hour运行系统出现系统升级、停机运维等主动停止计算时的状态保存

a.我要升级系统了,把原来的数据保存一下吧,"save point: 好的"

相关文章

  • 01-数据架构演变

    目录 架构历程 我们从两个维度纵观数据架构的演变:一个是数据集的使用方式,另一个是这种使用方式的使用范围-即(所说...

  • 魅族大数据运维平台实践

    一、大数据平台介绍 1.1大数据平台架构演变 如图所示魅族大数据平台架构演变历程: 2013年底,我们开始实践大数...

  • 魅族大数据运维平台实践

    一、大数据平台介绍 1.1大数据平台架构演变 如图所示魅族大数据平台架构演变历程: 2013年底,我们开始实践大数...

  • 魅族大数据运维平台实践

    一、大数据平台介绍 1.1大数据平台架构演变 如图所示魅族大数据平台架构演变历程: 2013年底,我们开始实践大数...

  • 网站架构演变过程

    网站架构演变过程 1.传统架构: 传统的SSH架构,分为三层架构 web控制层、业务逻辑层、数据库访问层。传统架构...

  • 数据库架构演变

    背景 在互联网初创时期,企业往往采用单体架构去搭建自己的应用系统,但是,随着企业的不断壮大,系统访问量不断随之上升...

  • 大数据架构演变 (1)

    大数据的架构介绍日志采集为例(流程如下图所示) 需要的模块和组件 1.用户的app (上报日志)2.log rec...

  • B端产品经理学习笔记08-企业级应用架构设计

    目录 传统企业的应用架构演变 多元化业务带来的应用架构演变 企业通用应用架构设计 传统企业的应用架构演变 什么是企...

  • 2019-04-19-主从复制架构演变-MHA高可用技术

    1. 主从复制架构演变介绍 1.1 基本结构 1.2 高级应用架构演变 1.2.1 高性能架构 (1)读写分离架构...

  • 2019-05-10MHA高可用技术

    1. 主从复制架构演变介绍 1.2 高级应用架构演变 1.2.1 高性能架构 1.2.2 高可用架构 3. 高...

网友评论

    本文标题:01-数据架构演变

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