网络广告投放和监测系统架构剖析
网络广告投放和监测系统架构剖析Bennett HongFor 2012华东 架构师大会Nov 18,2012Outline 互联网的商业模式 网络广告的商业逻辑 和形态 基础广告管理系统架构 最基础功能素材管理和投递 最简模型面临的三大问题 数据统计控制系统架构 计数的准确性和可靠性的常见解决方案 实时决策业务需求对系统架构的要求 广告业务系统未来的发展趋势互联联网的商业业模式 广告 各大门户、视频网站 游戏 盛大、巨人、畅游、完美 电商 几乎还都在亏钱 携程勉强可以算电商 淘宝其实是虚拟地产商业务业务 需求的发发展是架构进进化的源动动力网络广告的业务模式 网站 流量聚集 广告售卖 按空间&时间卖 按投放量卖 按受众卖网络广告系统最简架构广告资 源管理 库点位时 间预定素材管 理定时上 下线点位JS 脚本最基础的硬件和系统配置 LAMP架构 数据库独立服务器 关键数据做RAID但仍旧隐藏3个大坑最简简广告系统统之问题问题 系统扩统扩 充负载 均衡的常见方法 DNS轮询 切换慢,没有健康检查 LVS / NginX软件均衡,成本低,有部分健康检查 4-7层交换机成本很高,并发连 接可到数百万次/秒负载 均衡镜像1镜像2镜像N镜像同步 健康检查最简简广告系统统之问题问题 南北互联联南北互联解决方法 BGP带宽 很贵 智能DNS+双线/多机房 带宽成本较低,但系统复杂 可以自建DNS,也可以采用的智能DNS供应商上海电信 联通广东电信 联通辽宁公共网 教育网最简简广告系统统之问题问题 带宽带宽 成本降低带宽 成本的方法 启用HTTP gzip 开启浏览 者端素材缓存 选用便宜但不慢的二三线城市 动静分离,静态部分架设CDN广告主的新需求统计统计 和控制广告主开始关心: 广告投在哪里 多少人看到了广告 多少人点击了广告 如何优化点击转 化效率 他们有哪些属性 受众的感受如何 如何让对 的人看到广告不适合用于统计统计 的Apache日志使用Apache等日志做统计 的弊端 日志结构不易解析 HTTP头部参数可能缺失 客户端缓存导致漏记 混有无效的错误请 求 日志的写并发不好,导致错记广告监测计监测计 数的特点统计 系统的特点 高并发频 繁写 原子性、非事务统计 计数系 统广告素 材展现广告点 击跳转其他特 定事件待解决主要问题 少错漏 快入库 速统计HTTP高并发发的解决方法 Nginx替换Apache 充分利用多核的CPU做多线程 涉及并发的参数除了线程数,还包括:KeepAlive,Timeout等数据入库库的解决方法 单条日志有原子性,一致性要求不高 增加缓冲层,批量延迟入库 缓冲分为内存和文件两种,也可以将两种模式结合 在各级之间还 可以调整流量,对内容进行校验纠错Database/WarehouseLog FilesMemory BufferHTTP Requests 吞吐流速逐渐减慢 控制和定向的需求 各种投放控制:总量控制、时段控制、单一用户频 次 各种定向手段:地域城市、浏览兴 趣(上下文)、搜索行为控制和定向依赖赖于快速统计统计 统计 需求的难点 GROUP BY ORDER BY COUNT DISTINCT JOIN 瓶颈:流速差和流量差 硬盘-内存数据交换 内存-CPU数据交换 解决方法: RAID或引入SSD 多路CPUCPUCacheNBRAMNETUSBSATAGPUSBAUDSIO精准广告是大数据的典型应应用实时 决策 基于 热数据, 决策时间 <200ms模型挖掘 基于 多次训练 和迭代精准定向广告数据按热热度分级级 热数据放内存,做实时 决策 温数据放在分布式文件系统,做模型迭代 冷数据高压缩 率后存储,很少使用In- memory DBSSD / Flash MemoryHDFS / NAS / SwiftArchive / Tape 数据量减小热度提高 网络络广告系统统的发发展趋势趋势 分工细化,需要跨系统间实时 数据交换 媒体资源管理系统、广告资源交易所 外部决策数据、竞价机构、素材托管和投递 华东架构师大会的组委会添加信息u GTI And Viridentu 世纪互联u AdMaster的创始人洪倍u 联想员工李鹏程u 中国(上海)创业者公共实训基地2012华东架构师大会感谢的协办单位和捐助个人:预告信息:u 2013年5月18日,将于上海举办2013华东数据库技术大会u 人数规模:500人u 会务合作,联系人:金官丁,联系电话:136 6166 8096,邮箱地址:mysqlopssina.com,新浪微博:mysqlops谢谢谢谢 !Thanks a lot ! 我的微博:洪倍-手推车精硕科技 官微: http:/e.weibo.com/admaster 官网: http:/www.admaster.com.cn