搜索广告的整体架构-子模块划分

来源:互联网 发布:打印机端口不存在 编辑:程序博客网 时间:2024/06/04 00:37

搜索广告的子模块划分


1. 业务系统

广告主使用的系统: 广告主注册账号、登录系统、充值、购买广告

        分层账号结构:方便广告主对广告进行管理

                推广计划、推广单元、关键词、创意

多样的投放控制:分地域推广、分时段推广、否定关键词,否定IP

          广告主查看投放效果:

广告展现次数、广告点击次数、广告平均点击价格、广告质量度


2. 存储系统

关系型数据存储:数据库

  账号信息

                e.g.: mysql, oracle

非关系型数据存储:NoSQL

                文件信息:广告创意

                 多媒体信息“: 图片、视频

                 众多开源K-V系统:Redis, MongoDB, HBase, Casandra等


3. 传输系统

传输系统使得不同系统之间解耦合,是链接各个系统的桥梁,相当于高速数据总线,

        它是广告数据的ETL工具,完成数据的整合、转换、分发。


对传输系统的要求:

数据正确性、传输实时性、性能稳定性、扩展伸缩性。

常见传输系统:

Push-Model: ”推“模式: 上游系统直接把数据往下游系统发送

优点:易于实现,实时性好,系统无单点稳定性高

                                        缺点”:性能稳定性差,扩展伸缩差,运维成本高

                Pull-Model: “拉”模式:上游系统只发布数据,下游系统订阅数据

                                       优点:扩展伸缩性好,运维成本低,性能稳定性好

缺点:实现复杂度高,系统存在单点

                                        e.g. 消息队列          


4.检索系统

负责完成广告检索的全过程

与传统搜索引擎相同:

query分析:切词、纠错、主题词抽取

倒排索引:广告物料

关键词检索技术:

与传统搜索引擎差异:

短文本:广告物料<<网页

全内存索引

实时检索系统

完成复杂的广告拍卖机制


5.反作弊系统

打击搜索推广中的各种作弊行为,保护广告主利益。

展现过滤:过滤无效的广告展现

爬虫的抓取流量

网民无意的多次连续搜索

竞争对手的大量刷新展现

点击过滤:过滤无效的广告点击,保留对广告主真正有价值的广告点击

竞争对手以消耗广告主账户费用为目的的恶意点击

浏览器问题造成网民无意的连续多次点击

不符合统计学规律的异常点击


6. 计费系统

点击计费:

只能对有效点击计费,记录点击信息比如账号、推广计划、推广单元、

关键词、创意和点击时间等。

计费方式:实时计费,支持点击追述

计费系统与业务系统联动,更改账户余额等

告诉用户浏览器跳转到对应的广告主网站


7. 统计系统

完成展现、点击和计费等数据统计功能,完成报表供广告主、客服、管理者查看。

统计系统的功能:

支持复杂的业务逻辑

准实时的数据更新

海量的数据存储

数据的准确性

请求响应实时性

系统的高稳定性


和广告主相关:

业务系统、统计系统

与网民直接相关系统:

检索系统

计费系统

内部系统:

存储系统、传输系统、反作弊系统







0 0
原创粉丝点击