[Spring cloud 一步步实现广告系统] 12. 广告索…
2019-08-16 12:02:30来源:博客园 阅读 ()
[Spring cloud 一步步实现广告系统] 12. 广告索引介绍
索引设计介绍
在我们广告系统中,为了我们能更快的拿到我们想要的广告数据,我们需要对广告数据添加类似于数据库index一样的索引结构,分两大类:正向索引
和倒排索引
。
正向索引
通过唯一键/主键生成与对象的映射关系。
比如,我们从数据库中查询数据的时候,根据数据主键ID查询当前记录,其实就是一个正向索引的过程。
根据这个描述,很明显,我们的正向索引适用于推广计划
,推广单元
和 创意
这几张表的数据上,因为广告检索的请求信息,不可能是请求具体的计划
或推广单元
,它的检索请求一定是限制条件。
倒排索引
也叫
反向索引
,是一种检索方法
。它的设计是为了存储在全文检索下某个单词在一个文档货一组文档中存储位置
的映射,是在文件检索系统中最常用的数据结构。也就是我们提供具体的内容实例,根据内容来查询该内容所处的位置。
如何在广告系统中使用倒排索引?
核心用途是对各个维度 限制的
整理
。
如图中所示,我们希望找到西安市的所有的推广单元信息,那么我们只需要根据陕西省-西安市
来进行索引,可以快速定位到所在的推广单元有10,11
两个。
索引维护介绍
索引的维护最主要的是为了保证检索服务中的索引是完整的,我们在维护索引数据的时候,有两种场景会带来广告数据。在系统启动之初,会有一部分初始化数据,在系统上线运行之后,会逐渐有不少新的广告信息加入。因此,我们的广告索引类型整体可以分为两大类:
全量索引
检索系统在每次启动的时候,需要一次性读取当前数据库中的所有数据,建立索引。
TIPS:(这里有一个问题,如果我们系统流量高的时候,需要部署多实例,每一个实例在系统启动的时候,都直接从数据库中加载全量索引,会对数据库造成极大的压力。)
因此,通常我们实现全量索引都是通过读取文件中预先存储的广告数据来实现全量索引导入。
增量索引
顾名思义就是后来新增的数据索引。系统在运行过程中,会对数据库的变动进行监控,实现加载更新,构建索引,我们系统中通过对数据库表的CRUD操作的变动,通过监听Binlog来实现增量索引的更新。
原文链接:https://www.cnblogs.com/zhangpan1244/p/11312076.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Spring系列.ApplicationContext接口 2020-06-11
- springboot2配置JavaMelody与springMVC配置JavaMelody 2020-06-11
- 给你一份超详细 Spring Boot 知识清单 2020-06-11
- SpringBoot 2.3 整合最新版 ShardingJdbc + Druid + MyBatis 2020-06-11
- 掌握SpringBoot-2.3的容器探针:实战篇 2020-06-11
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash