通用广告引擎的索引设计和性能优化.pptVIP

  • 1
  • 0
  • 约2.35千字
  • 约 36页
  • 2024-06-05 发布于湖北
  • 举报

通用广告引擎的索引设计和性能优化.ppt

通用广告引擎的索引设计和性能优化阿里妈妈事业部师陀

Agenda背景索引设计和实现遇到的问题下一步工作性能优化过程性能优化小结QA

背景广告引擎的基本状况层级结构:广告主-广告计划-广告商品-竞价词

背景广告引擎的基本状况层级结构:广告主-广告计划-广告商品-竞价词广告查询流程Query解析-倒排查询-过滤-算分-排序-拼装结果返回

背景广告引擎的基本状况层级结构:广告主-广告计划-广告商品-竞价词在线查询流程Query解析-倒排查询-过滤-算分-排序-拼装结果返回索引数据:每天重建全量+实时更新增量

背景一年前:使用搜索引擎isearch的索引内核+自己开发的辅表结构相对实现复杂,正排读接口不清晰性能问题重构:新的通用广告引擎(一期)索引支持主辅表结构只做广告引擎需要的功能目标:性能和可维护性

索引设计倒排:全量+增量Payload字段可配置增量的多级可回收内存池

索引设计正排:主/辅表结构多种值类型:bit/int8/int16/…/float/string多种字段类型:单值/固定多值/变长多值定长字段和变长字段的紧密存储Package表的关联字段平铺

索引设计正排:主/辅表结构多种值类型:bit/int8/int16/…/float/string多种字段类型:单值/固定多值/变长多值Package表的关联字段平铺

索引设计正排多种值类型:bit/int8/int16/…/float/string多种字段类型:单值/固定多值/变长多值定长字段和变长字段的紧密存储Package表的关联字段平铺主/辅表+keyId-docId的hash表+DeleteMap

索引实现

索引实现

索引实现

索引实现

索引实现其他TableWriter的其他成员DeleteMapKeyIdHashTable相关小工具:indexLibPrinter

遇到的问题(1)Mmap的得失天然的弱持久化方案利用系统pagecache管理数据局部性

遇到的问题(1)Mmap的得失天然的弱持久化方案利用系统pagecache管理数据局部性脏页回写不可控

遇到的问题(1)Mmap的得失天然的弱持久化方案利用系统pagecache管理数据局部性脏页回写不可控短期解决方案内核:flush_mmap_pages=0

遇到的问题(1)Mmap的得失天然的弱持久化方案利用系统pagecache管理数据局部性脏页回写不可控短期解决方案内核:flush_mmap_pages=0Pagecache换入换出不可控

遇到的问题(1)Mmap的得失天然的弱持久化方案利用系统pagecache管理数据局部性脏页回写不可控短期解决方案内核:flush_mmap_pages=0Pagecache换入换出不可控mlock:不符合极端情况的异常处理需求

遇到的问题(1)Mmap的得失天然的弱持久化方案利用系统pagecache管理数据局部性脏页回写不可控短期解决方案内核:flush_mmap_pages=0Pagecache换入换出不可控mlock:不符合极端情况的异常处理需求另外的解决方案:使用shm替换mmap,主动控制持久化和故障恢复

遇到的问题(2)稳定性每天build全量的过程牵涉的系统太多太复杂故障恢复的能力需要加强解决方案:索引重整+索引压缩

遇到的问题(2)稳定性每天build全量的过程牵涉的系统太多太复杂故障恢复的能力需要加强解决方案:索引重整能力+索引压缩数据灵活性跟分布式build的结合批量更新能力

下一步工作广告引擎设计时的各项指标优先级稳定性正确性灵活性问题定位能力性能

下一步工作一期的新引擎还是很像搜索引擎dispatchersearchNodesearchNodesearchNodemerger

下一步工作dispatchersearchNodesearchNodesearchNodemerger分布式引擎索引数据中心服务化的searchNode集群期望的广告引擎

性能优化目标:searchNode的单机qps优化,主要是cpu优化方法:Perf热点分析代码优化业务层优化索引数据层优化Cpu资源利用最大化

性能优化过程全量qps全量rt增量qps增量rtBASE71526msstrncpy?memcpy109117ms增加结果初选178011msPartial_sort优化182311ms增加进程个数351521ms249130ms辅表数据平铺+bitFilter合并387919ms274327ms

性能优化小结工具帮助理解分析性能瓶颈,但不要仅对热点进行代码优化推荐Intelvtune的top-down视图

性能优化小结工具帮助理解分析性能瓶颈,但不要仅对热点进行优化推荐Intelvtune的top-d

文档评论(0)

1亿VIP精品文档

相关文档