《vivo数据集成稳定性与数据质量保障及可观测实践_易龙.pdf》由会员分享,可在线阅读,更多相关《vivo数据集成稳定性与数据质量保障及可观测实践_易龙.pdf(34页珍藏版)》请在三个皮匠报告上搜索。
1、vivo数据集成稳定性与数据质量保障及可观测实践vivo互联网 大数据架构师/易龙目录vivo数据集成平台架构及功能vivo数据集成稳定性保障实践vivo数据集成链路数据质量保障实践vivo数据集成可观测实践vivo数据集成平台架构及功能数据接入数据接入业务层业务层产品平台层产品平台层产品能力层产品能力层工单管理任务管理用户维度用户维度监控告警管理任务治理集群管理运维维度运维维度数据质量监控可观测业务业务数据传输集成数据传输集成构建实时离线一体化数据仓库多种同步方式批量(离线)全量/增量,实时同步,全增量一体推荐、风控、分析等实时业务SDK接入Agent日志接入DB接入多场景解决方案支撑多场景
2、解决方案支撑多种同异构数据源数据同步源:Kafka/Mysql/MongoDB/Pulsar/目的:Kafka/Pulsar/Hive/CK/Hudi/HBase/实时客户分析及精准推荐实时营销活构建客群标签画像业务日志离线、实时接入离线异构数据源同步实时异构数据源同步业务多维数据分析数据接入一键诊断SLA管理产品能力地图产品能力地图 Bees,是,是vivo的一站式数据集成平台,它支持将多场景下多样化、分散的数据源,统一汇聚到大数据存的一站式数据集成平台,它支持将多场景下多样化、分散的数据源,统一汇聚到大数据存储,是数据流入大数据体系的一座桥梁。储,是数据流入大数据体系的一座桥梁。数据量大小
3、数据量条数PB级/日万亿级/日数据完整性可用性99.999999%99.99%数据时效性500msSLA管理业务1业务2业务3业务4分层架构图分层架构图核心组件架构图核心组件架构图 BeesBees监控模块监控模块 监控、指标展示与告警 Bees-ManagerBees-Manager 工单接入管理 任务管理 采集配置管理中心 用户平台服务【极重要】Bees-SDKBees-SDK 数据接入 SDK 工具包 Bees-AgentBees-Agent 源端日志接入组件 部署在业务机器 影响CPU、内存、文件句柄、IO Bees-BusBees-Bus 数据传输管道服务【极重要】Bees-XBee
4、s-X:实时数据同步服务 支持binlog日志采集 mongdb oplog实时采集 支持其他异构数据源数据同步核心功能介绍核心功能介绍bees-xNginx/Tomcat/埋点日志传输到Kafka(500ms内)支持容器服务日志支持过滤支持同时写多Kafka业务隔离对主库无性能影响保障秒级别时延支持指定点位进行数据续传支持接入到 Kafka、Pulsar支持接入到 Hive、CK等Nginx/Tomcat/埋点日志按小时粒度批传输支持容器服务日志按10分钟粒度批传输支持限速业务数据无需落地日志更低的时延(毫秒级)支持 Avro、Thrift 协议支持 Java、C+语言实时日志接入离线日志接
5、入DB全增量日志实时接入SDK数据接入核心问题及挑战核心问题及挑战 链路稳定性 链路数据质量 链路可观测性网络/服务端接入传输ETL(Spark/Flink)数仓数据上报核心问题维度 被动接收告警,问题定位恢复慢 散点式救火,运维成本高 数据产出时效性波动大 告警多而杂,处理成本高痛点问题 如何从根本上长效的根本上长效的保障稳定性 如何从全链路视角链路视角保障数据时效性 如何有效准确的有效准确的告警并快速恢复快速恢复核心挑战vivo数据集成稳定性保障实践稳定性保障整体方案稳定性保障整体方案MTBF:(Mean Time Between Failures),平均故障间隔时间MTTF:(Mean
6、Time To Failure),平均无故障时间MTTR:(Mean Time To Repair),平均修复时间架构组件:核心服务架构组件:核心服务&存储存储 多活高可用多活高可用bees-agentbees-managernginxbees-managerLVS+Keepalivedbees-sdkbees-busbees-monitorportalmasterslave1slave0proxy0proxy1agagzzbees-managernginxbees-managerSlave3slave2proxy2proxy3zzIDC1IDC1IDC2IDC2zookeeperagentM
7、ySQLMySQLbees-managerbees-manageragag同服务同服务同数据同数据核心管控服务集群API服务集群Portal服务集群 核心服务多活高可用 服务拆分多节点部署 跨机房容灾 存储多活高可用 跨机房容灾 Proxy,无中心集群,支持高可用 Agent,基于Raft选主,支持高可用 节点均支持动态扩缩容 Proxy配置基于Zookeeper进行同步,保障一致性架构组件:核心组件支持健康检查架构组件:核心组件支持健康检查 链路核心组件心跳上报 异常及时发现,追数补数管控服务bees-agent心跳上报bees-sdkbees-bus心跳上报消息队列心跳上报其他域名可用性检
8、查采集配置流采集数据流架构组件:物理标签隔离机制架构组件:物理标签隔离机制业务A任务a标签业务B任务b标签业务C任务c标签*.logbees-agentbees-agentbees-managerbees-sdkKafkaKafka集群集群源端采集源端采集bus节点0bees-agentbus节点n业务B任务b业务C任务cbus节点0bus节点1bus节点0bus节点1bees-busbees-bus*.log*.log业务A任务a 标签统一通过bees-manger管理 不同业务任务分配不同标签 按标签和bees-bus建立连接 bees-bus使用大内存物理机器 同一台bus机器负责一个业
9、务 bees-bus备机池,及时扩容架构组件架构组件-实时链路容灾:实时链路容灾:SDKSDK落盘重发机制落盘重发机制 平台化配置管控 配置动态感知 支持落多目录多文件业务机器bees-sdkbees-agent*.logSDK接入任务配置业务-sdk1业务-sdk2Agent接入任务配置sdk2-log业务*-log采集管控服务bees-bus机器bees-busbees-bus扩容、sdk落盘任务创建业务服务CMDBKafka落盘开关关闭落盘开关开启配置流数据流机器扩容任务创建相同标签2.12.11.21.22.22.23.13.13.23.24 47 76 68 85 59 93.33.
10、31.11.12.32.3架构组件架构组件-实时链路容灾:数据反压缓存动态落盘重发实时链路容灾:数据反压缓存动态落盘重发sourcechannelsinkFqueueSinkbees-agentFqueue*.logbees-busbees-busPulsarPulsar集群集群bees-managerselectortask managerbees-sdkFqueuePollMnagerKafkaKafka集群集群数据接入数据接入 上下游联动,及时感知异常 全链路流量波动监控 及时数据反压告警 引入Fqueue落盘 支持顺序写落盘 支持落单盘和多盘 独立FqueueSink隔离发送架构组件:
11、离线链路写架构组件:离线链路写HDFSHDFS主备切换主备切换&双链路容灾快速切换双链路容灾快速切换 离线HDFS集群容灾能力 上下游联动 分钟级切换耗时 核心SLA业务 容灾触发切换 分钟级切换耗时链路故障演练链路故障演练故障演练步骤确定演练对象历史故障重大迭代制定恢复预案确定验收指标评估影响范围实施故障演练触发恢复预案记录过程事件生成待办项主动隐患识别事件故障记录分析主动巡检识别隐患制定故障处理预案定期故障预案演练专项优化根治隐患思路平台稳定性保障:规范变更发布流程稳定性保障:规范变更发布流程事前事中事后有预案有测试有审核有通告低峰期变更要灰度要观察有事要通告点检checklist要值守有
12、通告明确版本功能明确灰度指标稳定性验证(种子用户)低频用户推广核心用户推广高频用户推广全网用户推广确定灰度管控策略风险应对措施回滚方案协作流程梯度灰度关键步骤变更发布原则变更类型梳理常规配置变更步骤梳理通知范围基础准备平台操作大版本升级常规DB变更紧急监控告警值班规范点检checklist要验收vivo数据集成链路数据质量保障实践链路数据质量链路数据质量-数据完整性数据完整性支持核心SLA业务离线实时双接入支持多种数据对账方式 离线全链路对账 实时全链路对账 核心业务双链路对账SLA动态保障全链路数据完整性卡点校验备份重接、追数补数支持双链路数据对账、链路关键卡点校验、发现异常并追数补数,保障
13、支持双链路数据对账、链路关键卡点校验、发现异常并追数补数,保障SLASLA业务数据完整性要求业务数据完整性要求链路数据质量链路数据质量-数据时效性:整体思路数据时效性:整体思路接入传输ETL数仓数据上报 Inotify感知 轮询发现 重采、补采 延迟告警 断点续传 动态扩容 实时上报 退避重发 断点续传 流量监控 波动告警 CDN可用性 Nginx监控 网络设备监控 异常监控 容灾切换 延时告警 任务重跑 断点续传SLA保障 资源预测 北极星指标 血缘依赖 根因分析 动态调度网络/服务端措施SLA申报SLA审核SLA签订SLA数据核心分类分级P0P1P2高优普通计算资源队列匹配全链路打标核心保障全链路协作指标基线专项保障从全链路视角,结合从全链路视角,结合SLASLA,制定整体措施,保障数据及时产出,制定整体措施,保障数据及时产出T0T1T2优先级:P0P1P2SLA时间:T0T1-智能模型)智能模型)增强增强 可观测可观测 对接对接 自动恢复自动恢复 的能力的能力