首页 > 其他分享 >大数据实时链路备战——数据双流高保真压测

大数据实时链路备战——数据双流高保真压测

时间:2024-10-22 14:35:21浏览次数:5  
标签:1.5 高保真 1.2 双流 压测 topic 链路 数据

作者:京东零售 京东零售

一、大数据双流建设

1.1 数据双流

大数据时代,越来越多的业务依赖实时数据用于决策,比如促销调整,点击率预估、广告分佣等。为了保障业务的顺利开展,也为了保证整体大数据链路的高可用性,越来越多的0级系统建设双流,以保证日常及大促期间数据流的稳定性。建设核心数据链路双机房,双流双活。同时双流建设需要整条链路上的所有环节双机房部署占用了双倍的物理资源;整个建设过程要协同上下游各环节(数据生产方、数仓加工方、中间处理节点、业务消费方),也会消耗大量的沟通建设成本。为了达到资源消耗和业务稳定性的平衡,特制定双流建设标准和实施流程以引导业务方合理评估双流需求,顺利开展双流建设实施。

1.2 数据双流的建设评估维度和标准

编号 维度 评估标准 标准定义 & 备注
1 系统等级 0级系统 0级系统为公司最核心的业务服务系统,一旦发生不可用会直接影响黄金交易流程或影响公司名誉、品牌、集团战略、营销计划等,可能造成P0-P2级事故发生。0级系统的定义以零售子集团线上事故定级、定责及扣分标准中4.1-4.2定义为准。0级系统会在服务器资源和人力资源方面有倾斜,但0级系统要确保高可用,会与事故级别紧密关联。
2 任务等级 L0实时任务 服务线上0级系统的任务具体任务等级细侧参见实时数据平台作业分级管理规范协议等级设置参考说明。
3 物理资源 业务方申请并且承担双流建设所需要的物理资源消耗物理资源成本合理。备流按照主流80%的承载量建设(资源的80%) 业务方需要提供具体的物理资源信息:a. 物理资源成本包括存储资源、计算资源、带宽、队列资源等。b. 涵盖上游生产系统存储、数仓加工方、中间处理节点、业务消费方等各个环节。c. 评估流量和交易两个方面
4 数据时效性 大促0点(或对应相应业务高峰点)数据时效性要求<=20分钟 或平时数据时效性要求<=40分钟  
5 数据峰值 大促峰值预估(交易、流量)平时峰值预估(交易、流量) 数据峰值作为主要的参考,但是新系统在没有数据参考情况下,会根据业务是否是集团战略这一条做适当调整。其它条件满足,但是数据峰值很小的情况下,一般不建议双流,特殊情况另讨论。
6 生产源 生产源必须是双机房部署  
7 业务场景 数据缺失会造成XX级事故 业务方提供完整的业务场景和发生故障时的影响以帮助评估

二、大数据双流憋坝高保真压测

2.1 双流憋坝压测

从21年大促备战开始,大数据侧核心数据链路,从单模块单任务的压测,转向全链路憋坝压测,把泄洪闸口上移,压测范围覆盖更广,流量和交易同时泄洪,高保真大促网络峰值,资源竞争场景,同时数据产品(黄金眼、商智、作战指挥室大屏)会在泄洪时同时进行读查询的压测,模拟大促读写峰值并行的真实大促场景。

2.2 双流憋坝的压测目标制定

(1) 压测目标设定,一般会参照历史峰值和市场预估,给出核心交易、流量主题链路峰值预估,例如22年双11的1.2倍。关键的数据流topic,会给出预估消费峰值供下游参考,如下表格所示(数据涉及保密不做详细展示)

 


 

2.3 双流憋坝的压测方案

(1)交易的憋坝方式,通过停止同步任务憋单 ,交易双流架构图如下所示:

 


 

(2)流量的憋坝方式,流量无损憋坝压测是通过停止采集服务写JDQ写集群的方式憋流,不参与压测的业务方,可以切换到JDQ4澜沧江_点击流新建流(压测期间新建JDQ写集群)保证下游业务可以在憋流压测期间,正常消费流量实时数据,做到无损。

 


 

2.4 双流憋坝压测规范

(1)全链路压测的具体憋单、憋流开始时间以及泄洪时间,每次压测前,会提前24~48小时发出通知(邮件+工作群),通知发出后,泄洪时间不再调整

(2)全链路压测会进行集团报备,避开重要促销活动,压测要避开存储(hbase、jimdb、ES)、JDQ、JRC 等自身的灾备演练,以免无效压测

2.5 失真场景的高保真压测

