版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
京东⼴告计费系统的架构演进京东⼴告计费系统的架构演进01背景介绍02 三个阶段03 未来重⼼⼀、背景介绍日志系统中间一环数据仓库的建设IO密集计算任务事件驱动型按C、M和A计费系统本质数据链路下游广告物料的召回播放、报表的时效性广告系统数据一致性要求高吞吐量高低延迟京东⼴告业务特点账户体系复杂各种模式下的子账户结构各个层级下的专款专用营销模式多元导致的多种资金类型站内广告玩法丰富预算多种多样,多种级别的预算控制。计划和活动等层级的预算玩法。起步较早几乎伴随着国内的大数据浪潮而兴起站外媒体模式多直投模式头条及快手业务模式复杂GD/PD等模式对接腾讯广告的深度结合如何衡量⼴告计费系统?指标单位受何影响稳定篇应用级一致性保障强/弱/最终网络/宕机/系统设计等系统可用性百分比系统上下线/宕机等性能篇系统平均吞吐事件数每秒系统设计系统峰值吞吐事件数每秒同上事件平均延时毫秒同上事件延时TP99毫秒同上单账户最高吞吐事件数每秒单账户IO账户操作响应时长TP99等同上青铜时代从零到⼀2014年-2017年⽩银时代性能跃升2017年-2020年黄⾦时代⾛向⼀致2020年-⾄今⼆、京东⼴告系统演进的三个阶段青铜时代数据链路Stream
SystemCPC
BillingFinanceServerData
WarehouseB1B2EPost-anti
clickBilled
click
blockBilled
impression
blockPost-anti
refund
clickPost-antiimpressionIOinteractionDA1A2B1CDA1A2CPM
BillingRealtimeReportReport
EngineMySQLRedisHBaseBudgetDedupeCostStream
SystemB1A1A2CECData
Mining⼩结13快速搭建并交付了⼀套系统财务与统计完全分离。独⽴的事件计费处理,不容易互相影响基本满⾜业务需求2白银时代直⾯问题性能出现瓶颈任务不稳定,经常延时数据质量较差问题摸排效率低性能提升反范式的设计基于乐观锁的计费流式的设计财务扣费数据保障应⽤⼀致性校验与保证完备的全链路监控问题Problems方案Solution解决问题性能出现瓶颈任务不稳定,经常延时数据质量较差问题摸排效率低性能提升数据链路上任务的整合反范式的设计基于乐观锁的计费流式的设计财务扣费数据保障应⽤⼀致性校验与保证完备的全链路监控问题Problems方案Solution数据链路Stream
SystemFinance
PlatformBillingFinance
Operation
ServiceFinanceServiceBilling
/
Finance
StatesBudFinDedupBalBatch
ReportBudgetServiceReport
Engine
/
JST
/
Various
Down-streamsFinance
Settle
ServiceJD
Settle
PlatformBudget
Operation
ServiceDelivery
PlatformB1B2B1B2Post-anti
clickPost-anti
refund
clickBilledclickCBilling
failed
clickPost-anti
impressionBilled
impressionBilling
failed
impressionDA3ConfA1A2A3CDA1A2CampaignOfflineAccountOffline乐观式上锁的扣费AccountFinanceServiceBilling
SystemDeposit/Withdraw֗᷇Deductṛ᷇场景说明处理流程图Lock
AccountDeduct
according
MapRead
to
Sync?<Account
Modified
?Rewind
the
accountLocal
Exists?Fetch
From
remote1<<CommitStartEnd1Fetch
and
update
Local保证最终⼀致性的统计系统Lambda架构实时系统尽⼒写库,不保证准确性批式系统按⽇调度,保证数据最终⼀致系统描述实时系统:以实时读到的数据,追写数据⾄DB批式系统:以HDFS数据为基准,重新计算并覆写数据⾄DB两阶段提交预写阶段:先写数据⾄HDFS,再追写⾄数据库提交阶段:写HDFS成功即进⼊提交阶段,将offset提交⾄持久化存储RealtimeReportReportIncr
Micro-BatchBatch
ReportStreaming
SystemABPost-anti
clickPost-anti
impressionABMeta
Data1:SUH–FRPPiW2:FRPPiWReport
Engine基于BloomFilter的⽇志去重slot管理模块提交管理:每5k条日志提交一次P:误判概率N:存储数据条目位图slot大小预估ln
𝑃𝒎
=
−𝑛
ln
2
)
≈
𝟏.
𝟏MB整体思想多worker节点
+
哈希
+
bucket容量管理
+
slot提交管理每个slot对应一个bloom-filter,且限制了每个slot容量的上限对桶内slot遍历探查并更新是否重复bucket容量管理模块弹性扩容管理:对slot容量探查,当发现当前slot容量已满时,申请新的slot按每两小时划分slot过期管理:每个slot根据创建时间自动过期基本面分析即不考虑弹性扩容的前提下可行性分析每两小时承载10亿日志内存分析单个worker约占用
660MB内存性能分析多次哈希计算
+批量提交(30ms)Bucket
0Slot0Slot1……Bucket
1Slot0……Bucket
49Slot0Slot1hash(id)Slot1Slot
Pagename:WDVN,G
+EXFNHW,G+KRXU+QRBloom
bitmapBloom-Filter
bitmapCountCommit-tmDedup
WorkerDedupWorker
Dedup
WorkerKafka
Sourceshuffle(id)……全链路监控AppsBillingRealtimeReportFinanceServerMQ……PipelineLogstashLogstashLogstash……ElasticClusterElasticsearchNode3VisualizeGrafanaElasticsearchNode2ElasticsearchNode1⼩结性能跃进解决了性能上的问题,稳定度过多个⼤促可用性提升模块间职责更加清晰,也更加独⽴,使得各个模块更加稳定链路延迟降低有效降低了数据链路延迟,度过了⼤促的考验链路监控丰富的各项指标,实时全盘掌握系统状态01020304黄金时代直⾯问题复杂的站外模式带来的技术对接链路上的数据丢失或重复问题机器宕机导致的数据丢失重放时导致的数据重复核⼼数据的⼀致性保证流式和批式计费⽀持基于Flink流批⼀体化的API链路Exactly
Once的设计与实现Kafka事务⽀持两阶段提交持久化的KV存储基于Raft协议的强⼀致实现问题Problems方案Solution解决问题复杂的站外模式带来的技术对接链路上的数据丢失或重复问题机器宕机导致的数据丢失重放时导致的数据重复核⼼数据的⼀致性保证流式和批式计费⽀持基于Flink流批⼀体化的API链路Exactly
Once的设计与实现Kafka事务⽀持两阶段提交持久化的KV存储基于Raft协议的强⼀致实现问题Problems方案Solution流批⼀体的处理得益于Flink的流批⼀体处理接⼜,更⾼的可维护性统⼀的处理流程减少部分业务代码的开发,提升业务迭代的效率Files%DWFKBilling
SystemFilesEventsEvents多制式计费⽀持%DWFKStreamStreamConfFinBudDedupBal强⼀致的分布式KV系统ClientMasterz=3State
MachineConsensusModule1:]=37:VXFFHVVSlavex=1y=2z=3State
MachineConsensusModuleSlavez=3State
MachineConsensusModuleBinlogBinlogBinlog2:]=33:]=33:]=3x=1y=2z=3x=1y=2z=35:DFN4:]=34:]=35:DFN6:flXVK
]=38:flXVK
]=38:flXVK
]=3基于Pika的分布式KV存储兼容Redis协议,数据结构灵活强⼀致的实现基于Raft协议的标准实现流量管理模块的⼀致性实现Exactly
Once模式
+
Kafka事务提交KafkaSinkx1x2x3y1y2y3Checkpoint
Coordinator%1%1KafkaSinkCheckpoint
Coordinator%1%1KafkaSinkCheckpoint
Coordinator1RWiI\
%1TransactionCoordinator%HJiQTransactionCoordinatorZUiWHTransactionCoordinatorx1x2x3y1y2y3&RPPiW⼩结一致性打造了强⼀致的分布式系统,保证异常情况下重要数据的不丢失多制式实现了流批⼀体的计费系统。减
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 土地互换协议书签订范本
- 中医养生诊所专家聘用合同模板
- 高三年级班主任个人工作总结
- 生产实习报告范文集锦十篇
- 舞台灯光系统施工方案两篇
- 游戏活动实施策划方案经典5篇
- 学生资助工作监督检查制度
- 英语阅读课教学培训心得体会
- 上海财经大学浙江学院《微生物学C》2023-2024学年第一学期期末试卷
- 实习律师自我鉴定
- 美国史智慧树知到期末考试答案章节答案2024年东北师范大学
- (完整版)50028-城镇燃气设计规范
- 江西宏柏新材料股份有限公司功能性气凝胶生产基地建设项目环评报告书
- 日本隧道与地下工程新技术(PPT142页)
- 国家开放大学《思想道德与法治》社会实践参考答案
- 可爱的嘉兴三年级教材分析与教案(共23页)
- 小学语文五年级下册期末综合练习试题含答案(共2套)
- 玩具风险评估报告
- 二年级上册认识时间练习题
- 电视监控系统招标评分表
- 国有企业采购管理制度
评论
0/150
提交评论