一种广告统计和投放的方法及系统的制作方法

文档序号:6467058阅读:172来源:国知局

专利名称::一种广告统计和投放的方法及系统的制作方法
技术领域
:本发明涉及网络广告的统计和投放技术,尤其涉及一种利用布隆过滤器对用户标识进行过滤从而得到针对所投放广告的较为精确的覆盖量,从而根据覆盖量执行相应的投放策略。
背景技术
:随着Internet的发展,网络广告越来越多的被广大网民所接受,广告主在一个网站上投放广告时会根据广告的用户覆盖情况调整广告的投放策略,以获得投入与收益的最佳结合点,为了获得广告的投放覆盖量,通常做法是,将用户点击广告的数据以记录的方式存储于数据库中,需要计算覆盖数据的时候,对记录的用户标识信息进行外排序处理,统计出访问所投放广告的用户的数量,由于同一用户可能多次访问所投放的广告,所以统计的数字通常不很准确,因此,通常需要借助数据库的功能对用户数据进行过滤,,另夕卜,随着用户数量的增加,对访问数据的统计和过滤需要耗费很大的服务器资源,因此,通常需要借助大型统计分析系统,如数据仓库系统,对用户数据进行发掘分析。但,现有的处理方式,数据的实时性较差,只有在需要计算覆盖数据的时候才进行统计分析操作,或者需等待新一轮的数据挖掘统计周期结東后才能得到结果,因此,无法做到实时的按覆盖量调整广告的投放策略。
发明内容有鉴于此,本发明的目的之一在于提供一种广告统计和投放的方法,能解决现有技术中获得广告投放的用户覆盖量时,实时性差、统计数字不精确等技术问题。为实现上述发明目的,本发明的主要技术方案为一种广告统计和投放的方法,包括以下步骤A、为用户分配唯一标识,设定广告投放的覆盖量及投放策略;B、使用布隆过滤器判断用户是否已经访问过所述广告,若否,则将所述广告的覆盖量的统计值加1,执行步骤C;C、判断是否达到所述广告投放的覆盖量,若达到则执行所述投放策略。基于上述技术方案,进一步地,步骤B中,通过如下步骤来判断用户是否访问过投放的广告Bl、建立用于判断用户是否已访问过广告的位示B2、釆用N个相互独立的哈希函数对所述用户标识进行哈希计算,并将N个所得值作为所述位示图的下标,判断所述位示图中N个对应位的值是否都为1,若是,则所述广告的覆盖量统计值不加1,若否则将所述广告的覆盖量统计值加1;B3、将所述位示图中N个对应位中值不为1的值置为1。进一步地,步骤B2中,所述N的值为8;所述广告的投放策略指当所述广告的覆盖量达到设定值时停止广告的投放。本发明的另一目的在于提供一种广告统计和投放的系统,包括广告发布系统,用于为用户提供广告的访问环境;广告统计模块,用于对用户访问广告的覆盖量进行统计;广告管理模块,用于根据广告的覆盖量执行投放策略;所述广告发布系统为所述广告统计模块提供用户访问信息,所述广告统计模块根据所述用户访问信息计算出广告覆盖量,并将其传送给所述广告管理模块,所述广告管理模块根据投放策略对所述广告发布系统进行控制。进一步地,所述广告发布系统包括广告服务器,用于为用户提供广告内容信息;WEB服务器,用于为用户提供带有广告链接的网页;所述广告服务器将获取的用户标识发送给所述广告统计模块,并接受所述广告管理模块的控制。进一步地,所述广告统计模块包括位示图,用于以位图形式记录用户访问标志;布隆过滤器,用于根据用户标识对广告访问用户进行单一性过滤;覆盖量存储单元,用于存储广告的覆盖量统计数据;所述广告发布系统将用户标识传送给所述布隆过滤器,所述布隆过滤器实时更新所述位示图中的用户访问标志及所述覆盖量存储单元中的覆盖量统计数据,所述广告管理模块从所述覆盖量存储单元中读取广告的覆盖量统计数据。进一步地,所述布隆过滤器包含N个哈希计算模块,每一哈希计算模块对所述用户标识进行计算并负责更新所述位示图中对应的用户访问标志位,当N个哈希计算模块计算的结果都表示同一用户访问过广告时,则所述布隆过滤器指令所述覆盖量存储单元将该广告的覆盖量值加1。本发明中,广告统计模块实时的过滤和更新用户的访问记录,并实时的更新针对每一个投放广告的用户覆盖量信息,通过获取实时的覆盖量信息,使得广告主可以实现按照用户覆盖量投放广告的目的,用最少的时间达到最佳投放效果。由于投放时间和覆盖量构成的函数关系呈现为指数递减的曲线,通过设置合理的覆盖量,可以使广告在投放中获取最优的投放成本。对于广告投放时间与覆盖量的曲线如图3,横坐标表示投放时间(单位天),纵坐标表示覆盖量(单位千万人)。从曲线中可以看到随着投放时间的增加,覆盖量趋于稳定,最终会稳定在该媒体用户人数附近,比如下图中的5千万人。可以看出,随着投放时间的增长,曲线趋于平缓,这意味着,提高单位覆盖所需的时间变成,投放成本变高。例如从0天到1天,投放l天,达到覆盖2.5千万人,投放第2天至第3天,投放2天,覆盖至增加了500万人,越往后,提高单位覆盖所需要的成本越大。根据覆盖曲线,可以事先确定一个投放目标,比如达到3千万人的覆盖,则达到该覆盖的时候,系统自动停止投放。使得广告主的投放集中在最有效的时间段内,避免价值不高的投放,节约广告主的投放成本。图l为本发明方法流程图2为本发明系统逻辑结构图3为覆盖量与投放时间的函数曲线图。具体实施例方式下面通过具体实施例和附图对本发明做进一步详细说明。图1为本发明的方法流程图,各步骤的详细描述如下A、为用户分配唯一标识,设定广告投放的覆盖量及投放策略;在执行本发明所述步骤之前需为每一个访问网站的用户分配一个唯一的用户标识,通常网站为了为用户提供个性化的服务都会为用户分配一个唯一性的标识用来区分不同的用户,若用户在网站没有注册,则用户可能没有唯一性的用户标识,本发明通过如下方式来区分独立的用户在用户访问网站的时候,通过HTTP头判定用户的COOKIE中是否存在用户唯一的用户标识,如果不存在则在COOKIE中设置一个16位的用户唯一标识,如U标识946e50alab305dfc。这样保证访问网站的的每一个用户都会有一个唯一用户标识,从而区分独立用户。B、使用布隆过滤器判断用户是否已经访问过所述广告,若否,则将所述广告的覆盖量的统计值加1,执行步骤C;-对于广告覆盖量的判定通过布隆过滤器来计算,具体步骤如下。Bl、建立用于判断用户是否已访问过广告的位示图;在内存中建立一个针对指定广告的拥有m比特位的位图,每一比特位都作为判断某一用户是否访问过指定广告的判断标识。B2、釆用N个相互独立的哈希函数对所述用户标识进行哈希计算,并将N个所得值作为所述位示图的下标,判断所述位示图中N个对应位的值是否都为l,若是,则所述广告的覆盖量统计值不加1,若否则将所述广告的覆盖量统计值加1;B3、将所述位示图中N个对应位中值不为1的置为1。本发明使用N个相互独立的哈希函数对用户唯一标识进行N次哈希计算,本发明一具体实施例中N取8,设N个哈希函数为Fi,i=0,l,2,...7,每次哈希计算Fi的值为Xi(0<=Xi<=m),将哈希计算所得值Xi作为下标,判断在位示图中Xi对应的标志位是否为1。根据步骤B2中的计数器判断,如果N次计算Xi对应位中的值不全为1,则认为该用户没有访问过指定的广告,该用户是第一次看到该广告的用户,因此将该广告的覆盖量统计值加1;如果N次计算Xi对应位中的值全为1,则判定该用户访问过指定的广告,则所述广告的覆盖量的统计值不加1。在更新完广告的覆盖量的统计值后,还需对本轮N次计算Xi对应位中不为l的值进行置l操作,以表明此用户已经统计过,以免下次重复统计。根据经验釆用8重Hash的过滤器,在填充率80%以内可以保证冲突率小于万分之一,这样对于有一'个5000万覆盖量的广告,建立位示图大约需要占用69M(l/0.8*50000000)内存空间。下面例举一个判定唯一用户标识的例子,当前位示图如下<table>tableseeoriginaldocumentpage8</column></row><table>进行某用户标识的第一次哈希计算的结果为2,判断位示图第2位为0则,设置该位为1并且判定该用户标识是一个新的用户标识,判定后位示图如下<table>tableseeoriginaldocumentpage8</column></row><table>当另外一个用户标识进行了8次哈希计算,每次哈希计算的结果都在位示图中存在(为1),则说明该用户标识已经存在。C、判断是否达到所述广告投放的覆盖量,若达到则执行所述投放策略。此步骤中所述的投放策略可以根据实际情况设定,如当投放量达到一定数值时停止投放指定广告,或修改投放的时间和次数等。图2为本发明的系统逻辑结构图,本发明所述系统包括广告发布系统、广告统计模块、广告管理模块三大部分。广告发布系统用于为用户提供广告的访问环境;广告统计模块用于对用户访问广告的覆盖量进行统计;广告管理模块用于根据广告的覆盖量执行投放策略。广告发布系统进一步包括广告服务器、WEB服务器。广告服务器用于为用户提供广告内容信息;WEB服务器用于为用户提供带有广告链接的网页。广告统计模块进一步包括位示图、布隆过滤器、覆盖量存储单元。位示图用于以位图形式记录用户访问标志;布隆过滤器用于根据用户标识对广告访问用户进行单一性过滤;覆盖量存储单元用于存储广告的覆盖量统计数据。布隆过滤器进一步包含N个哈希计算模块,每一哈希计算模块对所述用户标识进行计算并负责更新所述位示图中对应的用户访问标志位,当N个哈希计算模块计算的结果都表示同一用户访问过广告时,则所述布隆过滤器指令所述覆盖量存储单元将该广告的覆盖量值加1。为了更清楚地说明系统各部分之间的协作关系,在图2中用数字对用户访问广告及系统进行判断的过程进行了标注,以下对每一步骤进行说明步骤l、用户通过浏览器登陆网站;步骤2、用户点击了网站上发布的广告后,Web服务器将广告的链接地址反馈给用户浏览器;步骤3、用户浏览器根据Web服务器反馈的广告的链接地址访问广告服务器;对于一个广告位会固定在某一台广告服务器上,多个广告位可固定在一台服务器上。步骤4、广告服务器将广告数据传送给客户浏览器;步骤5、广告服务器将用户标识传送给广告统计模块;根据情况,广告统计模块可与广告服务器部署在同一台主机上。布隆过滤器对用户标识进行过滤,实时更新位示图中的用户访问标志及覆盖量存储单元中的覆盖量统计数据。由于广告统计模块是实时的对用户的覆盖量的统计数据进行更新,因此,广告管理模块可以实时的读取最新的统计数据。步骤6、广告管理模块从广告管理模块中的覆盖量存储单元中读取广告的覆盖量统计数据。步骤7、广告管理模块获得覆盖量统计数据后根据事先设定的广告投放策略对广告服务器的广告投放实施控制。以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。权利要求1、一种广告统计和投放的方法,其特征在于,包括如下步骤:A、为用户分配唯一标识,设定广告投放的覆盖量及投放策略;B、使用布隆过滤器判断用户是否已经访问过所述广告,若否,则将所述广告的覆盖量的统计值加1,执行步骤C;C、判断是否达到所述广告投放的覆盖量,若达到则执行所述投放策略。2、根据权利要求l所述的方法,其特征在于,步骤B中,通过如下步骤来判断用户是否访问过投放的广告Bl、建立用于判断用户是否已访问过广告的位示图;B2、采用N个相互独立的哈希函数对所述用户标识进行哈希计算,并将N个所得值作为所述位示图的下标,判断所述位示图中N个对应位的值是否都为l,若是,则所述广告的覆盖量统计值不加1,若否则将所述广告的覆盖量统计值加1;B3、将所述位示图中N个对应位中值不为1的值置为1。3、根据权利要求2所述的方法,其特征在于,步骤B2中,所述N的值为8;所述广告的投放策略指当所述广告的覆盖量达到设定值时停止广告的投放。4、一种广告统计和投放的系统,其特征在于,包括广告发布系统,用于为用户提供广告的访问环境;广告统计模块,用于对用户访问广告的覆盖量进行统计;广告管理模块,用于根据广告的覆盖量执行投放策略;所述广告发布系统为所述广告统计模块提供用户访问信息,所述广告统计模块根据所述用户访问信息计算出广告覆盖量,并将其传送给所述广告管理模块,所述广告管理模块根据投放策略对所述广告发布系统进行控制。5、根据权利要求4所述的方法,其特征在于,所述广告发布系统包括:广告服务器,用于为用户提供广告内容信息;WEB服务器,用于为用户提供带有广告链接的网页;所述广告服务器将获取的用户标识发送给所述广告统计模块,并接受所述广告管理模块的控制。6、根据权利要求5所述的方法,其特征在于,所述广告统计模块包括:位示图,用于以位图形式记录用户访问标志;布隆过滤器,用于根据用户标识对广告访问用户进行单一性过滤;覆盖量存储单元,用于存储广告的覆盖量统计数据;所述广告发布系统将用户标识传送给所述布隆过滤器,所述布隆过滤器实时更新所述位示图中的用户访问标志及所述覆盖量存储单元中的覆盖量统计数据,所述广告管理模块从所述覆盖量存储单元中读取广告的覆盖量统计数据。7、根据权利要求6所述的方法,其特征在于,所述布隆过滤器包含N个哈希计算模块,每一哈希计算模块对所述用户标识进行计算并负责更新所述位示图中对应的用户访问标志位,当N个哈希计算模块计算的结果都表示同一用户访问过广告时,则所述布隆过滤器指令所述覆盖量存储单元将该广告的覆盖量值加1。全文摘要本发明涉及基于万维网的广告统计和投放的方法及系统,尤其涉及一种采用布隆过滤器对唯一性访问用户的覆盖量进行统计的广告统计和投放的方法及系统。本发明采用布隆过滤器存储访问广告的具有唯一性的用户数据,能够获取实时的覆盖信息,使得广告主可以实时获取覆盖量的信息,实现按照覆盖量投放的目的,用最少的时间达到最佳投放效果。文档编号G06Q30/00GK101383034SQ20081016630公开日2009年3月11日申请日期2008年9月18日优先权日2008年9月18日发明者双吴申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1