平时订单中预售订单占比过低,预售订单 平日峰值/大促峰值=0.05%~5.9%,峰值也无法达到要求,且不能指定场景,例如付定金和付尾款场景。所以预售订单无法在双流憋坝压测中实现高保真,所以做了大数据预售链路的整体改造,联合在线军演压测(业务生产系统的压测)实现预售链路的高保真压测补充

落地方案:军演负责提供预售订单数据和付定金付尾款场景,大数据链路进行改造兼容压测进行数据压测且不污染线上数据

如下图所示: 黄色部分为在线军演提供数据的对应存储——影子库表 。绿色部分为压测新增,最上层为压测数据源(JMQ/JDQ) ,下面是为了压测搭建的透传压测环境以及写影子存储。黄金眼预售通用源和商智预售交易通用源对应任务改成双进双出,同时可以处理线上数据源和压测数据源,线上数据写入线上输出topic和线上存储。 压测数据源的数据处理后输出压测数据的topic,写入影子存储。这样线上拓扑不用随着每次压测改动,同时,下游业务方也可以灵活选择是否参与压测。

 


 

三、大数据憋坝压测期间,业务方的迁移方案

3.1 双流憋坝压测对于业务方的影响

在大数据双流压测的憋流和憋单期间,憋流和憋单对应的机房(汇天/廊坊)无实时数据下发,泄洪后恢复。不参与压测的业务方,需要做对应的切换。

3.2 不参与压测的业务方的迁移方案

(1)切换集群:

A、交易不涉及,交易从源头topic都是双流双活,业务可以切换消费到不压测机房对应的topic即可

B、流量直接消费点击流吐出的topic,需要切换到无损压测集群“JDQ4澜沧江_点击流新建流”。本次切换集群,支持一键迁移,不用重启任务,要使用这次功能,需要升级jdq-sdk,jdq sdk版本是jdq4-clients:1.3.0-SNAPSHOT flink:1.10/1.12/1.14-1.0.9-SNAPSHOT。如果迁移过程中看不到集群“JDQ4澜沧江_点击流新建流”,可以联系平运维同学支持

(2)切换topic鉴权

A、交易是双流,廊坊和汇天都有对应的topic,不参与压测的业务方可以申请,消费非压测机房对应的topic即可

B、流量不是消费采集服务直接吐出的topic,消费的是流量实时数仓及以下链路的topic,也是双流双活,切换消费到非压测机房对应的topic即可。

 

大数据双流憋坝压测(方案、影响、业务方迁移方案)——内部版本(这部分对外部保密不能发布,外网发布的时候这部分不需要,前面就是完整版本)

一、大数据双流憋坝简介

1.1 数据双流

大数据时代,越来越多的业务依赖实时数据用于决策,比如促销调整,点击率预估、广告分佣等。为了保障业务的顺利开展,也为了保证整体大数据链路的高可用性,越来越多的0级系统建设双流,以保证日常及大促期间数据流的稳定性。建设核心数据链路双机房,双流双活。同时双流建设需要整条链路上的所有环节双机房部署,占用了双倍的物理资源;整个建设过程要协同上下游各环节(数据生产方、数仓加工方、中间处理节点、业务消费方),也会消耗大量的沟通建设成本。为了达到资源消耗和业务稳定性的平衡,特制定双流建设标准和实施流程以引导业务方合理评估双流需求,顺利开展双流建设实施,详细参见:双流建设评估标准

1.2 大数据双流憋坝压测

从21年大促备战开始,大数据侧核心数据链路,从单模块单任务的压测,转向全链路憋坝压测,把泄洪闸口上移,压测范围覆盖更广,订单和交易同时泄洪,高保真大促网络峰值,资源竞争场景,同时数据产品(黄金眼、商智、作战指挥室大屏)会在泄洪时同时进行读查询的压测,模拟大促读写峰值并行的真实大促场景

1.3 大数据憋坝与军演的关系

(1)军演,是针对生产业务系统的压测,主要涵盖首页、搜索、列表、商详、活动、购物车、结算页、订单、优惠券、礼品卡、支付、网关、OFC、物流、售后及依赖的上游动态系统。压测所用的sku是测试sku,压测的订单会打sendpay140=2或者3的标识,不会污染线上真实数据。

(2)大数据憋坝,是从停止同步任务开始,憋真实的线上流量,达到一定的量后,泄洪,所有压测数据都是真实线上数据。

(3)大数据憋坝与军演的关系:

A、军演压测数据不会影响大数据链路

B、大数据泄洪的时间,需要避开军演起量的时间,否则源头订单源泄洪会有拖尾

