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

上传人:枫** 文档编号:568772067 上传时间:2024-07-26 格式:PPT 页数:36 大小:863.50KB
返回 下载 相关 举报
通用广告引擎的索引设计和性能优化ppt课件_第1页
第1页 / 共36页
通用广告引擎的索引设计和性能优化ppt课件_第2页
第2页 / 共36页
通用广告引擎的索引设计和性能优化ppt课件_第3页
第3页 / 共36页
通用广告引擎的索引设计和性能优化ppt课件_第4页
第4页 / 共36页
通用广告引擎的索引设计和性能优化ppt课件_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《通用广告引擎的索引设计和性能优化ppt课件》由会员分享,可在线阅读,更多相关《通用广告引擎的索引设计和性能优化ppt课件(36页珍藏版)》请在金锄头文库上搜索。

1、通用广告引擎的索引设计和性能优化阿里妈妈事业部师陀Agenda背景索引设计和实现遇到的问题下一步任务性能优化过程性能优化小结Q&A背景广告引擎的根本情况层级构造:广告主-广告方案-广告商品-竞价词背景广告引擎的根本情况层级构造:广告主-广告方案-广告商品-竞价词广告查询流程Query解析- 倒排查询-过滤-算分-排序-拼装结果前往背景广告引擎的根本情况层级构造:广告主-广告方案-广告商品-竞价词在线查询流程Query解析- 倒排查询-过滤-算分-排序-拼装结果前往索引数据:每天重建全量 + 实时更新增量背景一年前:运用搜索引擎isearch的索引内核 + 本人开发的辅表构造相对实现复杂,正排读

2、接口不明晰性能问题重构:新的通用广告引擎一期索引支持主辅表构造只做广告引擎需求的功能目的:性能和可维护性索引设计倒排:全量 + 增量Payload字段可配置增量的多级可回收内存池索引设计正排:主/辅表构造多种值类型:bit/int8/int16/float/string多种字段类型:单值/固定多值/变长多值定长字段和变长字段的严密存储Package表的关联字段平铺索引设计正排:主/辅表构造多种值类型:bit/int8/int16/float/string多种字段类型:单值/固定多值/变长多值Package表的关联字段平铺索引设计正排多种值类型:bit/int8/int16/float/stri

3、ng多种字段类型:单值/固定多值/变长多值定长字段和变长字段的严密存储Package表的关联字段平铺主/辅表 + keyId-docId的hash表 + DeleteMap索引实现索引实现索引实现索引实现索引实现其他TableWriter的其他成员DeleteMapKeyIdHashTable相关小工具:indexLibPrinter遇到的问题1Mmap的得失天然的弱耐久化方案利用系统page cache管理数据部分性遇到的问题1Mmap的得失天然的弱耐久化方案利用系统page cache管理数据部分性脏页回写不可控遇到的问题1Mmap的得失天然的弱耐久化方案利用系统page cache管理数

4、据部分性脏页回写不可控短期处理方案2.6.18内核:flush_mmap_pages=0遇到的问题1Mmap的得失天然的弱耐久化方案利用系统page cache管理数据部分性脏页回写不可控短期处理方案2.6.18内核:flush_mmap_pages=0Page cache换入换出不可控遇到的问题1Mmap的得失天然的弱耐久化方案利用系统page cache管理数据部分性脏页回写不可控短期处理方案2.6.18内核:flush_mmap_pages=0Page cache换入换出不可控mlock:不符合极端情况的异常处置需求遇到的问题1Mmap的得失天然的弱耐久化方案利用系统page cache

5、管理数据部分性脏页回写不可控短期处理方案2.6.18内核:flush_mmap_pages=0Page cache换入换出不可控mlock:不符合极端情况的异常处置需求另外的处理方案:运用shm交换mmap,自动控制耐久化和缺点恢复遇到的问题2稳定性每天build全量的过程牵涉的系统太多太复杂缺点恢复的才干需求加强处理方案:索引重整 + 索引紧缩遇到的问题2稳定性每天build全量的过程牵涉的系统太多太复杂缺点恢复的才干需求加强处理方案:索引重整才干 + 索引紧缩数据灵敏性跟分布式build的结合批量更新才干下一步任务广告引擎设计时的各项目的优先级稳定性正确性灵敏性问题定位才干性能下一步任务一

6、期的新引擎还是很像搜索引擎dispatchersearchNodesearchNodesearchNodemerger下一步任务dispatchersearchNodesearchNodesearchNodemerger分布式引擎索引数据中心效力化的searchNode集群期望的广告引擎性能优化目的:searchNode的单机qps优化,主要是cpu优化方法:Perf 热点分析代码优化业务层优化索引数据层优化Cpu资源利用最大化性能优化过程全量qps全量rt增量qps增量rtBASE71526msstrncpy memcpy109117ms增加结果初选178011msPartial_sort优

7、化182311ms增加进程个数351521ms249130ms辅表数据平铺+bitFilter合并387919ms274327ms性能优化小结工具协助了解分析性能瓶颈,但不要仅对热点进展代码优化引荐Intel vtune的top-down视图性能优化小结工具协助了解分析性能瓶颈,但不要仅对热点进展优化引荐Intel vtune的top-down视图针对内核/硬件特性的优化需谨慎性能优化小结工具协助了解分析性能瓶颈,但不要仅对热点进展优化引荐Intel vtune的top-down视图针对内核/硬件特性的优化需谨慎关注数据部分性和整体代码质量CPI性能优化小结工具协助了解分析性能瓶颈,但不要仅对热点进展优化引荐Intel vtune的top-down视图针对内核/硬件特性的优化需谨慎关注数据部分性和整体代码质量CPICpu压不上去的几种缘由:并发压力不够网卡跑满/某个线程or进程的cpu跑满锁竞争strace + pstack + taskset + 逐个调高并发数性能优化的下一步数据部分性:全量数据重排小库化:顺应nehalem架构资源管理系统谢谢 Q&A

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号