CN103177117B - 信息索引系统及信息索引的更新方法 - Google Patents
信息索引系统及信息索引的更新方法 Download PDFInfo
- Publication number
- CN103177117B CN103177117B CN201310118943.XA CN201310118943A CN103177117B CN 103177117 B CN103177117 B CN 103177117B CN 201310118943 A CN201310118943 A CN 201310118943A CN 103177117 B CN103177117 B CN 103177117B
- Authority
- CN
- China
- Prior art keywords
- index
- row
- message
- grades
- arrange
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000008859 change Effects 0.000 claims abstract description 51
- 230000000977 initiatory effect Effects 0.000 claims description 6
- 238000004519 manufacturing process Methods 0.000 description 15
- 241000220223 Fragaria Species 0.000 description 11
- 235000016623 Fragaria vesca Nutrition 0.000 description 11
- 235000011363 Fragaria x ananassa Nutrition 0.000 description 11
- 230000008569 process Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 3
- 238000005520 cutting process Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 235000009754 Vitis X bourquina Nutrition 0.000 description 1
- 235000012333 Vitis X labruscana Nutrition 0.000 description 1
- 240000006365 Vitis vinifera Species 0.000 description 1
- 235000014787 Vitis vinifera Nutrition 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003306 harvesting Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种信息索引系统及信息索引的更新方法。该系统包括:报文调度模块,适于接收报文,确定报文的类型,向倒排索引更新模块发送状态变更报文,向倒排和正排索引更新模块均发送信息变更报文;正排索引更新模块,适于根据接收到的报文更新正排索引,并写入正排索引数据库中;倒排索引更新模块,适于当接收到状态变更报文时,从该状态变更报文中解析出发布信息,更新二级倒排索引,根据更新后的二级倒排索引更新一级倒排索引,当接收到信息变更报文时,从该信息变更报文中解析出发布信息,更新二级倒排索引,并根据更新后的二级倒排索引和从正排索引数据库中读取的对应的正排索引更新一级倒排索引。本发明大大减少了检索消耗。
Description
技术领域
本发明涉及信息处理技术,具体涉及一种信息索引系统及信息索引的更新方法。
背景技术
目前的搜索系统为满足用户的需求,需要有独立的广告服务器系统。广告服务器系统有自身的特点,一方面需要快速获取大量客户,一方面要求能高效地接受大批量的用户数据导入。同时,广告服务器系统对用户审核有很高的要求,在导入用户时,都是批量审核通过后,一次性接入大量广告,这对系统处理性能有很高的要求。具体到索引系统,要求能针对广告客户进行导入和调整,高效处理索引变化,及时变更到线上。
目前,接收广告服务器系统发送的广告报文的索引系统采用的是全量索引和增量索引,当广告用户调整广告时,以报文形式将变化发送到增量索引,增量索引定期将数据归并到全量索引。检索端先在增量索引进行检索,如果增量索引没有检索到结果,则到全量索引检索数据,最后将两部分结果进行归并。
上述索引方法,由于在消息更新过程中存在保存全量索引的全量数据库和保存增量索引的增量数据库,检索的时候需要进行两次查询。因此,其存在以下缺陷:首先,在用户检索时需要进行两次查询操作,降低了系统响应效率,其次,由于搜索广告都是分时段投放的,在分时段投放切换点需要更新大量的广告上下线报文,增加了系统开销。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的信息索引系统及信息索引的更新方法。
根据本发明的一个方面,提供了一种信息索引系统,该信息索引系统包括:
报文调度模块,适于接收来自广告服务器的报文,确定上述报文的类型,向倒排索引更新模块发送状态变更报文,向倒排索引更新模块和正排索引更新模块均发送信息变更报文;
上述正排索引更新模块,适于根据接收到的报文更新正排索引,并将更新后的正排索引写入正排索引数据库中;以及
上述倒排索引更新模块,适于当接收到状态变更报文时,从该状态变更报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,根据更新后的二级倒排索引更新一级倒排索引,当接收到信息变更报文时,从该信息变更报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,并根据更新后的二级倒排索引和从上述正排索引数据库中读取的对应的正排索引更新一级倒排索引。
可选地,为了更新正排索引,上述正排索引更新模块包括:
正排索引读取接口,适于接收来自上述报文调度模块的报文;
正排索引构建模块,适于根据上述正排索引读取接口转发的来自上述报文调度模块的报文更新正排索引,并将更新后的正排索引写入上述正排索引数据库。
可选地,为了分级更新倒排索引,上述倒排索引更新模块包括:
倒排索引读取接口,适于接收来自上述报文调度模块的报文,并向报文接收解析单元发送上述报文;
上述报文接收解析单元,适于从接收到的上述报文中解析出发布信息,并向二级索引更新单元和报文缓存单元发送上述发布信息;
上述二级索引更新单元,适于将接收到的上述发布信息转换为倒排索引,计算上述倒排索引中的当前竞价词与上述发布信息的离线相关性,按照上述离线相关性确定优先级,根据所述优先级更新二级倒排索引;
上述报文缓存单元,适于缓存上述报文接收解析单元发送的上述发布信息;
上述任务调度单元,适于定时从上述报文缓存单元中获得数据,在获得的数据为当前更新周期内发生变化的数据时,向上述报文更新单元发送第一更新消息,在获得的数据为对应发布信息的状态发生变更时,向上述报文更新单元发送第二更新消息;以及
上述报文更新单元,适于根据接收到的第一更新消息从当前二级倒排索引中获得更新后的二级倒排索引,对上述更新后的二级倒排索引进行去重操作获得发布编号集合,根据该发布编号集合通过上述正排索引读取接口从上述正排索引数据库中获得对应的正排索引,根据获得的正排索引更新一级倒排索引并写入一级倒排索引备库;以及,根据接收到的第二更新消息更新一级倒排索引并写入一级倒排索引备库。
可选地,由于所有的发布信息都是分时段投放的,而且投放时段可以随时修改。所以每个周期例如每小时都需要根据广告上下线信息对广告进行上下线。上述倒排索引更新模块还包括:周期更新单元;上述任务调度单元,还适于定时向上述周期更新单元发送启动消息,并将上述报文更新单元设置为补偿工作模式;上述报文更新单元,还适于在上述补偿工作模式下暂停更新一级倒排索引;上述周期更新单元,适于根据接收到的启动消息遍历当前二级倒排索引获得倒排数据链,从该倒排数据链中去重获得发布编号集合,根据该发布编号集合通过上述正排索引读取接口从上述正排索引数据库中获得对应的正排索引,根据获得的正排索引更新一级倒排索引并写入上述一级倒排索引备库。
可选地,上述任务调度单元,还适于在上述周期更新单元更新结束后通知适于用户检索发布信息的检索端切换至上述一级倒排索引备库,并停止将上述报文更新单元设置为补偿工作模式,以便于在切换至一级倒排索引备库后,由报文更新单元向该一级倒排索引备库写入更新后的一级倒排索引。
根据本发明的另一方面,提供了一种信息索引的更新方法,该方法包括:
接收来自广告服务器的报文,确定上述报文的类型;
当上述报文为信息变更报文时,根据上述报文更新正排索引,并将更新后的正排索引写入正排索引数据库中;以及,从上述报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,根据更新后的二级倒排索引和从上述正排索引数据库中读取的对应的正排索引更新一级倒排索引;
当上述报文为状态变更报文时,从上述报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,根据更新后的二级倒排索引更新一级倒排索引。
本发明实施例,通过一二层分级更新倒排索引,使得更新后的一级倒排索引中保存的是竞价词及其相关的广告内容,从而使得检索端通过一次检索就能获取相应的结果,减少了检索消耗,并且避免了发布投放时段发布切换时的报文交互,减少了报文处理量,从而提高了检索效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的信息索引系统的结构示意图;
图2示出了根据本发明另一个实施例的信息索引系统的结构示意图;
图3示出了根据本发明一个实施例的信息索引的更新方法的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的信息索引系统的结构示意图,如图1所示,该信息索引系统包括报文调度模块10、正排索引更新模块11和倒排索引更新模块12,其中:
报文调度模块10,适于接收来自广告服务器的报文,确定上述报文的类型,向倒排索引更新模块12发送状态变更报文,向倒排索引更新模块12和正排索引更新模块11均发送信息变更报文;其中,上述广告服务器负责将客户对广告的操作抽象为报文;
上述正排索引更新模块11,适于根据接收到的报文更新正排索引,并将更新后的正排索引写入正排索引数据库中;
上述倒排索引更新模块12,适于当接收到状态变更报文时,从该状态变更报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,根据更新后的二级倒排索引更新一级倒排索引;当接收到信息变更报文时,从该信息变更报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,并根据更新后的二级倒排索引和从上述正排索引数据库中读取的对应的正排索引更新一级倒排索引。
由于一级倒排索引是根据二级倒排索引更新的,所以一级倒排索引包含的信息是二级倒排索引中的一部分或全部,即一级倒排索引包含的信息量小于或等于二级倒排索引。
其中,上述正排索引包括以发布编号为标识,包含竞价词信息的数据结构,上述竞价词信息包括发布标题、发布描述、投放时间、投放地区等,如表1所示;上述倒排索引包括以竞价词为标识,包含相关信息的数据结构,上述相关信息包括发布编号、投放时间、投放地区和离线相关性等,如表2所示;其中,表1和表2仅为示意性说明。
表1正排索引数据结构
发布编号 | 发布标题 | 发布描述 | 投放时间 | 投放地区 |
0001 | 采摘 | 采摘葡萄…… | 2013.4 | 北京 |
0002 | 草莓团购 | 4月份可以在团购网团购草莓,…… | 2013.4 | 上海 |
0003 | 采摘园 | 昌平新建了一个大型草莓采摘园…… | 2013.5 | 北京 |
表2倒排索引数据结构
优选地,上述发布信息可以为广告信息,广告服务器将客户对广告的操作抽象为报文发送到报文调度模块;上述报文包括:广告上/下线报文、竞价词上/下线报文、广告信息更新报文、竞价词调价报文、竞价词匹配类型报文、否定关键词添加/删除报文和日限额下线报文等;上述报文分为两种类型:状态变更报文和信息变更报文;例如,广告上/下线报文和日限额下线报文为状态变更报文,竞价词上/下线报文、广告信息更新报文、竞价词调价报文、竞价词匹配类型报文和否定关键词添加/删除报文为信息变更报文。
具体地,上述广告上/下线报文可用于广告主将已下线报文重新恢复上线,报文内容为以发布编号(ADID)为标识的数组;上述竞价词上/下线报文可用于广告主对已存在的ADID,添加和删除下属的竞价词集合,报文内容为以ADID为标识,包含竞价词信息的数组;上述广告信息更新报文可用于广告主对广告基础信息包括广告标题,广告内容,跳转统一资源定位符(URL)等信息进行修改,报文内容包含ADID,修改的ADID对应广告信息;竞价词调价报文可用于广告主修改购买的竞价词价格,报文内容为以ADID为标识,包含竞价词和修改后竞价词价格的数组;竞价词匹配类型报文可用于广告主修改购买的竞价词类型,目前系统支持精确匹配,短语匹配,扩展匹配三种匹配方式。报文内容为以ADID为标识,包含竞价词和修改后竞价词匹配类型的数组;否定关键词添加/删除报文可用于广告主添加或删除广告组下对应的否定关键词,报文内容包含广告组ID,否定关键词列表;日限额下线报文可用于当用户消耗达到日限额,广告下线。广告内容为以ADID为标识的数组。
需要说明的是,上述报文均为自定义报文,在实际应用中可根据需要对报文进行修改或扩展。
为了更新正排索引,上述正排索引更新模块11包括正排索引读取接口111和正排索引构建模块112,如图2所示,其中:正排索引读取接口111适于接收来自上述报文调度模块的报文;正排索引构建模块112适于根据上述正排索引读取接口转发的来自上述报文调度模块的报文更新正排索引,并将更新后的正排索引写入上述正排索引数据库。
为了分级更新倒排索引,上述倒排索引更新模块12包括:倒排索引读取接口121、报文接收解析单元122、二级索引更新单元123、报文缓存单元124、任务调度单元125和报文更新单元126,如图2所示,其中:
倒排索引读取接口121,适于接收来自上述报文调度模块10的报文,并向报文接收解析单元122发送上述报文;
上述报文接收解析单元122,适于从接收到的上述报文中解析出发布信息,并向二级索引更新单元123和报文缓存单元124发送上述发布信息;
上述二级索引更新单元123,适于将接收到的上述发布信息转换为倒排索引,计算上述倒排索引中的当前竞价词与上述发布信息的离线相关性,按照上述离线相关性确定优先级,根据所述优先级更新二级倒排索引;例如可以按照离线相关性由高到低的顺序更新二级倒排索引,其中该离线相关性反映的是竞价词与广告信息的相关度;
上述报文缓存单元124,适于缓存上述报文接收解析单元122发送的上述发布信息;
上述任务调度单元125,适于定时从上述报文缓存单元124中获得数据,在获得的数据为当前更新周期内发生变化的数据时,向上述报文更新单元126发送第一更新消息,在获得的数据为对应发布信息的状态发生变更时,向上述报文更新单元126发送第二更新消息;
上述报文更新单元126,适于根据接收到的第一更新消息从当前二级倒排索引中获得更新后的二级倒排索引,对上述更新后的二级倒排索引进行去重操作获得发布编号集合,根据该发布编号集合通过上述正排索引读取接口111从上述正排索引数据库中获得对应的正排索引,根据获得的正排索引更新一级倒排索引并写入一级倒排索引备库;以及,根据接收到的第二更新消息更新一级倒排索引并写入一级倒排索引备库。
由于所有的广告都是分时段投放的,而且投放时段可以随时修改。所以每个周期例如每小时都需要根据广告上下线信息对广告进行上下线。因此,上述倒排索引更新模块还包括:周期更新单元127;上述任务调度单元125,还适于定时向上述周期更新单元127发送启动消息,并将上述报文更新单元126设置为补偿工作模式;上述报文更新单元126还适于在上述补偿工作模式下暂停更新一级倒排索引;上述周期更新单元127适于根据接收到的启动消息遍历当前二级倒排索引获得倒排数据链,从该倒排数据链中去重获得发布编号集合,根据该发布编号集合通过上述正排索引读取接口111从上述正排索引数据库中获得对应的正排索引,根据获得的正排索引更新一级倒排索引并写入上述一级倒排索引备库。
具体地,二级索引更新单元中会依据接收到的报文实时对二级倒排索引进行更新,但为降低系统性能开销,这种更新不会立即写入一级倒排索引,而是由报文缓存单元接收并缓存报文,任务调度单元定时查询报文缓存单元,并根据查询结果向报文更新单元或周期更新单元发送对应的消息,以便他们根据对应的消息更新一级倒排索引。
另外,上述任务调度单元125还适于在上述周期更新单元更新结束后通知适于用户检索发布信息的检索端切换至上述一级倒排索引备库,并停止将上述报文更新单元设置为补偿工作模式;即在切换至一级倒排索引备库后,由报文更新单元向该一级倒排索引备库写入更新后的一级倒排索引。
下面以广告信息更新报文为例来说明信息索引系统对信息变更报文的处理过程,在该实施例中使用表1中的数据代表当前信息索引系统中包含的正排索引,使用表2中的数据代表当前信息索引系统中包含的倒排索引,该更新过程包括:
报文调度模块接收广告服务器发送的广告信息更新报文(假设该广告信息更新报文用于更新广告内容,报文内容包括:ADID为0001,广告内容修改为“采摘草莓”),确定该广告信息更新报文为信息变更报文,则向正排索引更新模块发送该广告信息更新报文,正排索引更新模块从该广告信息更新报文中解析出待修改的广告编号为0001和修改后的广告内容为“采摘草莓”,则根据解析出的信息将0001号广告的内容更新为“采摘草莓”;并向倒排索引模块发送该广告信息更新报文,倒排索引模块中的报文接收解析单元从该广告信息更新报文中解析出待修改的广告编号为0001和修改后的广告内容为“采摘草莓”,向报文缓存单元和二级索引更新单元发送解析出的信息,二级索引更新单元根据解析出的信息将0001号广告的内容更新为“采摘草莓”,如表3所示,具体地,二级索引更新单元是根据竞价词“草莓”和报文内容的离线相关性由高到低的顺序进行更新的;任务调度单元定时从报文缓存模块中获得数据,在获得的数据“采摘草莓”为当前更新周期内发生变化的数据时,向报文更新单元发送第一更新消息,报文更新单元根据接收的第一更新消息,获得更新后的二级倒排索引,对所述更新后的二级倒排索引进行去重操作获得发布编号集合{0002,0001,0003},根据该发布编号集合从所述正排索引数据库中获得对应的正排索引,根据获得的正排索引更新一级倒排索引并写入一级倒排索引备库,在该实施例中写入一级倒排索引备库中更新后的一级倒排索引与更新后的二级倒排索引相同。
表3更新后的倒排索引
此时,若用户从检索端输入竞价词“草莓”,则检索端会快速地将表3中的内容提供给用户,由于更新后的一级倒排索引中保存的是竞价词及其相关的广告内容,所以检索端通过一次检索就能获取相应的结果,减少了检索消耗。
下面以日限额下线报文为例来说明信息索引系统对状态变更报文的处理过程:
假设该实施例中将用户消耗达到日限额10000的广告下线,则报文调度模块接收日限额下线报文之后,确定该日限额下线报文为状态变更报文,则向倒排索引更新模块发送该日限额下线报文;倒排索引更新模块从该日限额下线报文中解析出即将下线的广告编号,根据该广告编号更新二级倒排索引和一级倒排索引。
上述信息索引系统,通过对倒排索引进行一二层分级更新,使得更新后的一级倒排索引中保存的是竞价词及其相关的广告内容,从而使得检索端通过一次检索就能获取相应的结果,减少了检索消耗,并且避免了发布投放时段发布切换时的报文交互,减少了报文处理量,从而提高了检索效率。
图3示出了根据本发明一个实施例的信息索引的更新方法的流程图。如图3所示,该信息索引的更新方法包括:
步骤S301、接收来自广告服务器的报文,确定上述报文的类型;
其中,报文的类型包括信息变更报文和状态变更报文;信息变更报文用于更改报文的内容,状态变更报文仅用于更改报文的状态,不更改报文的内容;
步骤S302、当上述报文为信息变更报文时,根据上述报文更新正排索引,并将更新后的正排索引写入正排索引数据库中;以及,从上述报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,根据更新后的二级倒排索引和从上述正排索引数据库中读取的对应的正排索引更新一级倒排索引;
其中,上述正排索引包括以发布编号为标识,包含所有竞价词信息的数据结构,上述所有竞价词信息包括发布标题、发布描述、投放时间、投放地区等;上述倒排索引包括以竞价词为标识,包含相关信息的数据结构,上述相关信息包括发布编号、投放时间、投放地区和离线相关性;上述倒排索引分为二级倒排索引和一级倒排索引等;上述发布信息可以为广告信息;
步骤S303、当上述报文为状态变更报文时,从上述报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,根据更新后的二级倒排索引更新一级倒排索引。
上述步骤S302和步骤S303中,根据解析出的发布信息更新二级倒排索引,包括:将上述发布信息转换为倒排索引,计算上述倒排索引中的当前竞价词与上述发布信息的离线相关性,并按照上述离线相关性确定优先级,根据所述优先级更新二级倒排索引并写入二级倒排索引数据库中,例如按照上述离线相关性由高到低的顺序更新二级倒排索引并写入二级倒排索引数据库中。另外,该方法还可以包括:将解析出的发布信息保存至临时数据库中。
上述步骤S302中,上述根据更新后的二级倒排索引和从上述正排索引数据库中读取的对应的正排索引更新一级倒排索引,包括:
定时从上述临时数据库中获得数据,在上述数据为当前更新周期内发生变化的数据时,从上述二级倒排索引数据库中获得更新后的二级倒排索引;
对上述更新后的二级倒排索引进行去重操作获得发布编号集合,根据该发布编号集合从上述正排索引数据库中获得对应的正排索引;以及
根据获得的正排索引更新一级倒排索引并写入一级倒排索引备库。
上述步骤S303中,根据更新后的二级倒排索引更新一级倒排索引,包括:
定时从上述临时数据库中获得数据,在获得的数据为对应发布信息的状态发生变更时,从上述二级倒排索引数据库中获得更新后的二级倒排索引更新一级倒排索引。
另外,由于所有的广告都是分时段投放的,而且投放时段可以随时修改。所以预定时间段内例如每小时都需要根据广告上下线信息对广告进行上下线。该方法还可以包括:在预定时间段内,暂停从上述临时数据库中获得数据,从上述二级倒排索引数据库的当前二级倒排索引获得倒排数据链,从该倒排数据链中去重获得发布编号集合,根据该发布编号集合从上述正排索引数据库获得对应的正排索引,根据获得的正排索引更新一级倒排索引并写入上述一级倒排索引备库。
进一步地,在上述预定时间段内,根据获得的正排索引更新一级倒排索引并写入上述一级倒排索引备库之后,该方法还包括:通知适于用户检索发布信息的检索端切换至上述一级倒排索引备库,并恢复定时从上述临时数据库中获得数据。
由上述描述可知,对于信息变更报文既需要更新正排索引,又需要更新倒排索引(倒排索引包括二级倒排索引和一级倒排索引),对于状态变更报文仅需要更新倒排索引。
上述信息索引的更新方法,通过一二层分级更新倒排索引,使得更新后的一级倒排索引中保存的是竞价词及其相关的广告内容,从而使得检索端通过一次检索就能获取相应的结果,减少了检索消耗,并且避免了发布投放时段发布切换时的报文交互,减少了报文处理量,从而提高了检索效率。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的信息索引系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (14)
1.一种信息索引系统,该系统包括:
报文调度模块,适于接收来自广告服务器的报文,确定所述报文的类型,向倒排索引更新模块发送状态变更报文,向倒排索引更新模块和正排索引更新模块均发送信息变更报文;
所述正排索引更新模块,适于根据接收到的报文更新正排索引,并将更新后的正排索引写入正排索引数据库中;以及
所述倒排索引更新模块,适于当接收到状态变更报文时,从该状态变更报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,根据更新后的二级倒排索引更新一级倒排索引,当接收到信息变更报文时,从该信息变更报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,并根据更新后的二级倒排索引和从所述正排索引数据库中读取的对应的正排索引更新一级倒排索引;
其中,一级倒排索引中保存竞价词及其相关的广告内容,一级倒排索引根据二级倒排索引更新得到,一级倒排索引包含的信息是二级倒排索引中的一部分或全部。
2.根据权利要求1所述的系统,所述正排索引包括以发布编号为标识,包含竞价词信息的数据结构,所述竞价词信息包括发布标题、发布描述、投放时间、投放地区。
3.根据权利要求1或2所述的系统,所述正排索引更新模块包括:
正排索引读取接口,适于接收来自所述报文调度模块的报文;以及
正排索引构建模块,适于根据所述正排索引读取接口转发的来自所述报文调度模块的报文更新正排索引,并将更新后的正排索引写入所述正排索引数据库。
4.根据权利要求3所述的系统,所述倒排索引更新模块包括:
倒排索引读取接口,适于接收来自所述报文调度模块的报文,并向报文接收解析单元发送所述报文;
所述报文接收解析单元,适于从接收到的所述报文中解析出发布信息,并向二级索引更新单元和报文缓存单元发送所述发布信息;
所述二级索引更新单元,适于将接收到的所述发布信息转换为倒排索引,计算所述倒排索引中的当前竞价词与所述发布信息的离线相关性,按照所述离线相关性确定优先级,根据所述优先级更新二级倒排索引;
所述报文缓存单元,适于缓存所述报文接收解析单元发送的所述发布信息;
任务调度单元,适于定时从所述报文缓存单元中获得数据,在获得的数据为当前更新周期内发生变化的数据时,向报文更新单元发送第一更新消息,在获得的数据为对应发布信息的状态发生变更时,向所述报文更新单元发送第二更新消息;以及
所述报文更新单元,适于根据接收到的第一更新消息从当前二级倒排索引中获得更新后的二级倒排索引,对所述更新后的二级倒排索引进行去重操作获得发布编号集合,根据该发布编号集合通过所述正排索引读取接口从所述正排索引数据库中获得对应的正排索引,根据获得的正排索引更新一级倒排索引并写入一级倒排索引备库;以及,根据接收到的第二更新消息更新一级倒排索引并写入一级倒排索引备库。
5.根据权利要求4所述的系统,所述倒排索引更新模块还包括:周期更新单元;
所述任务调度单元,还适于定时向所述周期更新单元发送启动消息,并将所述报文更新单元设置为补偿工作模式;
所述报文更新单元,还适于在所述补偿工作模式下暂停更新一级倒排索引;
所述周期更新单元,适于根据接收到的启动消息遍历当前二级倒排索引获得倒排数据链,从该倒排数据链中去重获得发布编号集合,根据该发布编号集合通过所述正排索引读取接口从所述正排索引数据库中获得对应的正排索引,根据获得的正排索引更新一级倒排索引并写入所述一级倒排索引备库。
6.根据权利要求5所述的系统,所述任务调度单元,还适于在所述周期更新单元更新结束后通知适于用户检索发布信息的检索端切换至所述一级倒排索引备库,并停止将所述报文更新单元设置为补偿工作模式。
7.一种信息索引的更新方法,该方法包括:
接收来自广告服务器的报文,确定所述报文的类型;
当所述报文为信息变更报文时,根据所述报文更新正排索引,并将更新后的正排索引写入正排索引数据库中;以及,从所述报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,根据更新后的二级倒排索引和从所述正排索引数据库中读取的对应的正排索引更新一级倒排索引;
当所述报文为状态变更报文时,从所述报文中解析出发布信息,根据解析出的发布信息更新二级倒排索引,根据更新后的二级倒排索引更新一级倒排索引;
其中,一级倒排索引中保存竞价词及其相关的广告内容,一级倒排索引根据二级倒排索引更新得到,一级倒排索引包含的信息是二级倒排索引中的一部分或全部。
8.根据权利要求7所述的方法,所述正排索引包括以发布编号为标识,包含所有竞价词信息的数据结构,所述所有竞价词信息包括发布标题、发布描述、投放时间、投放地区。
9.根据权利要求8所述的方法,所述根据解析出的发布信息更新二级倒排索引,包括:
将所述发布信息转换为倒排索引,计算所述倒排索引中的当前竞价词与所述发布信息的离线相关性,并按照所述离线相关性确定优先级,根据所述优先级更新二级倒排索引并写入二级倒排索引数据库中。
10.根据权利要求9所述的方法,该方法还包括:
将解析出的发布信息保存至临时数据库中。
11.根据权利要求10所述的方法,所述根据更新后的二级倒排索引和从所述正排索引数据库中读取的对应的正排索引更新一级倒排索引,包括:
定时从所述临时数据库中获得数据,在所述数据为当前更新周期内发生变化的数据时,从所述二级倒排索引数据库中获得更新后的二级倒排索引;
对所述更新后的二级倒排索引进行去重操作获得发布编号集合,根据该发布编号集合从所述正排索引数据库中获得对应的正排索引;以及
根据获得的正排索引更新一级倒排索引并写入一级倒排索引备库。
12.根据权利要求10所述的方法,所述根据更新后的二级倒排索引更新一级倒排索引,包括:
定时从所述临时数据库中获得数据,在获得的数据为对应发布信息的状态发生变更时,从所述二级倒排索引数据库中获得更新后的二级倒排索引更新一级倒排索引。
13.根据权利要求11或12所述的方法,该方法还包括:
在预定时间段内,暂停从所述临时数据库中获得数据,从所述二级倒排索引数据库的当前二级倒排索引获得倒排数据链,从该倒排数据链中去重获得发布编号集合,根据该发布编号集合从所述正排索引数据库获得对应的正排索引,根据获得的正排索引更新一级倒排索引并写入所述一级倒排索引备库。
14.根据权利要求13所述的方法,在所述预定时间段内,根据获得的正排索引更新一级倒排索引并写入所述一级倒排索引备库之后,该方法还包括:
通知适于用户检索发布信息的检索端切换至所述一级倒排索引备库,并恢复定时从所述临时数据库中获得数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310118943.XA CN103177117B (zh) | 2013-04-08 | 2013-04-08 | 信息索引系统及信息索引的更新方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310118943.XA CN103177117B (zh) | 2013-04-08 | 2013-04-08 | 信息索引系统及信息索引的更新方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103177117A CN103177117A (zh) | 2013-06-26 |
CN103177117B true CN103177117B (zh) | 2016-06-01 |
Family
ID=48636978
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310118943.XA Expired - Fee Related CN103177117B (zh) | 2013-04-08 | 2013-04-08 | 信息索引系统及信息索引的更新方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103177117B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104765782B (zh) * | 2015-03-20 | 2019-06-21 | 五八同城信息技术有限公司 | 一种索引排序更新方法及装置 |
CN106408320A (zh) * | 2015-07-31 | 2017-02-15 | 北京奇虎科技有限公司 | 广告索引构建方法和装置、广告检索方法和系统 |
CN105243150A (zh) * | 2015-10-23 | 2016-01-13 | 中国舰船研究设计中心 | 一种基于字节位置的网络报文数据倒排索引方法 |
CN106649403B (zh) * | 2015-11-04 | 2020-07-28 | 深圳市腾讯计算机系统有限公司 | 文件存储中的索引实现方法和系统 |
CN107229634A (zh) * | 2016-03-24 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 工单处理方法及装置 |
CN107341221B (zh) * | 2017-06-28 | 2020-08-11 | 百度在线网络技术(北京)有限公司 | 索引结构的建立、关联检索方法、装置、设备及存储介质 |
CN109934610B (zh) * | 2017-12-19 | 2023-09-05 | 北京奇虎科技有限公司 | 一种广告受众用户数据的处理方法和装置 |
CN109101599B (zh) * | 2018-08-01 | 2021-02-23 | 北京奇艺世纪科技有限公司 | 一种增量索引更新方法及系统 |
CN109408613A (zh) * | 2018-08-14 | 2019-03-01 | 广东神马搜索科技有限公司 | 索引结构操作方法、装置和系统 |
CN111985944B (zh) * | 2019-05-21 | 2024-06-18 | 北京沃东天骏信息技术有限公司 | 物料数据的处理方法、装置、设备及存储介质 |
CN113595831B (zh) * | 2021-08-02 | 2024-01-30 | 中国工商银行股份有限公司 | 流量信息测试方法、装置及系统 |
CN114372064B (zh) * | 2022-03-22 | 2022-07-12 | 飞狐信息技术(天津)有限公司 | 数据处理装置、方法、计算机可读介质及处理器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1979469A (zh) * | 2005-11-29 | 2007-06-13 | 国际商业机器公司 | 索引及其扩展和查询方法 |
US7783589B2 (en) * | 2006-08-04 | 2010-08-24 | Apple Inc. | Inverted index processing |
CN102023989A (zh) * | 2009-09-23 | 2011-04-20 | 阿里巴巴集团控股有限公司 | 一种信息检索方法及其系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7765213B2 (en) * | 2007-06-08 | 2010-07-27 | Apple Inc. | Ordered index |
-
2013
- 2013-04-08 CN CN201310118943.XA patent/CN103177117B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1979469A (zh) * | 2005-11-29 | 2007-06-13 | 国际商业机器公司 | 索引及其扩展和查询方法 |
US7783589B2 (en) * | 2006-08-04 | 2010-08-24 | Apple Inc. | Inverted index processing |
CN102023989A (zh) * | 2009-09-23 | 2011-04-20 | 阿里巴巴集团控股有限公司 | 一种信息检索方法及其系统 |
Non-Patent Citations (2)
Title |
---|
一种增量倒排索引结构的设计与实现;王冬等;《吉林大学学报(理学版)》;20071126;第45卷(第06期);953-958 * |
搜索引擎倒排索引技术的改进;吴文娟等;《微处理机》;20061230(第06期);83-85 * |
Also Published As
Publication number | Publication date |
---|---|
CN103177117A (zh) | 2013-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103177117B (zh) | 信息索引系统及信息索引的更新方法 | |
CN104685498B (zh) | 聚合/分组操作的硬件实现方式:散列表方法 | |
CN103380421B (zh) | 用于图形数据的分布式缓存 | |
CN104794146B (zh) | 商品实时筛选和排序的方法和装置 | |
Ozcan et al. | A five-level static cache architecture for web search engines | |
US20070214118A1 (en) | Delivery of internet ads | |
CN107103032B (zh) | 一种分布式环境下避免全局排序的海量数据分页查询方法 | |
CN102609488B (zh) | 客户端及其数据查询方法、服务端和数据查询系统 | |
CN103678494A (zh) | 客户端同步服务端数据的方法及装置 | |
US11048423B2 (en) | Method and system for synchronizing requests related to key-value storage having different portions | |
CN105701216A (zh) | 一种信息推送方法及装置 | |
US20140156669A1 (en) | Apparatus and method for indexing electronic content | |
CN102968428B (zh) | 用于通过远程应用的高效数据提取的方法和系统 | |
CN104375992A (zh) | 一种地址匹配的方法和装置 | |
CN110109910A (zh) | 数据处理方法及系统、电子设备和计算机可读存储介质 | |
CN102339315A (zh) | 一种广告数据的索引更新方法和系统 | |
CN104794177A (zh) | 一种数据存储方法及装置 | |
CN104850627A (zh) | 进行分页展示的方法及装置 | |
US20140229435A1 (en) | In-memory real-time synchronized database system and method | |
US11748357B2 (en) | Method and system for searching a key-value storage | |
CN105117933A (zh) | 一种广告物料数据调取方法和装置 | |
CN101452487A (zh) | 一种数据加载的方法、系统及数据加载装置 | |
CN106897433A (zh) | 一种数据获取方法及装置 | |
CN105893421A (zh) | Uv计算方法、装置 | |
CN105808653A (zh) | 一种基于用户标签系统的数据处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160601 Termination date: 20210408 |
|
CF01 | Termination of patent right due to non-payment of annual fee |