具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面,分别结合附图说明本发明的实施例。
1.1参见图1,是本发明实施例中基于超文本模式数字电视受众信息测量***的流程图,在超文本模式下,不需要对现有双向机顶盒端做任何改造,使用便捷且可以做到全网全用户媒介接触测量,可以监测包括新闻、点播视频、交易股票、电子报纸等增值业务,但不局限于此类增值业务。现对步骤1-步骤3说明如下:
步骤1,表示所有采用浏览器模式的业务,如果是IPTV模式的数字电视业务,除增值业务外还可以直接监测收视率,而且这种收视率监测方法完全不需要对机顶盒端做任何改造、升级。
步骤2,由于超文本模式是对全部用户的使用行为进行测量,所以数据量极大,因此在本发明实施例中采用两级缓冲,即内存缓冲和文件缓冲算法,相互匹配协同工作。
步骤3,数据自动归类汇总,根据日期和业务类型将数据分类存储,以用于分析***或数据调用。
在前述说明的基础上,下面说明本发明实施例中超文本模式数字电视受众信息测量的流程,包括步骤如下:
101当机顶盒启动时,无需加载任何额外程序,按正常初始化过程,得到机顶盒识别号。
102用户进入电视主机界面,如果是数据广播式和浏览器混合型数字电视网,则只有进入在浏览器上运行的业务,超文本模式采集逻辑才开始工作;否则使用RDP模式监测。如果是IPTV模式或完全在浏览器上运行模式的数字电视网,则从开机后即进入超文本模式。
103当用户打开或使用一个在浏览器上运行的业务时,在对应业务的程序最下端会嵌入一条50字节左右的代码,用户打开业务之后,该段代码会自动随业务下载到机顶盒,并由机顶盒浏览器解释并执行。
104嵌入式程序自动获得用户识别参数,并根据植入代码的在浏览器上运行的业务的预定编码,自动发送携带所述用户识别参数和所述业务编码的数据请求到设定的HPT负载均衡地址,如果所述数据请求发送成功,则只发送一次;如果请求所指向的目标主机无响应,则重试若干次,如3次,仍然不成功则停止发送。当用户切换到其它在浏览器上运行的业务栏目时,前一业务栏目的植入程序将被销毁。
105监测服务器负载均衡接收到所述数据请求后,根据压力情况转发到不同的存储服务器,存储服务器收到的不是直接的数据,而是带有所述用户识别参数和所述业务编码的数据请求。
106收到所述数据请求的存储服务器指令驱动服务器应用处理服务,应用处理服务从所述数据请求中提取出所述用户识别参数和所述业务编码后,将对应的信息,如:机顶盒识别参数、业务识别编码、触发时间等时间信息存储到内存缓冲池。
107存储服务器根据内存缓冲池的大小判断何时回收数据,当内存缓冲达到设定量大小时,设定量可以是内存缓冲池中的记录数目,或记录的大小,应用服务处理程序自动将内存缓冲中的数据释放到文件,并清除内存缓冲池。
108当文件缓冲再次达到更大的一个设定数据量时,由专门的定时应用处理程序将文件压缩打包,分门别类存放到存储集群。
109每天汇总服务器会根据设定时间提取各个存储集群的数据,启动后寻找上次回收结束到目前新产生的所有数据,并启动下载进程,将不同存储 服务器的数据下载到自己的汇总储存器。
1.2参见图2,是本发明实施例中基于超文本模式数字电视受众信息测量***的请求处理机制图,超文本模式用户媒介接触测量,不直接通过机顶盒判断用户成员类型,而且以机顶盒为单位,提供其他用户成员构成测量手段实现用户的成员的识别,如,电话调研、在线调研等。当用户切换业务栏目时,如果该业务栏目是植入监测代码所预设需要检测的业务,则自动触发前述步骤103-104所进行的监测应用过程,然后发送数据请求到对应的监测服务器地址,监测服务器将所述数据请求中所含有的用户识别参数、业务识别参数(可以通过业务编码来区分)及其相关时间信息记录下来。
本发明实施例中超文本模式数字电视请求参数及原理说明
1.2.1数据请求中必须包含机顶盒识别信息,可以使用物理地址、CA号或其他唯一识别用户的信息,这些信息在机顶盒初始化时会存储在内存变量或者Cookies等访问信息中,除此之外还包括业务对应编码、预留字段和所述机顶盒所在城市编码,一共四个参数,其中预留字段和所述机顶盒所在城市编码可以为优选方案。
1.2.2首先超文本模式EPG传递参数到主机?:
主机地址......p?stbid=00001&inorout=1&actclass=2002&hostid=001
1.2.3getindex将会获取stbid、inorout、actclass、hostid四个参数,同时判断每一参数是否为空,如果有为空的参数,则摒弃该条数据。
Stbid:机顶盒号或CA***或机顶盒MAC地址。
Inorout:保留字,供开发新功能使用。
Actclass:业务识别码
Hostid:监测业务所在城市识别码。城市识别码是区分监测数据属于哪个城市。
1.2.4Staticmemory.setMemoryList(stdId,actClass,hostId,inorout),该方法将数据缓存到内存,因为内存操作的效率远远高于直接操 作数据库。
1.2.5判断内存中划分的记录空间是否超过预设值,如果是,则将该内存空间中的数据生成一个文件,例如文本文件,同时释放对应的内存空间;如果否,不予处理。
在本发明实施例中,可以优选将所述预设值设定为2000条,或5000条等,那么,当内存中划分的记录空间记录了超过2000条数据后,将该内存空间中的数据生成一个文本文件,同时释放对应的内存空间。
1.2.6预定时间到达,启动一个线程,该线程负责遍历存放内存空间所生成的文件的文件夹,如果是文本文件,则遍历其所在文件夹即可,同时将所述文件中的记录逐一存入数据库,存完后销毁对应的文件,如果所述文件是文本文件,则销毁所述文本文件。
通过上述步骤,就完成了将机顶盒的收视信息及用户行为信息都经由超文本模式收集到了数据库中。
通过数字电视网络提供的新闻、点播视频、交易股票、电子报纸等业务,都可以通过超文本模式对用户进行测量。超文本测量模块本身只占用终端几个字节的空间,一旦切换后,还能够自动销毁。这种技术方案的优点在于不会对用户的使用造成任何影响,也不会占用终端有限的资源。
在本发明实施例中,当用户触发超文本模式这种应用时,所有数据交由集群服务端缓存处理,应用逻辑代码体和数据都占用终端资源非常少,而且完成请求随即释放资源。而基于IP的各种业务器IP通路相对机顶盒资源更宽裕,应此此种逻辑更适合这类业务的测量。
1.3参见图3,是本发明实施例中基于HPT数字电视受众信息测量***的缓冲机制图,
超文本模式数据监测***可达到毫秒级用户行为普查式采样,该技术结构、采样方法及相关技术标准已形成本发明实施例自有的完整体系,在双向有线数字网下的检测是目前成本最低、效率最高的采样模式,能够完成海量数据测量。检测***设计标准为200万用户基础,日流量300万PV、最高峰值2500PV/m,此规模下每增加80万PV的流量或能承受至少500PV/m的压力, 不仅使得数据流量达到了每天百万级,而且成本还很低。
目前单一超文本模式接收***,实际测试容量到达300万/日、周末峰值<2000/秒、平均流量(24小时计)<34.8/秒、平均流量(12小时计)<69.5/秒,异常极高锋100/秒,异常极高锋持续<10秒。此模式的服务端缓冲机制和回传算法对海量样本或百万级用户全样本,在浏览器上运行业务的测量提供了稳定保障。
本发明实施例超文本模式服务器端数据缓冲说明
1.3.1接收用户识别参数,业务编码,和/或预留字段、机顶盒所在城市编码等参数,调用无返回状态的javabean类,把接收的参数组合成以逗号分隔(或者直接组合成SQL语句)的字符串,放入到一个静态变量(全局变量)数组A中,当数组A的长度达到规定的长度之后,启动一个线程,把该数组的内容记录到以时间方式命名的文件中,命名规则为年月日时分秒毫秒,最后再补加一组19位长度的随机数,如:“20090713213246203-1798030451425203678”,这样做是为防止文件缓冲存储过程中,可能发生重名覆盖的情况。录入完成之后,将表(文件存储表)***一条保存文件名的记录(标志为0表示没有处理).
1.3.2采用文件直存,分析时再导入数据库的方式,有以下好处:
a.防止大量数据同时写入数据库连接超载而产生拒绝服务的错误。
b.静态变量相当于是全局变量,它能在提供网络服务的等长时间内提供全程服务,而不是像一般的变量调用的时候初始化内容,调用完成自动销毁。
c.写文件的时候,一个设定数组只会写到一个特定名字的文件里面,绝对不会出现锁定的状态。
d.当写文件结束之后,才向文件存储表写入可以处理的记录,当读取文件存储表的类读取这张表的数据之后,是依次来处理文件的,这样能保证***数据不会混乱。
下面,结合附图,说明本发明实施例中RDP模式的工作过程。
在RDP模式下,可以区分为单向和双向两种模式。在双向模式的网络条件下,对于双向机顶盒的RDP监测,可以通过对机顶盒的软升级,来实现监测回传功能。即在机顶盒中植入含有处理器、存储硬件的RDP模式测量模块;如机顶盒性能达到需求标准,可复用机顶盒硬件,但必须使用监测应用处理程序。在单向模式的网络条件下,则可以直接在机顶盒中植入含有处理器、存储硬件、发射模块的RDP模式测量模块,在实际运用中,所述RDP模式测量模块可以用单片机来实现。
RDP模式测量模块中,机顶盒与服务器之间的接口通信将由两个步骤组成:
a.数据封装
b.数据通信
数据封装的方式以产生较小的封装体积为目标,这样可以降低数据通信的容量。
如图4所示,是本发明实施例中机顶盒和服务器的接口通信方框图,本发明实施例中,数据通信流程如下:
机顶盒底层驱动处理收视率信息并将其封装,底层驱动还可以处理其他用户行为信息,凡是基于非浏览器下发式交互操作都在本发明实施例的处理范围之内。
通过通信协议栈将数据送给***端的数据采集服务器。
数据采集服务器将整理好的数据传送给数据分析服务器进行数据分析。
下面,具体说明RDP模式的处理的详细流程。
2.1参见图5,是本发明实施例中基于RDP数字电视受众信息测量***的具体实施和流程图,通过网络升级或更换具有RDP测量中间件的机顶盒,测量数据包括但不限于收视率,凡是基于非浏览器下发式交互操作都在能够在本发明实施例监测范围之内。
步骤1代表当用户使用具有RDP模式功能的机顶盒后,通过遥控器特定按钮,甄别成员实现收视行为和基于非浏览器下发式交互操作行为监测的成员识别。
步骤2代表当家庭成员触发可监测事件时,如在频道切换、数字广播切换、下发式EPG或信息切换时,判断触发可监测事件有效后,将可监测事件对应的数据暂存在机顶盒存储器中,待数据满足分包条件后,通过机顶盒调制解调器接口等任何支持IP链路的模块传出,传输协议可以选择适当的协议。家庭成员是用户的一种,用户不限于家庭成员。
步骤3代表数据包首先到达DNS服务器,之后根据域名表对应IP将数据包转发到指定的负载均衡器IP和端口,负载均衡器根据目前数据量的动态平衡,将数据包分发到当前压力较小的存储服务器。
步骤4代表独立运行的存储服务器集群,接收通过负载均衡下发的数据,存储服务器的数目不限于图中三台,可根据城市实际用户数量增加存储服务器数量不断扩容。
步骤5代表,优先选择在数据压力较小时,如每天凌晨汇总服务器启动回收队列任务,分批次将存储服务器集群中的数据下载到汇总主机,最终由其它的独立分析***调用完整的汇总数据。有必要时,汇总服务器可以主动选择回收队列任务的时机。
本发明实施例中RDP模式数字电视受众信息测量步骤包括:
2.1.1具有RDP中间件的机顶盒冷启动启动后,首先进入常规初始化,其中重要一环是向时间同步服务器获取时间,进行同步时间校准,此过程在任何一次冷启动过程都必须进行,获取到同步时间后立刻将该时刻(精确到毫秒)记录入内存中变量,同时获取机顶盒识别信息,如物理地址、用户编号等,并启动RDP测量模块。
2.1.2RDP模块进入处理状态,首先获取内存中校准过的启动时间变量t0,但用户真正的开机时间是初始化之前的时间,由于开机初始化时间是设 定固定值t,因此实际启动时间是t0-t,运算产生真实冷启动时间、用户识别信息和操作识别数据,用以后期分析时运算开机率。
2.1.3机顶盒进入用户界面,用户根据遥控器指定按钮,确认自己的成员身份,此时可能有两种情况,首先如果是强制首页的机顶盒则记录一次进入首页门户的时间和识别数据,其次如果是默认频道或下发式EPG菜单,则记录一次相应家庭成员切换频道或EPG菜单状态。
2.1.4如果用户随后进入频道服务、待机、启动、数字广播、下发式EPG或信息等,只要是用户使用非浏览器模式的服务,无论收视率还是菜单,其受众信息即受众使用情况,都在可监测范围之内。此时RDP中间件不断获取切换和使用识别码、用户识别信息及时间,待机、启动、下发式EPG等操作信息根据中间件指定识别标签,频道、数字广播等则采用“频点”+“服务码”方式组合成识别标签,但机顶盒只记录识别标签,在机顶盒端不做任何其他处理。
2.1.5每次收到切换状态变化数据时,先将该数据放入一个两成员队列,新取得的记录与队列前一条对比,如果发现时间间隔小于有效切换时间,或者数据有异常则自动摒弃该新取得的记录数据,等待新数据到来。如果记录数据验证正常,则替换队列前一天数据,并释放前一条数据到内存中指定缓冲池,采用缓冲延时发送可以把网络使用频度降到最低。
2.1.6每隔预定时间,如5分钟,扫描一次缓冲池,如果缓冲池中没数据则等待下一个循环,如果缓冲存在数据,则进入分包机制,将数据分成最适合本发明实施例所采用的网络协议传输的大小。
2.1.7为了减少数据网络压力,分包时会对数据做进行适当的压缩算法处理,将数据量缩减一定比例后传输,采用本申请人所制定的专用协议,可以将数据量压缩70%,具体的协议内容参见后文及申请人的其他专利文件。
2.1.8RDP启动传输模式时,首先驱动硬件,之后将数据包根据协议内容发送到DNS处理服务器。
2.1.9DNS服务器收到端口数据后,根据路由表,全部转发所有数据到负 载均衡器。此处DNS作用有两个,首先会起到对数据的二次缓冲,其次IP地址是一种不可靠的可变节点,采用DNS中转,即便更改所有的服务器IP,也不需要重新升级和更换机顶盒,能够减少资源重复浪费。
2.1.10负载均衡器接收到相应数据后,对存储服务器集群进行压力评估,选择较压力较小的存储服务器发送数据。
2.1.11当存储服务器接受到信息后,首先使用网络协议校验数据,校验成功则放入内存缓冲池,同时发送源地址成功的标示。如果校验失败则获取数据包序列号和源地址,向数据包源地址发送重发请求,机顶盒收到重发信号后,将校验失败的所述数据再次发送,服务器收到重发数据后后销毁之前失效的数据,并将重发数据放入内存缓冲池,同时发送源地址成功的标示。
2.1.11当机顶盒收到所述成功标示后,清除已发送的数据内存,为下次存储做准备。
2.1.12存储服务器的内存缓冲池到达设定量时,将数据取出,并补充日期数据。由于每天发送的数据,都有相同的日期前缀,所以发送时压缩算法会将数据的日期部分删除,同时做其它压缩处理然后再封包发送,当数据从存储服务器缓冲中释放出来时,需要做机顶盒压缩算法的逆运算,分拆数据并打上日期码。
2.1.13每隔一段时间(可设定,每天或每小时),汇总服务器启动回收队列,按顺序分批次查询存储服务集群中所有服务器,将得到的数据下载汇总到一起。
2.1.14数据汇总收集后,要对数据做数据清洗格式化,清洗格式化后的数据为标准数据,可以被各种分析软件或数据库直接导入分析。
2.2参见图6所示,是本发明实施例中基于RDP数字电视受众信息测量***的通信示意图,机顶盒与服务器之间的接口通信将由两部分作成:a.数据封装b.数据通信。具体的由应用中间件采集数据,识别用户,并缓存数据,当数据满足条件后,启动适当协议进入封装流程,将大块数据封装成协议数 据包,启动协议回传部分进行全双工通信,发送数据等待校验,校验成功后删除机顶盒缓存数据,校验失败重新发送,超时则按设定寿命时间自动销毁。
本发明实施例中RDP模式数字电视测量通信步骤包括:
2.2.1开机后暂时不加载协议体,待采集应用中间件判断条件允许时,进入通信封装流程,此时加载协议体。
2.2.2协议体设计最佳分包大小为1800字节左右,当采集应用根据数据量大小分包后,每个小包体积不于1800字节,分好小包后运算出数据校验合,添加目标地址、源地址、包具体大小等等。
2.2.3协议体封装结束后,启动可以支持IP链路的硬件驱动。
2.2.4封装好的小数据包,按批次队列式发送,通过数据链路传递到目标服务器或者DNS服务器。
2.2.5服务器端或DNS端接收到数据后,根据部署结构缓冲或分流,最终到达文件接收服务器。
2.2.6当小数据包到达接收服务器后,根据相应的协议体封装规则,对数据包进行解码,解码之后得到数据位文本流,并进行数据校验判断。
2.2.7如果数据校验成功,则将文本流储存为文件格式,并向目标源发送确认信息,等待下一数据。
2.2.8如果数据校验失败,则把失败的包序列回执向目标机顶盒发送,待其重新发送,重发成功后,双方删除之前错误数据记录。
2.2.9任务完成后关闭数据连接,并卸载驱动关闭端口,等待下一任务。
2.3参见图7所示,是本发明实施例中基于RDP数字电视受众信息测量***的有效性验证示意图,不是所有的操作行为数据都有效的,比如用户连续快速换台,是没有实际媒介价值的,同时却增加了许多数据体积,增加了各个环节的处理负担。
为此,对有效性验证能够减少***资源的占用。本发明实施例中RDP模 式数字电视测量数据有效性验证流程包括步骤:
2.3.1判断是否为频道或数字广播切换信息,如果不是则不作判断,直接记录,如果类型匹配有效性验证成功,则进入下一步。
2.3.2当得到一条A记录时,A进入队列,如果A1位无数据,则A记录直接记录入A1位,等待下一条记录。
2.3.3当再次得到一条记录A时,A进入队列并赋予A2位,两条数据进行对比,数据正常并且两条记录的时间差大于等于设定有效时间差,如>=3秒。则数据A1位释放到寄存器缓冲池,A2位进入A1位,清空A2位,A2位等待下一条记录。
2.3.4当再次得到一条记录A时,A进入队列并赋予A2位,两条数据进行对比,数据正常并且两条记录的时间差小于等于设定有效时间差,如<=3秒。则数据A2位直接摒弃,A1位继续保留等待下一条记录。
2.4参见图8所示,是本发明实施例中基于RDP数字电视受众信息测量***的封包算法图,当产生记录后,不立刻发送数据,而是通过相应的分包算法,而是由终端模块或置入模块动态对数据量和时间长度进行适应,1.8K,1.2K的分包大小符合单包1.8K左右最佳传输体积分包模型。这个分包大小的设定是基于当前的网络条件而选择的,所属领域的技术人员在不付出创造性劳动的情况下,还可以根据不同的网络条件和硬件情况选择其他的数据包大小,这种选择没有超出本发明的保护范围。
本发明实施例中RDP模式数字电视测量数据分包流程算法包括步骤:
2.4.1将缓冲池中的机顶盒识别号、成员识别号、操作记录和时间一条条提取出来,数据重构成一个机顶盒识别号后,5分钟内若干的成员识别号、操作记录和时间的格式。缩减体积为N条记录,则:最终体积=N*(机顶盒识别号长度+1+8+8)-((N-1)*机顶盒识别号长度),5分钟的预定时间间隔可以根据实际需要进行设定。
2.4.2每到5分钟,先发一个最大不超过45条记录的包,send+length+ databody=4+4+45*40=1808字节的一个包。根据实际统计,第一次发的包有至少86%的用户5钟内数据可以全部发完。
2.4.3第一个包发完后,判断还有没有数据,如果还有再发第二个包,第二个包的体积小于等于35记录*40字节=1200字节+8位头字节=1208字节。
2.4.4出现5分钟内75条记录的极端情况可全部发完,同时在大多数情况下机顶盒只需要发一次包即可发送完一个用户5分钟内的全部数据,最多两次可以全部发送完。
2.5参见图9所示,是本发明实施例中基于RDP数字电视受众信息测量***的专用协议框架图,电视媒体受众信息测量的基本原则是不影响用户正常使用,但目前公共的传输协议,协议堆栈包含过多子协议,在传输使用时需要三次握手,那么一次数据的传输需要三倍的的交换信息传输,不仅占用有限的带宽同时完成周期也是三倍。本发明实施例中,自主研发的通信协议,只需要一次握手,仅仅在数据异常时进行二次反馈,应此专用协议实现回路传输的高效、低消耗。
本发明中基于RDP数字电视受众信息测量***的专用私有协议体数据结构
2.5.1.1协议体包括虚拟首部
协议体虚拟首部,主要包括:
a.源地址即从哪里发出,以便回执信息时确定回执目标地址。
b.目标地址即发往何处,可以只域名形势或IP形势。
c.握手信息即信息确认,当前端接收后确认是否为正确收到的数据,是否为重发数据。
d.数据长度即所发包的总长度,由于封装数据转化为2进制流,解封和校验时需要获知准确的数据原始长度。
e.生命周期即该包路由次数,当超过设定生命周期,自动销毁数据包,防止在网络里产生冗余数据。
f.端口为私有端口端,不同于常见的8080、80、21等,而且这个段也是非公端,不会与其他***数据产生数据混乱。
2.5.1.2机顶盒端协议体包括数据封装体
如果机顶盒识别号为24位则,$16位操作码后16位协议头,即:
16位收视信息+24位机顶盒识别信息(例:0600010020508AFF02050205)
$0600010020508AFF020S02050000FFF11257570
“send 80”
$0000FFF112575700600010020508AFF02050205$000000001258090$0000FFFF1258200$0000FFF11258260$0000FFFF1258330″
一包一行记录,共享一个机顶盒识别信息头部,如:
”send80$...40字节数据...$......”包1
”send80$...40字节数据...$......”包2
”send80$...40字节数据...$......”包3
2.5.1.3前端补码后的单个数据结构体如下:
分拆数据解码后得到,
字节 |
标示 |
数据包 |
描述 |
00 |
ST |
$ |
记录开始 |
01 |
Sb |
|
对应机顶盒识别信息 |
02 |
Nr |
06 |
以Hex进制表示从此字节后所有 数据的数目. |
03...06
|
CTID |
6150 |
城市码 |
07...10 |
TSID |
00F0 |
传输数据流ID |
11...14 |
SID |
FFF1 |
服务ID |
15,16 |
End |
FF |
校验和(End) |
所有传输数据用16进制ASCII码表示,高字节在前。
前端部单元数据源码如下:
例如收到机顶盒号一个包后,该机顶盒号为:
EA320010020508AFF0205020
则:ST+Nr+Sb+CTID+TSID+SID+End得,
$EA320010020508AFF020502060615000F0FFF1FF
从以上数据结构可以看出,当机顶盒端发送数据后进行协议体压缩,在接受后再重新组码完整的还原了数据,同时有效的降低了数据的体积,设N为操作条数,L为数据长度则:压缩比为=N*(L+1+8+8)-((N-1)*L)/N*L
在实际使用中测量发现,本发明实施例在采用上述专用协议的情况下,真实环境下可以降低数据体积70%左右,为海量数字使用行为测量提供了可能,目前在国内最大双向数字网采用本***取得了良好的效果,稳定运行并且每天有数十万条RDP数据传递与机顶盒和前端之间。
收视信息是一种应用,还可以是本发明实施例中所监测的所有信息。
本发明实施例还提供了一种获取数字电视受众信息的方法,包括步骤:
获取机顶盒识别号;
当用户打开或使用一个在浏览器上运行的业务时,在对应业务的程序最下端嵌入代码;
所述机顶盒执行所述代码;
嵌入式程序启动后,所述嵌入式程序获得用户识别参数和所述业务的编码;识别参数是可以其包括:机顶盒号、CA***、机顶盒物理地址、数字电视运营商制定的用户编号。
所述嵌入式程序向设定的HPT负载均衡地址发送携带所述用户识别参数和所述业务的编码的数据请求;
所述设定的HPT负载均衡地址根据压力情况将所述数据请求转发到相应的存储服务器;
存储服务器指令驱动服务器从所述数据请求中提取出所述用户识别参数、所述业务编码,记录相关时间信息。
其中,还可以包括:
所述驱动服务器将所述用户识别参数、所述业务编码和相关时间信息存在到内存缓冲池。
其中,还可以包括:
当所述内存缓冲池达到设定量大小时,将其中的全部数据释放到文件缓冲池,清空内存缓冲池。
其中,还可以包括:
当文件缓冲池达到预定量大小时,将所述文件缓冲池内的文件压缩打包后存储到存储集群。
其中,还可以包括:
汇总服务器在预定时间到达时,提取各个存储集群存储的压缩文件。
其中,嵌入式程序启动后,还包括:
所述嵌入式程序获得预留字段和所述机顶盒所在城市编码;
所述数据请求还包括:所述预留字段和所述机顶盒所在城市编码。
其中,获取机顶盒识别号后,还包括:
用户触发可监测事件时,将所述可监测事件对应的数据暂存在机顶盒存储器中。
其中,还包括:
将所述可监测事件对应的数据分包后,通过因特网协议链路,向DNS服务器发送所述数据包。
其中,还包括:
所述DNS服务器根据域名表,将所述数据包转发到指定的负载均衡器,所述负载均衡器将所述数据包分发到当前压力较小的存储服务器。
其中,还包括:
汇总服务器启动回收队列任务,下载所述存储服务器中的数据。
其中,获取机顶盒识别号之前,还包括:
所述机顶盒向时间同步服务器获取时间,将该时刻记录入内存中变量。
其中,还包括:
机顶盒进入用户界面后,确定用户身份。
其中,还包括:
机顶盒记录非浏览器模式服务对应的识别标签。
其中,还包括:
判断是否为频道或数字广播切换信息,如果不是则不作判断,直接记录,如果类型匹配有效性验证成功,则:
当得到一条A记录时,A进入队列,如果A1位无数据,则A记录直接记录入A1位,等待下一条记录;
当再次得到一条记录A时,A进入队列并赋予A2位,两条数据进行对比:
数据正常并且两条记录的时间差大于等于设定有效时间差,则数据A1位释放到寄存器缓冲池,A2位进入A1位,清空A2位,A2位等待下一条记录;
数据正常并且两条记录的时间差小于等于设定有效时间差,则数据A2位直接摒弃,A1位继续保留等待下一条记录。
机顶盒识别信息不能为空值、”null”和”undefined”,栏目\业务识别码不能为空值、”null”和”undefined”。
其中,所述分包包括:
将缓冲池中预定时间间隔的第一机顶盒识别号、成员识别号、操作记录和时间都提取出来,重构为第二机顶盒识别号;
预定时间间隔到达,发送一个最大不超过第一数量记录的包;
如果还有数据未发送,则发送所述未发送的数据。
其中,所述包的格式包括:
协议体虚拟首部,包括源地址,目标地址,握手信息,数据长度、所述包的生命周期和端口;
数据封装体,包括收视信息和机顶盒识别信息。
本发明实施例还提供了一种获取数字电视受众信息的***,包括:
机顶盒,监测服务器,存储服务器和驱动服务器;
所述监测服务器包括:
第一获取单元,用于获取机顶盒识别号;
嵌入单元,用于当用户打开或使用一个在浏览器上运行的业务时,在对应业务的程序最下端嵌入代码;
所述代码用于供所述机顶盒执行所述代码;
第二获取单元,用于嵌入式程序启动后,获得用户识别参数和所述业务的编码;
发送单元,用于向设定的HPT负载均衡地址发送携带所述用户识别参数和所述业务的编码的数据请求;
分发单元,用于根据压力情况将所述数据请求转发到相应的存储服务器;
存储服务器用于指令驱动服务器从所述数据请求中提取出所述用户识别参数、所述业务编码,记录相关时间信息。
其中,所述驱动服务器还用于将所述用户识别参数、所述业务编码和相关时间信息存在到内存缓冲池。
其中,当所述内存缓冲池达到设定量大小时,将其中的全部数据释放到文件缓冲池,清空内存缓冲池。
其中,当文件缓冲池达到预定量大小时,将所述文件缓冲池内的文件压缩打包后存储到存储集群。
其中,还包括:
汇总服务器,用于在预定时间到达时,提取各个存储集群存储的压缩文件。
其中,嵌入式程序启动后,还包括:
第三获取单元,用于获得预留字段和所述机顶盒所在城市编码;
所述数据请求还包括:所述预留字段和所述机顶盒所在城市编码。
其中,获取机顶盒识别号后,还包括:
用户触发可监测事件时,将所述可监测事件对应的数据暂存在机顶盒存储器中。
其中,还包括:
将所述可监测事件对应的数据分包后,机顶盒通过因特网协议链路,向DNS服务器发送所述数据包。
其中,还包括:
所述DNS服务器根据域名表,将所述数据包转发到指定的负载均衡器,所述负载均衡器将所述数据包分发到当前压力较小的存储服务器。
其中,还包括:
汇总服务器启动回收队列任务,下载所述存储服务器中的数据。
其中,获取机顶盒识别号之前,还包括:
所述机顶盒向时间同步服务器获取时间,将该时刻记录入内存中变量。
其中,还包括:
机顶盒进入用户界面后,确定用户身份。
其中,还包括:
机顶盒记录非浏览器模式服务对应的识别标签。
其中,还包括:
判断是否为频道或数字广播切换信息,如果不是则不作判断,直接记录,如果类型匹配有效性验证成功,则:
当得到一条A记录时,A进入队列,如果A1位无数据,则A记录直接记录入A1位,等待下一条记录;
当再次得到一条记录A时,A进入队列并赋予A2位,两条数据进行对比:
数据正常并且两条记录的时间差大于等于设定有效时间差,则数据A1位释放到寄存器缓冲池,A2位进入A1位,清空A2位,A2位等待下一条记录;
数据正常并且两条记录的时间差小于等于设定有效时间差,则数据A2位直接摒弃,A1位继续保留等待下一条记录。
其中,所述分包包括:
将缓冲池中预定时间间隔的第一机顶盒识别号、成员识别号、操作记录和时间都提取出来,重构为第二机顶盒识别号;
预定时间间隔到达,发送一个最大不超过第一数量记录的包;
如果还有数据未发送,则发送所述未发送的数据。
其中,所述包的格式包括:
协议体虚拟首部,包括源地址,目标地址,握手信息,数据长度、所述包的生命周期和端口;
数据封装体,包括收视信息和机顶盒识别信息。
本发明实施例还提供了一种获取数字电视受众信息的装置,包括:
第一获取单元,用于获取机顶盒识别号;
嵌入单元,用于当用户打开或使用一个在浏览器上运行的业务时,在对应业务的程序最下端嵌入代码;
所述代码用于供所述机顶盒执行所述代码;
第二获取单元,用于嵌入式程序启动后,获得用户识别参数和所述业务的编码;
发送单元,用于向设定的HPT负载均衡地址发送携带所述用户识别参数和所述业务的编码的数据请求;
分发单元,用于根据压力情况将所述数据请求转发到相应的存储服务器;以指示存储服务器指令驱动服务器从所述数据请求中提取出所述用户识别参数、所述业务编码,记录相关时间信息。
其中,所述驱动服务器还用于将所述用户识别参数、所述业务编码和相关时间信息存在到内存缓冲池。
其中,当所述内存缓冲池达到设定量大小时,将其中的全部数据释放到文件缓冲池,清空内存缓冲池。
其中,当文件缓冲池达到预定量大小时,将所述文件缓冲池内的文件压缩打包后存储到存储集群。
其中,还包括:
汇总服务器,用于在预定时间到达时,提取各个存储集群存储的压缩文件。
其中,嵌入式程序启动后,还包括:
第三获取单元,用于获得预留字段和所述机顶盒所在城市编码;
所述数据请求还包括:所述预留字段和所述机顶盒所在城市编码。
本发明实施例还提供了一种获取数字电视受众信息的装置,通常以机顶盒的形式出现,包括:
生成单元,用于生成机顶盒识别号;
执行单元,用于当用户打开或使用一个在浏览器上运行的业务时,执行在对应业务的程序最下端所嵌入的代码;
封装单元,用于将所述执行单元执行后,封装嵌入式程序所获得的用户识别参数和所述业务的编码成为数据请求;
发送单元,用于向设定的HPT负载均衡地址发送携带所述用户识别参数和所述业务的编码的数据请求。
其中,嵌入式程序启动后,还包括:
第三获取单元,用于获得预留字段和所述机顶盒所在城市编码;
所述数据请求还包括:所述预留字段和所述机顶盒所在城市编码。
其中,获取机顶盒识别号后,还包括:
存储器,用于用户触发可监测事件时,将所述可监测事件对应的数据暂存。
其中,还包括:
同步单元,用于向时间同步服务器获取时间,将该时刻记录入内存中变量。
其中,还包括:
确定单元,用于在机顶盒进入用户界面后,确定用户身份。
其中,还包括:
识别标签记录单元,用于记录非浏览器模式服务对应的识别标签。
本发明的各个实施例具有相应的特定技术特征,其具有相同或相类似的技术效果,不再重复。
下面,通过实例,说明本发明实施例相比较现有技术所具有的显著的进步。
目前,现有技术中的测量体系由300至500个样本用户数据,来推及一个城市几十万甚至上百万用户的电视使用情况,就目前数据对比传统小样本测量误差极大,无法支撑大容量用户测量数据的监测和传输。参看下表1可知,本发明实施例完全可以基于海量受众信息进行监测。
表1
表2置信区间的正态分布
参考图10所示,是不同样本数量的统计结果示意图;
当样本数量为300户时,7点35分的测量数据为1%,而3000样本户与10000样本户的结果表明,该时间段的测量数据为0.5%,说明样本数量为300户时的测量数据统计结果发生了异常。
图11所示,是对图10所示情况在真实还原非黄金时段测量数据示意图;
表3所示,是全样本精确到每个家庭的统计,可以看到对于120万用户的城市,增值业务行为识别精确到个位数。
表3
表6所示,是精确到毫秒的数据测量
表6
增值业 务 |
11040130101052544C1C0B91′,′L0006′,1,1,′2007′,′04′,′13′,′09′,′20′,′45′,′375′, |
|
2007年4月13号9点20分45秒375毫秒发生一次业务L0006的用户使用 |
收视行 为 |
11040280201052544C1E9A74,06160404511805,′2008′,′03′,′12′,′01′,′13′,′23′,′914′, |
|
2008年3月12号1点13分23秒914毫秒发生一次用户换0404511805台操作。 |
目前国内数字电视有线网存在多种异构模式共存的情况,因此本发明中HPT模式和RDP模式采用分体式设计,当遇到HPT采样和RDP采样共存的环境下,能够做同步运作互不干扰,不存在依存关系。在纯HPT环境时,则独立使用纯HPT模块独立运行,反之依然。分体设计模式可以充分融入各种异构网络环境,各模块设计采样精度和标准互不干扰,能够有效防止重复投资,也显著提升了产品的适应性和竞争力。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。本发明的技术方案可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,包括若干指令用以使得计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的保护范围之内。