CN105761119B - 在线人数分布计算方法及装置 - Google Patents
在线人数分布计算方法及装置 Download PDFInfo
- Publication number
- CN105761119B CN105761119B CN201610192797.9A CN201610192797A CN105761119B CN 105761119 B CN105761119 B CN 105761119B CN 201610192797 A CN201610192797 A CN 201610192797A CN 105761119 B CN105761119 B CN 105761119B
- Authority
- CN
- China
- Prior art keywords
- section
- line duration
- time
- online
- duration section
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Data Mining & Analysis (AREA)
- Economics (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种在线人数分布计算方法及装置,属于在线直播领域。该方法包括获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段;对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段;根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据;解决了在计算对应于不同类型的客户端的在线人数统计数据时,计算数量庞大,计算较为耗时的问题;达到了在计算过程中规避笛卡尔乘积和大量的去重计算,计算在线人数在不同类型的客户端上的分布情况时简化数据,减少计算数据计算量,提高算法运行效率的效果。
Description
技术领域
本发明实施例涉及在线直播领域,特别涉及一种在线人数计算方法及装置。
背景技术
在互联网产品中,用户客户端一般分为三类型:电脑客户端、手机客户端和网页客户端。当统计出互联网产品的最高在线人数之后,为更好地观察用户分布情况,还需要统计出每一秒的同时在线人数,以及每一秒的同时在线人数在三种客户端上的分布情况。
现有技术中,使用事实表存储用户的在线数据,事实表中的每条记录里至少包括互联网产品名、日期、用户名、客户端、开始时间和结束时间,使用时间维表存储一天的时间,时间维表中用秒表征00:00:00至23:59:59的时间,一秒为一条记录,共有24*3600即86400条记录。在利用SQL(Structured Query Language,结构化查询语言)计算在线人数时,需要将事实表和时间维表做连接运算,若事实表中有N条记录,则完成N*86400次运算后,得到N*86400个每一秒三种用户客户端上总的同时在线人数的统计结果,再重复N*86400次运算后,得到每一秒各个用户客户端上同时在线人数的统计结果。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:由于将事实表和时间维表做连接时是做笛卡尔乘积,事实表和时间维表连接之后的数据集大小为N*86400,且每计算一秒的同时在线人数就需要进行一次去重统计,完成N*86400次计算相当于需要进行N*86400次去重统计,导致计算过程中数据量过于庞大,计算过程较为耗时。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种在线人数分布计算方法及装置。该技术方案如下:
第一方面,提供了一种在线人数分布计算方法,该方法包括:
获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段;
对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的;
根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据。
可选的,对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,包括:
对于每个用户,将用户对应于不同类型的客户端的在线时间段按照起始时间的先后顺序进行排序,得到m个在线时间段,m为正整数;
获取m个在线时间段中的第i个在线时间段,i的初始值为2;
利用第i个在线时间段对已有的分裂时间段进行分裂;已有的分裂时间段是对前i-1个在线时间段进行分裂后得到的分裂时间段,已有的分裂时间段的初始值是m个在线时间段中的第1个在线时间段;
在i<m时,令i=i+1,重复执行获取m个在线时间段中的第i个时间段的步骤。
可选的,利用第i个在线时间段对已有的分裂时间段进行分裂,包括:
检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集,x的初始值为1,已有的分裂时间段中共有k个在线时间段,k为正整数;
若第i个在线时间段与已有的分裂时间段中的第x个在线时段存在交集,则利用第i个在线时间段按照交集端点对已有的分裂时间段中的第x个在线时间段进行分裂,得到分裂时间段;
在x<k时,令x=x+1,重复执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤;
其中,分裂时间段中起始时间和结束时间均为交集端点时,分裂时间段的在线类型对应于至少两种类型的客户端。
可选的,利用第i个在线时间段按照交集端点对已有的分裂时间段中的第x个在线时间段进行分裂,得到分裂时间段,包括:
根据交集端点,将第i个在线时间段和已有的分裂时间段中的第x个在线时间段分裂为不存在交集的分裂时间段;
在x<k时,检测第i个在线时间段的结束时间是否晚于已有的分裂时间段中的第x个在线时段的结束时间;
若第i个在线时间段的结束时间晚于已有的分裂时间段中的第x个在线时段的结束时间,则从得到的分裂时间段中确定出指定分裂时间段,指定分裂时间段的起始时间为第x个在线时间段的结束时间加一个计量时间的最小刻度,指定分裂时间段的结束时间为第i个在线时间段的结束时间;
令x=x+1,将指定分裂时间段重新确定为第i个在线时间段,重新执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
可选的,检测第i个在线时间段的结束时间是否晚于已有的分裂时间段中的第x个在线时段的结束时间之后,还包括:
若第i个在线时间段的结束时间不晚于已有的分裂时间段中的第x个在线时段的结束时间,则令x=x+1,重新执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
可选的,检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集之后,还包括:
若第i个在线时间段与已有的分裂时间段中的第x个在线时间段不存在交集,则在x<k时,令x=x+1,重新执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
可选的,根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据,包括:
对于每个用户对应于不同在线类型的分裂时间段,逐个取出分裂时间段中所包括的每个时间点,时间点采用秒表征;
若统计数据中尚不存在时间点,则将时间点添加至统计数据;
对于每个时间点对应的客户端类型,若时间点对应的客户端类型已经存在于统计数据中,则将客户端类型对应的在线人数加一;
若时间点对应的客户端类型尚不存在,则将客户端类型添加至统计数据中,并将客户端类型对应的在线人数设置为一。
第二方面,提供了一种在线人数分布计算装置,该装置包括:
获取模块,用于获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段;
分裂模块,用于对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的;
计算模块,用于根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据。
可选的,分裂模块包括:
排序单元,用于对于每个用户,将用户对应于不同类型的客户端的在线时间段按照起始时间的先后顺序进行排序,得到m个在线时间段,m为正整数;
获取单元,用于获取m个在线时间段中的第i个在线时间段,i的初始值为2;
分裂单元,用于利用第i个在线时间段对已有的分裂时间段进行分裂;已有的分裂时间段是对前i-1个在线时间段进行分裂后得到的分裂时间段,已有的分裂时间段的初始值是m个在线时间段中的第1个在线时间段;
重复单元,用于在i<m时,令i=i+1,重复执行获取m个在线时间段中的第i个时间段的步骤。
可选的,分裂单元包括:
检测子单元,用于检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集,x的初始值为1,已有的分裂时间段中共有k个在线时间段,k为正整数;
分裂子单元,用于若第i个在线时间段与已有的分裂时间段中的第x个在线时段存在交集,则利用第i个在线时间段按照交集端点对已有的分裂时间段中的第x个在线时间段进行分裂,得到分裂时间段;
第一重复子单元,用于在x<k时,令x=x+1,重复执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤;
其中,分裂时间段中起始时间和结束时间均为交集端点时,分裂时间段的在线类型对应于至少两种类型的客户端。
可选的,分裂子单元,具体用于:
根据交集端点,将第i个在线时间段和已有的分裂时间段中的第x个在线时间段分裂为不存在交集的分裂时间段;
在x<k时,检测第i个在线时间段的结束时间是否晚于已有的分裂时间段中的第x个在线时段的结束时间;
若第i个在线时间段的结束时间晚于已有的分裂时间段中的第x个在线时段的结束时间,则从得到的分裂时间段中确定出指定分裂时间段,指定分裂时间段的起始时间为第x个在线时间段的结束时间加一个计量时间的最小刻度,指定分裂时间段的结束时间为第i个在线时间段的结束时间;
令x=x+1,将指定分裂时间段重新确定为第i个在线时间段,重新执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
可选的,分裂子单元,具体用于:
若第i个在线时间段的结束时间不晚于已有的分裂时间段中的第x个在线时段的结束时间,则令x=x+1,重新执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
可选的,分裂单元,还包括:
第二重复子单元,用于若第i个在线时间段与已有的分裂时间段中的第x个在线时间段不存在交集,则在x<k时,令x=x+1,重新执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
可选的,计算模块,包括:
时间点取出单元,用于对于每个用户对应于不同在线类型的分裂时间段,逐个取出分裂时间段中所包括的每个时间点,时间点采用秒表征;
第一设置单元,用于若统计数据中尚不存在时间点,则将时间点添加至统计数据;
第二设置单元,用于对于每个时间点对应的客户端类型,若时间点对应的客户端类型已经存在于统计数据中,则将客户端类型对应的在线人数加一;
第三设置单元,用于若时间点对应的客户端类型尚不存在,则将客户端类型添加至统计数据中,并将客户端类型对应的在线人数设置为一。
本发明实施例提供的技术方案带来的有益效果是:
通过获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段,对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的,根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据;解决了在计算对应于不同类型的客户端的在线人数统计数据时,计算数量庞大,计算较为耗时的问题;达到了在计算过程中规避笛卡尔乘积和大量的去重计算,计算在线人数在不同类型的客户端上的分布情况时简化数据,减少计算数据计算量,降低计算时间,提高算法运行效率的效果。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种在线人数分布计算方法的流程图;
图2A是根据另一示例性实施例示出的一种在线人数分布计算方法的流程图;
图2B是根据另一示例性实施例示出的一种在线人数分布计算方法的流程图;
图3是根据一示例性实施例示出的一种在线人数分布计算装置的框图;
图4是根据另一示例性实施例示出的一种在线人数分布计算装置的框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
请参考图1,其示出了本发明一个实施例提供的在线人数分布计算方法的流程图。该在在线人数分布计算方法适用于互联网产品提供商的服务器中。如图1所示,该在线人数分布计算方法可以包括以下步骤:
在步骤101中,获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段。
可选的,用户可以通过不同类型的客户端登录互联网产品,客户端类型包括:网页客户端、手机客户端、电脑客户端等。
用户在某一类型的客户端上持续登录互联网产品的时间即为用户在互联网产品中对应于不同类型的客户端的在线时间段。
服务器获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段。
在步骤102中,对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的。
可选的,同一用户可能在同一时间登录多个不同类型的客户端,因此每个用户在对应于不同类型的客户端的在线时间段可能会存在交集。
可选的,按照交集端点进行分裂后,得到的每个用户在不同在线类型下的分裂时间段之间不存在交集,分裂时间段的在线类型与分裂之前对应的客户端类型有关。
比如:一个用户在对应于不同类型的客户端的两个在线时间段存在交集,有两个交集端点,分裂后得到的分裂时间段中的一个分裂时间段的起始时间和结束时间均为交集端点,可知该起始时间和结束时间均为交集端点的分裂时间段被同时包括在对应于不同类型的客户端的两个在线时间段中,因此该起始时间和结束时间均为交集端点的分裂时间段的在线类型对应于两个不同类型的客户端;其他分裂时间段的在线类型与分裂之前所在的在线时间段对应的客户端类型相同。
在步骤103中,根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据。
综上所述,本发明实施例提供的在线人数分布计算方法,通过获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段,对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的,根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据;解决了在计算对应于不同类型的客户端的在线人数统计数据时,计算数量庞大,计算较为耗时的问题;达到了在计算过程中规避笛卡尔乘积和大量的去重计算,计算在线人数在不同类型的客户端上的分布情况时简化数据,减少计算数据计算量,降低计算时间,提高算法运行效率的效果。
请参考图2A,其示出了本发明另一个实施例提供的在线人数分布计算方法的流程图。该在在线人数分布计算方法适用于互联网产品提供商的服务器中。如图2A所示,该在线人数分布计算方法可以包括以下步骤:
在步骤201中,获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段。
可选的,用户可以通过不同类型的客户端登录互联网产品,客户端类型包括:网页客户端、手机客户端、电脑客户端等。
用户在某一类型的客户端上持续登录互联网产品的时间即为用户在互联网产品中对应于不同类型的客户端的在线时间段。
服务器获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段。
可选的,一个互联网产品通常有多个子产品,同一个用户可以在某一类型的客户端上同时登录同一个互联网产品的多个子产品,一个用户在某一类型的客户端上登录一个子产品就会有一个与客户端类型对应的在线时间段。服务器最先获取的一般是各个用户在互联网产品的多个子产品中的对应于不同类型的客户端的在线时间段,服务器再将每个用户在多个子产品中对应于相同类型的客户端的在线时间段中存在交集的在线时间段进行合并,最后得到各个用户在互联网产品中对应于不同类型的客户端的在线时间段。
比如:某一用户在手机客户端上登录了同一互联网产品的两个子产品,对已该互联网产品,服务器获取到该用户对应于手机客户端的两个在线时间段,如表一所示:
表一
由表一可知,用户A对应于手机客户端的两个在线时间段存在交集,将这两个时间段合并,得到合并后的用户A对应于手机客户端的在线时间段:
用户 | 产品 | 客户端 | 起始时间 | 结束时间 |
A | 虎牙 | 手机客户端 | 9:00:00 | 9:04:59 |
在步骤202中,对于每个用户,将用户对应于不同类型的客户端的在线时间段按照起始时间的先后顺序进行排序,得到m个在线时间段,m为正整数。
针对每个用户,将用户对应于不同类型的客户端的在线时间段按照起始时间的先后顺序进行排序,即起始时间越早,所在位置越靠前;一个用户的在线时间段排列结束后,对下一个用户的在线时间段进行排序,一共得到排序后的m个在线时间段。
可选的,起始时间是用秒表征的时间。
假设互联网产品为虎牙,对用户A对应于不同类型的客户端的在线时间段按起始时间的先后顺序排序,得到的排序后的3个在线时间段,如表二所示:
表二
行号 | 产品 | 用户 | 客户端 | 起始时间 | 结束时间 |
1 | 虎牙 | A | 电脑客户端 | 9:00:00 | 9:00:04 |
2 | 虎牙 | A | 网页客户端 | 9:00:02 | 9:00:06 |
3 | 虎牙 | A | 手机客户端 | 9:00:04 | 9:00:07 |
需要说明的是,该步骤可以在步骤201中实现,即步骤201中获取到的各个用户在互联网产品中对应于不同类型的客户端的在线时间段已经是按起始时间的先后顺序排序后的在线时间段。
在步骤203中,获取m个在线时间段中的第i个在线时间段,i的初始值为2。
可选的,i的取值范围为2至m。
在步骤204中,利用第i个在线时间段对已有的分裂时间段进行分裂;已有的分裂时间段是对前i-1个在线时间段进行分裂后得到的分裂时间段,已有的分裂时间段的初始值是m个在线时间段中的第1个在线时间段。
在i<m时,令i=i+1,重复执行步骤204。
比如:在i=2时,按照m个在线时间段中第1个在线时间段与第2个在线时间段的交集端点,利用第2个在线时间段对第1个在线时间段进行分裂,此时,i=2<m,令i=i+1=2+1=3,再利用第3个在线时间段对已有的分裂时间段进行分裂,已有的分裂时间段是第2个在线时间段对第1个在线时间段分裂后得到的分裂时间段。
步骤204可由如下步骤具体实现,如图2B所示:
在步骤2041中,检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集。
其中,x的初始值为1,已有的分裂时间段中共有k个在线时间段,k为正整数。
若第i个在线时间段与已有的分裂时间段中的第x个在线时间段不存在交集,则在x<k时,令x=x+1,重新执行步骤2041。
若第i个在线时间段与已有的分裂时间段中的第x个在线时段存在交集,则利用第i个在线时间段按照交集端点对已有的分裂时间段中的第x个在线时间段进行分裂,得到分裂时间段,即执行步骤2042;
其中,分裂时间段中起始时间和结束时间均为交集端点时,分裂时间段的在线类型对应于至少两种类型的客户端;其他情况下,分裂时间段的在线类型对应于一种类型的客户端,分裂时间段的在线类型对应的客户端类型与分裂之前所在的在线时间段对应的客户端类型相关,即:若分裂时间段在分裂之前,被同时包括在至少两个对应于不同类型的客户端的在线时间段内,则分裂时间段的在线类型对应于至少两种类型的客户端;若分裂时间段在分裂之前,只被包括在对应于一种类型的客户端的在线时间段内,则分裂时间段的在线类型对应于一种类型的客户端。
初始时,已有分裂时间段中共有1个在线时间段,即m个在线时间段中的第1个在线时间段,检测m个在线时间段中的第2个在线时间段与第1个在线时间段是否存在交集。
可选的,x的取值范围为1至k。当x=k时,表示已有的分裂时间段中的分裂时间段全部被处理过了,此刻若i<m,则令i=i+1,重新执行步骤204,若i=m,则表示m个在线时间段全部被遍历,得到的分裂时间段为不存在交集的在线时间段,也即每个用户在不同在线类型下的分裂时间段;其中,得到的全部分裂时间段表示的用户登录的时间等价于原来的每个用户对应于不同类型的客户端的在线时间段表示的用户登录的时间。
在步骤2042中,根据交集端点,将第i个在线时间段和已有的分裂时间段中的第x个在线时间段分裂为不存在交集的分裂时间段。
分裂得到的分裂时间段对应于不同类型的客户端,其中,起始时间和结束时间均为交集端点的分裂时间段对应于至少两个不同类型的客户端,也即起始时间和结束时间均为交集端点的分裂时间段被同时包括在至少两个对应于不同类型的客户端的在线时间段中。
以表二为例,假设i=2,已有的分裂时间段中共有1个在线时间段,即第1个在线时间段,第1个在线时间段与第2个在线时间段存在交集,交集端点为9:00:02和9:00:04,利用第2个在线时间段按照2个交集端点对第1个在线时间段进行分裂,得到3个不存在交集的分裂时间段,每个分裂时间段对应于不同的客户端类型,如表三所示:
表三
由表三可知,第2行的分裂时间段对应于两个不同类型的客户端:电脑客户端和网页客户端,第2行的分裂时间段被同时包括在如表二所示的第1个对应于电脑客户端的在线时间段和如表二所示的第2个对应于网页客户端的在线时间段中。
在步骤2043中,在x<k时,检测第i个在线时间段的结束时间是否晚于已有的分裂时间段中的第x个在线时段的结束时间。
若第i个在线时间段的结束时间不晚于已有的分裂时间段中的第x个在线时段的结束时间,则令x=x+1,重新执行步骤2041。
若第i个在线时间段的结束时间晚于已有的分裂时间段中的第x个在线时段的结束时间,则从得到的分裂时间段中确定出指定分裂时间段,指定分裂时间段的起始时间为第x个在线时间段的结束时间加一个计量时间的最小刻度,指定分裂时间段的结束时间为第i个在线时间段的结束时间,再执行步骤2044。
可选的,计量时间的刻度为秒、分钟、小时,计量时间的最小刻度与统计在线人数时所使用的最小时间刻度的有关,比如:统计在线人数时所使用的最小时间刻度用秒表征,则计量时间的最小刻度为1秒。
在步骤2044中,令x=x+1,将指定分裂时间段重新确定为第i个在线时间段,重新执行步骤2041。
将指定分裂时间段重新确定为第i个在线时间段,重新检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集,即利用指定分裂时间段重新对本次已有的分裂时间段中未被分裂过的分裂时间段进行分裂。
当x<k时,不断重复执行上述步骤2041至步骤2044,直到x=k为止,再令i=i+1,当i<m时,不断重复执行上述步骤204,直到i=m为止,即得到每个用户在不同在线类型下的分裂时间段。
其中,在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的,每个用户在不同在线类型下的分裂时间段可以对应于一个或多个客户端类型。
在步骤205中,对于每个用户对应于不同在线类型的分裂时间段,逐个取出分裂时间段中所包括的每个时间点,时间点采用秒表征。
可选的,时间点还可以采用分钟表征。
以表九中的用户A对应于不同在线类型的分裂时间段为例,分裂时间段为9:00:00至9:00:01,9:00:02至9:00:02,9:00:03至9:00:04,9:00:05至9:00:06,9:00:07至9:00:07,故逐个取出的时间点为9:00:00、9:00:01、9:00:02、9:00:03、9:00:04、9:00:05、9:00:06、9:00:07。
在步骤206中,若统计数据中尚不存在时间点,则将时间点添加至统计数据。
对于某一个用户,将该用户的时间点存储在统计数据中,对于其他用户的每个时间点,如果统计数据中还不存在相同的时间点,即对于其他用户的时间点有不同,则将尚不存在的时间点添加至统计数据中。
可选的,在起始时,统计数据中不存在任何一个时间点。
比如,假设用户A的所有时间点都存储在统计数据中,若用户D的分裂时间段为9:00:10至9:00:12,该分裂时间段中所包括的时间点为9:00:10、9:00:11、9:00:12,与统计数据中已有的时间点相比,时间点9:00:10、9:00:11、9:00:12尚不存在在统计数据中,故将时间点9:00:10、9:00:11、9:00:12添加至统计数据中。
在步骤207中,对于每个时间点对应的客户端类型,若时间点对应的客户端类型已经存在于统计数据中,则将客户端类型对应的在线人数加一。
遍历每个时间点对应的客户端类型,若时间点对应的客户端类型已经存在,在将客户端类型对应的在线人数加一。
在步骤208中,若时间点对应的客户端类型尚不存在,则将客户端类型添加至统计数据中,并将客户端类型对应的在线人数设置为一。
与统计数据中已有的客户端类型相比,将尚不存在的客户端类型添加至统计数据中,并将新添加的客户端类型对应的在线人数设置为一。
可选的,在起始时,统计数据中不存在任何一个客户端类型。
综上所述,本发明实施例提供的在线人数分布计算方法,通过获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段,对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的,根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据;解决了在计算对应于不同类型的客户端的在线人数统计数据时,计算数量庞大,计算较为耗时的问题;达到了在计算过程中规避笛卡尔乘积和大量的去重计算,计算在线人数在不同类型的客户端上的分布情况时简化数据,减少计算数据计算量,降低计算时间,提高算法运行效率的效果。
可选的,利用上述在线人数分布计算方法计算出对应于某一类型客户端的在线人数的统计数据后,还可以遍历统计数据,得到某一类型客户端的最高同时在线人数及某一类型客户端的最高同时在线人数对应的时间段。
在一个示例性的例子中,假设有一个互联网产品:虎牙,该互联网产品有3种不同类型的的客户端:电脑客户端、网页客户端、手机客户端,从与该互联网产品相关的事实表中获取一段时间内的记录,并对获取到的记录中的在线时间段进行合并处理,得到各个用户在互联网产品中对应于不同类型的客户端的在线时间段,再针对每个用户,将用户对应于不同类型的客户端的在线时间按照起始时间的先后顺序进行排序,排序后的数据如表四所示:
表四
行号 | 产品 | 用户 | 客户端 | 开始时间 | 结束时间 |
1 | 虎牙 | A | 电脑客户端 | 9:00:00 | 9:00:04 |
2 | 虎牙 | A | 网页客户端 | 9:00:02 | 9:00:06 |
3 | 虎牙 | A | 手机客户端 | 9:00:03 | 9:00:07 |
4 | 虎牙 | B | 电脑客户端 | 9:00:03 | 9:00:04 |
5 | 虎牙 | C | 网页客户端 | 9:00:03 | 9:00:05 |
由表四可知,用户A对应于不同类型的客户端的在线时间段共有3个,且3个在线时间段相互存在交集;用户B对应于不同类型的客户端的在线时间段共有1个;用户C对应于不同类型的客户端的在线时间段共有1个。
对于用户A,在对应于不同类型的客户端的存在交集的时间段,按照交集端点进行分裂,得到用户A在不同在线类型下的分裂时间段:
初始时,i=2,获取3个在线时间段中的第2个在线时间段,已有的分裂时间段只有1个即k=1,已有的分裂时间段中的在线时间段为3个在线时间段中的第1个在线时间段;检测到已有的分裂时间段中的第1个在线时间段即x=1,和第2个在线时间段存在交集,交集端点为9:00:02和9:00:04;根据交集端点,已有的分裂时间段中的第1个在线时间段,和第2个在线时间段被分裂为3个分裂时间段,如表五所示:
表五
此时,由于x=k=1,已有的分裂时间段中的在线时间段都被处理完,得到新的已有的在线时间段如表五所示,令i=i+1=3,在利用表四中的第3个在线时间段对表五中的在线时间段进行分裂:
此时已有的在线时间段中共有3个在线时间段,即k=3,检测到表四中的第3个在线时间段与表五中的第1个(即x=1)在线时间段不存在交集,且x=1<3;令x=x+1=2,检测到表五中第2个在线时间段与表四中的第3个在线时间段存在交集,交集端点为9:00:03和9:00:04,根据交集端点,表五中第2个在线时间段和表四中的第3个在线时间段被分裂为不存在交集的分裂时间段,得到的数据如表六所示:
表六
由于x=2<3,检测到表五中第2个在线时间段的结束时间晚于表四中的第3个在线时间段的结束时间,因此令指定分裂时间段为第3个在线时间段,指定分裂时间段的起始时间为表五中第2个在线时间段的结束时间加一个计量时间的最小刻度,指定分裂时间段的结束时间为第3个在线时间段的结束时间;由于该例中起始时间和结束时间为用秒表征的时间,计量时间的最小刻度为1秒,因此指定分裂时间段为表六中的第3个分裂时间段,第3个分裂时间段的起始时间为9:00:04加1秒即9:00:05;
令x=x+1=3,检测到指定分裂时间段与表五中的第3个分裂时间段存在交集,交集端点为9:00:05和9:00:06,根据交集端点,指定分裂时间段和表五中的第3个分裂时间段被分裂为不存在交集的分裂时间段,得到如表七所示的数据:
表七
此时,x=3,表五也即已有的分裂时间段中的3个在线时间段都被处理完了,且i=3,表四中对于用户A在对应于不同类型的客户端的存在交集的3个时间段都已经遍历,得到已有的分裂时间段,也即是用户A在不同在线类型下的分裂时间段,如表八所示:
表八
对于用户B,在互联网产品中对应于不同类型的客户端的在线时间段只有一个,故不用处理;同样地,对于用户C在互联网产品中对应于不同类型的客户端的在线时间段也不要处理。
由上述处理过程可以得到每个用户在不同在线类型下的分裂时间段,如表九所示:
表九
首先,针对用户A,将用户A对应于不同在线类型的分裂时间段,逐个取出所有分裂时间段中包括的每个时间点,用户A对应的时间点为:9:00:00、9:00:01、9:00:02、9:00:03、9:00:04、9:00:05、9:00:06、9:00:07。由于此时统计数据中没有记录,将取出的8个时间点都添加至统计数据中;遍历每个时间点对应的客户端类型,针对第1个时间点,由于此时统计数据中尚不存在客户端类型,故将第1个时间点对应的客户端类型即电脑客户端添加至统计数据中,并将该客户端类型对应的在线人数设置为一;针对第2个时间点,第二个时间点对应的客户端类型有两个,分别为电脑客户端、网页客户端,由于统计数据中存在电脑客户端,故将电脑客户端对应的在线人数加一,统计数据中不存在网页客户端,故将网页客户端添加至统计数据中,并将网页客户端对应的在线人数加一;同样地,直到用户A对应的8个时间点都遍历完后,得到的不同客户端类型在不同时间点上的在线人数分布情况,如表十所示:
表十
其中,表十中的数字“1、.......”表示不同客户端类型在不同时间点的在线人数,“-”表示统计数据中某一时间点暂时不存在该客户端类型。
继续遍历表十中的用户B和用户C对应于不同在线类型的分裂时间段,更新后的不同客户端类型在不同时间点上的在线人数分布情况,如表十一所示:
表十一
时间点 | 电脑客户端 | 网页客户端 | 手机客户端 |
9:00:00 | 1 | - | - |
9:00:01 | 1 | - | - |
9:00:02 | 1 | 1 | - |
9:00:03 | 2 | 2 | 1 |
9:00:04 | 2 | 2 | 1 |
9:00:05 | - | 2 | 1 |
9:00:06 | - | 1 | 1 |
9:00:07 | - | - | 1 |
其中,表十一中的数字“1、2.......”表示不同客户端类型在不同时间点的在线人数,“-”表示统计数据中某一时间点暂时不存在该客户端类型。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
请参照图3,其示出了本发明一个实施例提供的在线人数分布计算装置的结构方框图。该在线人数分布计算装置可以通过软件、硬件或者两者的结合实现成为上述可提供在线人数分布计算方法的终端的全部或者一部分。该装置包括:
获取模块310,用于获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段;
分裂模块320,用于对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的;
计算模块330,用于根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据。
综上所述,本发明实施例提供的在线人数分布计算装置,通过获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段,对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的,根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据;解决了在计算对应于不同类型的客户端的在线人数统计数据时,计算数量庞大,计算较为耗时的问题;达到了在计算过程中规避笛卡尔乘积和大量的去重计算,计算在线人数在不同类型的客户端上的分布情况时简化数据,减少计算数据计算量,降低计算时间,提高算法运行效率的效果。
请参照图4,其示出了本发明另一个实施例提供的在线人数分布计算装置的结构方框图。该在线人数分布计算装置可以通过软件、硬件或者两者的结合实现成为上述可提供在线人数分布计算方法的终端的全部或者一部分。该装置包括:
获取模块310,用于获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段;
分裂模块320,用于对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的;
计算模块330,用于根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据。
可选的,分裂模块320包括:
排序单元321,用于对于每个用户,将用户对应于不同类型的客户端的在线时间段按照起始时间的先后顺序进行排序,得到m个在线时间段,m为正整数;
获取单元322,用于获取m个在线时间段中的第i个在线时间段,i的初始值为2;
分裂单元323,用于利用第i个在线时间段对已有的分裂时间段进行分裂;已有的分裂时间段是对前i-1个在线时间段进行分裂后得到的分裂时间段,已有的分裂时间段的初始值是m个在线时间段中的第1个在线时间段;
重复单元324,用于在i<m时,令i=i+1,重复执行获取m个在线时间段中的第i个时间段的步骤。
可选的,分裂单元323包括:
检测子单元3231,用于检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集,x的初始值为1,已有的分裂时间段中共有k个在线时间段,k为正整数;
分裂子单元3232,用于若第i个在线时间段与已有的分裂时间段中的第x个在线时段存在交集,则利用第i个在线时间段按照交集端点对已有的分裂时间段中的第x个在线时间段进行分裂,得到分裂时间段;
第一重复子单元3233,用于在x<k时,令x=x+1,重复执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤;
其中,分裂时间段中起始时间和结束时间均为交集端点时,分裂时间段的在线类型对应于至少两种类型的客户端。
可选的,分裂子单元3232,具体用于:
根据交集端点,将第i个在线时间段和已有的分裂时间段中的第x个在线时间段分裂为不存在交集的分裂时间段;
在x<k时,检测第i个在线时间段的结束时间是否晚于已有的分裂时间段中的第x个在线时段的结束时间;
若第i个在线时间段的结束时间晚于已有的分裂时间段中的第x个在线时段的结束时间,则从得到的分裂时间段中确定出指定分裂时间段,指定分裂时间段的起始时间为第x个在线时间段的结束时间加一个计量时间的最小刻度,指定分裂时间段的结束时间为第i个在线时间段的结束时间;
令x=x+1,将指定分裂时间段重新确定为第i个在线时间段,重新执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
可选的,分裂子单元3232,具体用于:
若第i个在线时间段的结束时间不晚于已有的分裂时间段中的第x个在线时段的结束时间,则令x=x+1,重新执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
可选的,分裂单元323,还包括:
第二重复子单元3234,用于若第i个在线时间段与已有的分裂时间段中的第x个在线时间段不存在交集,则在x<k时,令x=x+1,重新执行检测第i个在线时间段与已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
可选的,计算模块330,包括:
时间点取出单元331,用于对于每个用户对应于不同在线类型的分裂时间段,逐个取出分裂时间段中所包括的每个时间点,时间点采用秒表征;
第一设置单元332,用于若统计数据中尚不存在时间点,则将时间点添加至统计数据;
第二设置单元333,用于对于每个时间点对应的客户端类型,若时间点对应的客户端类型已经存在于统计数据中,则将客户端类型对应的在线人数加一;
第三设置单元334,用于若时间点对应的客户端类型尚不存在,则将客户端类型添加至统计数据中,并将客户端类型对应的在线人数设置为一。
综上所述,本发明实施例提供的在线人数分布计算装置,通过获取各个用户在互联网产品中对应于不同类型的客户端的在线时间段,对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的,根据每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据;解决了在计算对应于不同类型的客户端的在线人数统计数据时,计算数量庞大,计算较为耗时的问题;达到了在计算过程中规避笛卡尔乘积和大量的去重计算,计算在线人数在不同类型的客户端上的分布情况时简化数据,减少计算数据计算量,降低计算时间,提高算法运行效率的效果。
需要说明的是:上述实施例提供的在线人数分布计算装置在执行在线人数分布计算方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的在线人数计算装置与在线人数计算方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种在线人数分布计算方法,其特征在于,所述方法包括:
从互联网产品相关的事实表中获取各个用户在所述互联网产品中对应于不同类型的客户端的在线时间段;
对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,所述在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的;
根据所述每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据;
所述根据所述每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据,包括:
对于每个所述用户对应于所述不同在线类型的分裂时间段,逐个取出所述分裂时间段中所包括的每个时间点;
若所述统计数据中尚不存在所述时间点,则将所述时间点添加至所述统计数据;
对于每个时间点对应的客户端类型,若所述时间点对应的客户端类型已经存在于所述统计数据中,则将所述客户端类型对应的在线人数加一;
若所述时间点对应的客户端类型尚不存在,则将所述客户端类型添加至所述统计数据中,并将所述客户端类型对应的在线人数设置为一。
2.根据权利要求1所述的方法,其特征在于,所述对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,包括:
对于每个用户,将所述用户对应于不同类型的客户端的在线时间段按照起始时间的先后顺序进行排序,得到m个在线时间段,m为正整数;
获取所述m个在线时间段中的第i个在线时间段,i的初始值为2;
利用所述第i个在线时间段对已有的分裂时间段进行分裂;所述已有的分裂时间段是对前i-1个在线时间段进行分裂后得到的分裂时间段,所述已有的分裂时间段的初始值是所述m个在线时间段中的第1个在线时间段;
在i<m时,令i=i+1,重复执行所述获取所述m个在线时间段中的第i个时间段的步骤。
3.根据权利要求2所述的方法,其特征在于,所述利用所述第i个在线时间段对已有的分裂时间段进行分裂,包括:
检测所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段是否存在交集,x的初始值为1,所述已有的分裂时间段中共有k个在线时间段,k为正整数;
若所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时段存在交集,则利用所述第i个在线时间段按照所述交集端点对所述已有的分裂时间段中的第x个在线时间段进行分裂,得到分裂时间段;
在x<k时,令x=x+1,重复执行所述检测所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段是否存在交集的步骤;
其中,所述分裂时间段中所述起始时间和结束时间均为所述交集端点时,所述分裂时间段的在线类型对应于至少两种类型的客户端。
4.根据权利要求3所述的方法,其特征在于,所述利用所述第i个在线时间段按照所述交集端点对所述已有的分裂时间段中的第x个在线时间段进行分裂,得到分裂时间段,包括:
根据所述交集端点,将所述第i个在线时间段和所述已有的分裂时间段中的第x个在线时间段分裂为不存在交集的分裂时间段;
在x<k时,检测所述第i个在线时间段的结束时间是否晚于所述已有的分裂时间段中的第x个在线时段的结束时间;
若所述第i个在线时间段的结束时间晚于所述已有的分裂时间段中的第x个在线时段的结束时间,则从得到的所述分裂时间段中确定出指定分裂时间段,所述指定分裂时间段的起始时间为所述第x个在线时间段的结束时间加一个计量时间的最小刻度,所述指定分裂时间段的结束时间为所述第i个在线时间段的结束时间;
令x=x+1,将所述指定分裂时间段重新确定为所述第i个在线时间段,重新执行所述检测所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
5.根据权利要求4所述的方法,其特征在于,所述检测所述第i个在线时间段的结束时间是否晚于所述已有的分裂时间段中的第x个在线时段的结束时间之后,还包括:
若所述第i个在线时间段的结束时间不晚于所述已有的分裂时间段中的第x个在线时段的结束时间,则令x=x+1,重新执行所述检测所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
6.根据权利要求3所述的方法,其特征在于,所述检测所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段是否存在交集之后,还包括:
若所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段不存在交集,则在x<k时,令x=x+1,重新执行所述检测所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
7.一种在线人数分布计算装置,其特征在于,所述装置包括:
获取模块,用于从互联网产品相关的事实表中获取各个用户在所述互联网产品中对应于不同类型的客户端的在线时间段;
分裂模块,用于对于每个用户在对应于不同类型的客户端的存在交集的在线时间段,按照交集端点进行分裂,得到每个用户在不同在线类型下的分裂时间段,所述在线类型是按照用户在同一时间内在线的客户端数量和客户端类型而进行划分的;
计算模块,用于根据所述每个用户在不同在线类型下的分裂时间段,计算对应于某一类型客户端的在线人数统计数据;
所述计算模块包括:
时间点取出单元,用于对于每个所述用户对应于所述不同在线类型的分裂时间段,逐个取出所述分裂时间段中所包括的每个时间点;
第一设置单元,用于若所述统计数据中尚不存在所述时间点,则将所述时间点添加至所述统计数据;
第二设置单元,用于对于每个时间点对应的客户端类型,若所述时间点对应的客户端类型已经存在于所述统计数据中,则将所述客户端类型对应的在线人数加一;
第三设置单元,用于若所述时间点对应的客户端类型尚不存在,则将所述客户端类型添加至所述统计数据中,并将所述客户端类型对应的在线人数设置为一。
8.根据权利要求7所述的装置,其特征在于,所述分裂模块包括:
排序单元,用于对于每个用户,将所述用户对应于不同类型的客户端的在线时间段按照起始时间的先后顺序进行排序,得到m个在线时间段,m为正整数;
获取单元,用于获取所述m个在线时间段中的第i个在线时间段,i的初始值为2;
分裂单元,用于利用所述第i个在线时间段对已有的分裂时间段进行分裂;所述已有的分裂时间段是对前i-1个在线时间段进行分裂后得到的分裂时间段,所述已有的分裂时间段的初始值是所述m个在线时间段中的第1个在线时间段;
重复单元,用于在i<m时,令i=i+1,重复执行所述获取所述m个在线时间段中的第i个时间段的步骤。
9.根据权利要求8所述的装置,其特征在于,所述分裂单元包括:
检测子单元,用于检测所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段是否存在交集,x的初始值为1,所述已有的分裂时间段中共有k个在线时间段,k为正整数;
分裂子单元,用于若所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时段存在交集,则利用所述第i个在线时间段按照所述交集端点对所述已有的分裂时间段中的第x个在线时间段进行分裂,得到分裂时间段;
第一重复子单元,用于在x<k时,令x=x+1,重复执行所述检测所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段是否存在交集的步骤;
其中,所述分裂时间段中所述起始时间和结束时间均为所述交集端点时,所述分裂时间段的在线类型对应于至少两种类型的客户端。
10.根据权利要求9所述的装置,其特征在于,所述分裂子单元,具体用于:
根据所述交集端点,将所述第i个在线时间段和所述已有的分裂时间段中的第x个在线时间段分裂为不存在交集的分裂时间段;
在x<k时,检测所述第i个在线时间段的结束时间是否晚于所述已有的分裂时间段中的第x个在线时段的结束时间;
若所述第i个在线时间段的结束时间晚于所述已有的分裂时间段中的第x个在线时段的结束时间,则从得到的所述分裂时间段中确定出指定分裂时间段,所述指定分裂时间段的起始时间为所述第x个在线时间段的结束时间加一个计量时间的最小刻度,所述指定分裂时间段的结束时间为所述第i个在线时间段的结束时间;
令x=x+1,将所述指定分裂时间段重新确定为所述第i个在线时间段,重新执行所述检测所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
11.根据权利要求9所述的装置,其特征在于,所述分裂子单元,具体用于:
若所述第i个在线时间段的结束时间不晚于所述已有的分裂时间段中的第x个在线时段的结束时间,则令x=x+1,重新执行所述检测所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
12.根据权利要求9所述的装置,其特征在于,所述分裂单元,还包括:
第二重复子单元,用于若所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段不存在交集,则在x<k时,令x=x+1,重新执行所述检测所述第i个在线时间段与所述已有的分裂时间段中的第x个在线时间段是否存在交集的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610192797.9A CN105761119B (zh) | 2016-03-30 | 2016-03-30 | 在线人数分布计算方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610192797.9A CN105761119B (zh) | 2016-03-30 | 2016-03-30 | 在线人数分布计算方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105761119A CN105761119A (zh) | 2016-07-13 |
CN105761119B true CN105761119B (zh) | 2019-11-05 |
Family
ID=56345441
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610192797.9A Active CN105761119B (zh) | 2016-03-30 | 2016-03-30 | 在线人数分布计算方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105761119B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111182464B (zh) * | 2019-11-28 | 2024-01-26 | 贵阳朗玛信息技术股份有限公司 | 一种在线采样的方法及装置 |
CN114222153B (zh) * | 2021-12-08 | 2024-03-12 | 北京百度网讯科技有限公司 | 在线用户数量统计方法、装置、电子设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645838A (zh) * | 2009-09-04 | 2010-02-10 | 北京高信达网络科技有限公司 | 一种获得网络行为有效时间的方法及装置 |
CN103139272A (zh) * | 2011-12-02 | 2013-06-05 | 北大方正集团有限公司 | 一种获取选定时间段内在线时长的方法和装置 |
CN103957230A (zh) * | 2014-03-10 | 2014-07-30 | 珠海市君天电子科技有限公司 | 一种客户端用户数确定方法、服务器、客户端及系统 |
CN103970752A (zh) * | 2013-01-25 | 2014-08-06 | 北京思博途信息技术有限公司 | 独立访问者数量估算方法和系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012159372A1 (zh) * | 2011-08-09 | 2012-11-29 | 华为技术有限公司 | 用户数量计算方法及系统 |
KR102028708B1 (ko) * | 2013-01-18 | 2019-10-07 | 한국전자통신연구원 | 대용량 이벤트 파일에서 시간 관계를 병렬 탐사하기 위한 방법 |
-
2016
- 2016-03-30 CN CN201610192797.9A patent/CN105761119B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645838A (zh) * | 2009-09-04 | 2010-02-10 | 北京高信达网络科技有限公司 | 一种获得网络行为有效时间的方法及装置 |
CN103139272A (zh) * | 2011-12-02 | 2013-06-05 | 北大方正集团有限公司 | 一种获取选定时间段内在线时长的方法和装置 |
CN103970752A (zh) * | 2013-01-25 | 2014-08-06 | 北京思博途信息技术有限公司 | 独立访问者数量估算方法和系统 |
CN103957230A (zh) * | 2014-03-10 | 2014-07-30 | 珠海市君天电子科技有限公司 | 一种客户端用户数确定方法、服务器、客户端及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105761119A (zh) | 2016-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109062802B (zh) | 一种软件测试方法、计算机可读存储介质及终端设备 | |
CN103902701B (zh) | 一种数据存储系统和存储方法 | |
CN110299209B (zh) | 相似病历查找方法、装置、设备及可读存储介质 | |
EP3021224B1 (en) | Method and apparatus for producing a benchmark application for performance testing | |
TW201737116A (zh) | 基於大數據推算開發對象關係的方法及裝置 | |
CN109766176B (zh) | 一种基于大规模网络空间探测的扫描进度计算方法及装置 | |
US20160277510A1 (en) | Response prototypes with robust substitution rules for service virtualization | |
CN104718547A (zh) | 顾客数据解析系统 | |
CN103559205A (zh) | 基于MapReduce的并行特征选择方法 | |
CN110472834B (zh) | 一种推送课程的方法、装置、存储介质和服务器 | |
CN106803799A (zh) | 一种性能测试方法和装置 | |
CN105761119B (zh) | 在线人数分布计算方法及装置 | |
CN104077354B (zh) | 论坛中帖子的热度确定方法及相关装置 | |
CN112559923A (zh) | 网址资源推荐方法、装置、电子设备及计算机存储介质 | |
CN111414410A (zh) | 数据处理方法、装置、设备和存储介质 | |
CN110716998B (zh) | 一种精细尺度人口数据空间化方法 | |
CN110442647B (zh) | 数据一致性同步方法、装置及计算机可读存储介质 | |
CN103154945A (zh) | 内容分析系统、内容分析设备、内容分析方法以及内容分析程序 | |
CN107451048A (zh) | 一种线上压力模拟测试的方法和设备 | |
CN109214634A (zh) | 一种信息处理方法、装置及信息处理可读介质 | |
CN110569190A (zh) | 交易压力测试方法和装置、以及电子设备和可读存储介质 | |
CN113793057A (zh) | 一种基于回归分析模型的建筑招投标数据生成方法 | |
CN111325255B (zh) | 特定人群圈定方法、装置、电子设备及存储介质 | |
Archetti et al. | Heterogeneous datasets for federated survival analysis simulation | |
CN104991964B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
EE01 | Entry into force of recordation of patent licensing contract |
Application publication date: 20160713 Assignee: GUANGZHOU CUBESILI INFORMATION TECHNOLOGY Co.,Ltd. Assignor: GUANGZHOU HUADUO NETWORK TECHNOLOGY Co.,Ltd. Contract record no.: X2021980000151 Denomination of invention: Calculation method and device of online population distribution Granted publication date: 20191105 License type: Common License Record date: 20210107 |
|
EE01 | Entry into force of recordation of patent licensing contract |