C、对于预售这种平时憋单,无法达到大促场景和量级的特殊订单场景,军演与大数据会做联合高保真压测

标签:1.5,高保真,1.2,双流,压测,topic,链路,数据
From: https://www.cnblogs.com/Jcloud/p/18492651

相关文章

  • Linux通过复制网卡信息配置链路聚合
    1.首先通过命令查看网卡信息名称ifconfig2.之后进入到example_ifcfgs/3文件夹中cd/usr/share/doc/teamd-1.25/example_ifcfgs/33.然后分别修改eth1、eth2、team_test0修改里面的配置信息(使用以下命令是已经进入到目录/usr/share/doc/teamd-1.25/example_ifcfgs/3视图下)......
  • 【计网笔记】数据链路层
    向上提供透明接口向下将比特流拆分为若干个帧,为每个帧计算校验和接收端基于校验和检查帧内的比特差错向上网络层接口无确认的无连接服务以太网无需逻辑连接双方无需确认有确认的无连接服务IEEE802.11(WiFi)无需逻辑连接接收方确认收到帧发送方如果超时未确认,就重新......
  • 链路与应用负载
    为什么需要负载如今越来越多的服务选择上云加入到互联网方便人们的使用人们对服务的访问质量要求更高对于高可靠性:电源:往往采取双电源模式当电源出现故障网络不会陷入瘫痪线路:有静态聚合将多条线路逻辑变成一条线路数据包会负载均衡的形式从多条逻辑成一条的......
  • 数据链路层知识点总结2
    目录前言一、什么叫做传统以太网?以太网有哪两个主要标准?二、试说明10BASE-T的“10”“BASE”和“T”所代表的意思三、以太网交换机有何特点?用它怎么样组成虚拟局域网?四、以太网使用CSMA/CD协议是以争用方式接入到共享信道的,这与传统的时分复用TDM相比有何优缺点总结......
  • 【教程4>第3章>第22节】基于双向链路的自适应调制解调通信链路FPGA实现1——理论分析研
      欢迎订阅FPGA/MATLAB/Simulink系列教程《★教程1:matlab入门100例》《★教程2:fpga入门100例》《★教程3:simulink入门60例》《★教程4:FPGA/MATLAB/Simulink联合开发入门与进阶X例》目录1.软件版本2.基于双向链路的自适应调制解调通信链路理论分析3.双向链路自......
  • 安乃达:用CRM构建从销售到管理到售后的全链路数字化运营平台
    安乃达驱动技术(上海)股份有限公司((简称:“安乃达”,股票代码为:“603350”))自2011年以来,公司通过多年的研发与积累现有直驱轮毂电机、减速轮毂电机和中置电机三大系列产品,并具备与电机相匹配的控制器、传感器、仪表等电驱动成套系统的配套供应能力。安乃达矢志不渝地致力于为您提......
  • 链路聚合+ACL
    链路聚合生成树:多根链路:最大的问题——阻塞掉运行在STP之上  -->  多根链路=不阻塞 链路聚合端囗聚合链路捆绑:多根链路逻辑上的捆绑在一起,当STP进行拓扑计算时,此时会按照聚合之后的链路计算。 特点:1.提升带宽2.提高网络的高可用性3.负载分担 链路聚合:点......
  • san网络ISL链路聚合
    san网络ISL链路聚合ISL链路聚合ISL(Inter-Switch-Link)链路聚合就是ISLTrunking,把两台交换机之间满足一定条件的多条物理路径合并成一条逻辑路径的技术。交换机配置Trunking后可以扩展链路的总的带宽和提高链路的可靠性。ISL方式级联的交换机间的多个路径要配置Trunking,要形成Tru......
  • Spring Cloud Gateway关键点全局Token过滤器,局部过滤器接口耗时,全链路跟踪TraceId日志
    一.全局Token过滤器在SpringCloudGateway中,实现全局过滤器的目的是对所有进入系统的请求或响应进行统一处理,比如添加日志、鉴权等。下面是如何创建一个全局过滤器的基本步骤:步骤1:创建过滤器类首先,你需要创建一个实现了GlobalFilter接口,创建一个全局token过滤器。@Slf......
  • jmeter压测问题: JAVA.NET.BINDEXCEPTION: ADDRESS ALREADY IN USE: CONNECT
    1.报错信息:2. 问题排查  1)询问AI,说端口被占用。修改了jmeter的端口号后,仍是不行  2)最后找到一篇博客,真的解决了问题     我只进行了,增大端口号,减少Time_Wait, Close_WAIT没有处理,仍解决了此问题 ......