CN105824952B - 一种处理数据的装置和方法 - Google Patents
一种处理数据的装置和方法 Download PDFInfo
- Publication number
- CN105824952B CN105824952B CN201610184389.9A CN201610184389A CN105824952B CN 105824952 B CN105824952 B CN 105824952B CN 201610184389 A CN201610184389 A CN 201610184389A CN 105824952 B CN105824952 B CN 105824952B
- Authority
- CN
- China
- Prior art keywords
- sub
- statistical time
- time period
- statistical
- module
- 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
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000012545 processing Methods 0.000 claims abstract description 32
- 230000000694 effects Effects 0.000 claims description 21
- 238000013507 mapping Methods 0.000 claims description 9
- 230000006870 function Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000002354 daily effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Fuzzy Systems (AREA)
- Telephonic Communication Services (AREA)
- Debugging And Monitoring (AREA)
Abstract
本文公布一种处理数据的装置和方法,该装置包括:确定模块、获取模块、处理模块和统计模块;其中,确定模块,用于根据预设统计时长确定各个子统计时间段;获取模块,用于获取各个子统计时间段内在线用户的用户标识;处理模块,用于创建与各个子统计时间段对应的位图并在创建的位图中将获得的用户标识对应的比特位置为1;统计模块,用于计算预设统计时长内的用户活跃量。本发明实施例提高了对活跃用户量的统计性能和效率,节省了存储空间。
Description
技术领域
本发明实施例涉及但不限于智能终端技术,尤指一种处理数据的装置和方法。
背景技术
在日常生活中,应用的服务器经常需要统计活跃用户量,如某一时刻的用户在线个数、日活跃用户、三日活跃用户、七日活跃用户等。现有统计活跃用户量的方法都是采用记录日志的方式,即如果用户当天有请求就记录一个日志,将日志存在关系型数据库中,而需要统计的时候就使用结构化查询语言(SQL,Structured Query Language)对日志的数量进行统计。上述统计方法会占用过多的存储空间,且由于每个用户有大量的请求日志,会进行大量的数据计算,造成数据库性能低下。
发明内容
本申请提供了一种处理数据的装置和方法,能够提高对活跃用户量的统计性能和效率,节省存储空间。
为了达到本申请目的,本申请提供了一种处理数据的装置,包括:确定模块、获取模块、处理模块和统计模块;其中,
确定模块,用于根据预设统计时长确定各个子统计时间段;
获取模块,用于获取各个子统计时间段内在线用户的用户标识;
处理模块,用于创建与各个子统计时间段对应的位图并在创建的位图中将获得的用户标识对应的比特位置为1;
统计模块,用于计算预设统计时长内的用户活跃量。
可选地,所述确定模块,具体用于:
将所述预设统计时长划分为N等分的子统计时长;
每一个划分后的子统计时长对应的时间段作为子统计时间段;
其中,N是正整数。
可选地,所述处理模块创建与各个子统计时间段对应的位图包括:
分别创建与每个子统计时间段对应的一位图;
设置每个创建的位图中每个比特位与不同的用户标识之间的映射关系。
可选地,该装置还包括存储模块,用于:将所述各个子统计时间段作为键以及将所述各个子统计时间段对应的位图作为值存储至预先创建的数据库中。
可选地,所述统计模块具体用于:
获取所述预设统计时长内所包含的各个子统计时间段对应的位图;
对获得的各个子统计时间段对应的位图中被置为1的比特位进行求和计算;
将计算出的和值作为所述预设统计时长内的用户活跃量。
本申请还提供了一种处理数据的方法,包括:
根据预设统计时长确定各个子统计时间段;
获取各个子统计时间段内在线用户的用户标识;
创建与各个子统计时间段对应的位图并在创建的位图中将获得的用户标识对应的比特位置为1;
计算预设统计时长内的用户活跃量。
可选地,所述根据预设统计时长确定各个子统计时间段包括:
将所述预设统计时长划分为N等分的子统计时长;
每一个划分后的子统计时长对应的时间段作为子统计时间段;
其中,N是正整数。
可选地,所述创建与各个子统计时间段对应的位图包括:
分别创建与每个子统计时间段对应的一位图;
设置每个创建的位图中每个比特位与不同的用户标识之间的映射关系。
可选地,在所述将获得的用户标识对应的比特位置为1之后,在所述计算预设统计时长内的用户活跃量之前,该方法还包括:将所述各个子统计时间段作为键以及将所述各个子统计时间段对应的位图作为值存储至预先创建的数据库中。
可选地,所述计算预设统计时长内的用户活跃量包括:
获取所述统计时长内所包含的各个子统计时间段对应的位图;
对获得的各个子统计时间段对应的位图中被置为1的比特位进行求和计算;
将计算出的和值作为所述预设统计时长内的用户活跃量。
本发明实施例包括:确定模块、获取模块、处理模块和统计模块;其中,确定模块,用于根据预设统计时长确定各个子统计时间段;获取模块,用于获取各个子统计时间段内在线用户的用户标识;处理模块,用于创建与各个子统计时间段对应的位图并在创建的位图中将获得的用户标识对应的比特位置为1;统计模块,用于计算预设统计时长内的用户活跃量。本发明实施例提高了对活跃用户量的统计性能和效率,节省了存储空间。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明处理数据的装置的结构示意图;
图2为本发明位图中各Bit的值的示意图;
图3为本发明需要统计活跃用户量的应用的服务器的结构示意图;
图4为本发明处理数据的方法的流程图;
图5为本发明处理数据的方法的实施例的流程图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
比特(Bit)是当前计算机系统里边数据的最小单位,8个Bit即为一个字节(Byte)。一个Bit的值,或者是0,或者是1;也就是说一个Bit能存储的最多信息是2。
位图(Bitmap)是用一个Bit位来标记某个元素对应的值(value)的数据结构,而键(Key)就是这个元素。由于Bit是数据的最小单位,所以Bitmap这种数据结构是非常节省存储空间。例如一个公司有8个员工,现在需要记录公司的考勤记录,现有的方案是记录下每天正常考勤的员工的ID列表,比如2012-01-01:[1,2,3,4,5,6,7,8]。假如员工ID采用Byte数据类型,则保存每天的考勤记录需要8个Byte。
在一些实施例中,可以通过以下方式记录考勤:通过构造(创建)一个8Bit(01110011)的数组,将这8个员工跟员工号分别映射到这8个位置,如果当天正常考勤了,将对应的这个Bit位置为1;否则,将对应的这个Bit位置为0。这样可以每天采用恒定的1个Byte即可保存当天的考勤记录。
综上所述,Bitmap节省了大量的存储空间,因此可以被一次性加载到内存中。
图1为本发明处理数据的装置的结构示意图,如图1所示,包括:确定模块10、获取模块11、处理模块12和统计模块13。其中,
确定模块10,用于根据预设统计时长确定各个子统计时间段。
其中,确定模块,具体用于:
将预设统计时长划分为N等分的子统计时长;
每一个划分后的子统计时长对应的时间段作为子统计时间段;
其中,N是正整数。
其中,当预设统计时长是N天时,则子统计时长为一天;其中,当预设统计时长是某一时间段时,则子统计时长为一分钟或一小时。如N可以是3,也可以是7,也可以是15天;N可以是10分钟,也可以是5分钟,也可以是45分钟;N可以是5小时,也可以是12小时,也可以是36小时。
需要说明的是,预设统计时长和子统计时长的关系可以由确定模块根据系统默认设置,也可以由管理员根据自身的需求进行设置。
获取模块11,用于获取各个子统计时间段内在线用户的用户标识(Userid)。
处理模块12,用于创建与各个子统计时间段对应的Bitmap并在创建的Bitmap中将获得的Userid对应的Bit位置为1。
其中,处理模块11创建与各个子统计时间段对应的Bitmap包括:
分别创建与每个子统计时间段对应的一Bitmap;
设置每个创建的Bitmap中每个Bit位与不同的Userid之间的映射关系。
其中,Bitmap的位的总个数大于或等于Userid的总个数。这是因为每一个Bitmap的位的总个数是8的整数倍,例如,User为1000个时,则Bitmap的位的总个数为1000;User为1001个时,则Bitmap的位的总个数为1008;User为999个时,则Bitmap的位的总个数为1000。
统计模块13,用于计算预设统计时长内的用户活跃量。
其中,统计模块13具体用于:
获取预设统计时长内所包含的各个子统计时间段对应的Bitmap;
对获得的各个子统计时间段对应的Bitmap中被置为1的Bit位进行求和计算;
将计算出的和值作为预设统计时长内的用户活跃量。
可选地,该装置还包括存储模块14,用于:将各个子统计时间段作为键(Key)以及将各个子统计时间段对应的Bitmap作为值(Value)存储至预先创建的数据库(如Redis数据库)中。
其中,Redis数据库支持对字符串(String)类型的value进行基于二进制位的置位操作。通过将一个用户的Userid对应Value上的一位,通过对活跃用户对应的位进行置位,就能够用一个Value记录所有活跃用户的信息(在线或离线)。如图2所示,其中,第15位表示Userid为15的用户,第一位表示Userid为0的用户,Bitmap中有9个Bit位被置为1,分别是Userid为0,2,5,8,10,11,12,13和15的用户,表示这9个位上对应的用户是活跃用户(或在线用户),Userid为1,3,4,6,7,9和14的用户没有在线则其Userid为1,3,4,6,7,9和14对应的Bit位均被置为0。
可选地,上述装置可以设置在需要统计活跃用户量的应用的服务器中。
较佳实施例,该较佳实施例中的装置包括:确定模块10、获取模块11、处理模块12、存储模块14和统计模块13。其中,
确定模块10,用于根据预设统计时长确定各个子统计时间段。
其中,确定模块,具体用于:
将预设统计时长划分为N等分的子统计时长;
每一个划分后的子统计时长对应的时间段作为子统计时间段;
其中,N是正整数。
其中,当预设统计时长是N天时,则子统计时长为一天;其中,当预设统计时长是某一时间段时,则子统计时长为一分钟或一小时。如N可以是3,也可以是7,也可以是15天;N可以是10分钟,也可以是5分钟,也可以是45分钟;N可以是5小时,也可以是12小时,也可以是36小时。
需要说明的是,预设统计时长和子统计时长的关系可以由确定模块根据系统默认设置,也可以由管理员根据自身的需求进行设置。
获取模块11,用于获取各个子统计时间段内在线用户的用户标识(Userid)。
处理模块12,用于创建与各个子统计时间段对应的Bitmap并在创建的Bitmap中将获得的Userid对应的Bit位置为1。
其中,处理模块11创建与各个子统计时间段对应的Bitmap包括:
分别创建与每个子统计时间段对应的一Bitmap;
设置每个创建的Bitmap中每个Bit位与不同的Userid之间的映射关系。
其中,Bitmap的位的总个数大于或等于Userid的总个数。这是因为每一个Bitmap的位的总个数是8的整数倍,例如,User为1000个时,则Bitmap的位的总个数为1000;User为1001个时,则Bitmap的位的总个数为1008;User为999个时,则Bitmap的位的总个数为1000。
存储模块14,用于:将各个子统计时间段作为键(Key)以及将各个子统计时间段对应的Bitmap作为值(Value)存储至预先创建的数据库(如Redis数据库)中。
其中,Redis数据库支持对字符串(String)类型的value进行基于二进制位的置位操作。通过将一个用户的Userid对应Value上的一位,通过对活跃用户对应的位进行置位,就能够用一个Value记录所有活跃用户的信息(在线或离线)。如图2所示,其中,第15位表示Userid为15的用户,第一位表示Userid为0的用户,Bitmap中有9个Bit位被置为1,分别是Userid为0,2,5,8,10,11,12,13和15的用户,表示这9个位上对应的用户是活跃用户(或在线用户),Userid为1,3,4,6,7,9和14的用户没有在线则其Userid为1,3,4,6,7,9和14对应的Bit位均被置为0。
统计模块13,用于计算预设统计时长内的用户活跃量。
其中,统计模块13具体用于:
获取预设统计时长内所包含的各个子统计时间段对应的Bitmap;
对获得的各个子统计时间段对应的Bitmap中被置为1的Bit位进行求和计算;
将计算出的和值作为预设统计时长内的用户活跃量。
可选地,上述装置可以设置在需要统计活跃用户量的应用的服务器中。
如图3所示,为本发明需要统计活跃用户量的应用的服务器的结构示意图,包括:输入输出(IO)总线、处理器30、存储器31、内存32和通信装置33。其中,
输入输出(IO)总线分别与自身所属的服务器的其它部件(处理器30、存储器31、内存32和通信装置33)连接,并且为其它部件提供传送线路。
处理器30通常控制自身所属的服务器的总体操作。例如,处理器30执行计算和确认等操作。其中,处理器30可以是中央处理器(CPU)。
通信装置33,通常包括一个或多个组件,其允许自身所属的服务器与无线通信系统或网络之间的无线电通信。
存储器31存储处理器30可读、处理器可执行的软件代码,其包含用于控制处理器30执行本文描述的功能的指令(即软件执行功能)。
其中,上述处理数据的装置中,实现确定模块10、获取模块11、处理模块12和统计模块13的功能的软件代码可存储在存储器中,并由处理器30执行或编译后执行。
图4为本发明处理数据的方法的流程图,如图4所示,包括:
步骤400:根据预设统计时长确定各个子统计时间段。
本步骤具体包括:
将预设统计时长划分为N等分的子统计时长;
每一个划分后的子统计时长对应的时间段作为子统计时间段;
其中,N是正整数。
其中,当预设统计时长是N天时,则子统计时长为一天;其中,当预设统计时长是某一时间段时,则子统计时长为一分钟或一小时。如N可以是3,也可以是7,也可以是15天;N可以是10分钟,也可以是5分钟,也可以是45分钟;N可以是5小时,也可以是12小时,也可以是36小时。
需要说明的是,预设统计时长和子统计时长的关系可以由系统默认设置,也可以由管理员根据自身的需求进行设置。
步骤401:获取各个子统计时间段内在线用户的用户标识(Userid)。
步骤402:创建与各个子统计时间段对应的Bitmap并在创建的Bitmap中将获得的Userid对应的Bit位置为1。
其中,创建与各个子统计时间段对应的Bitmap包括:
分别创建与每个子统计时间段对应的一Bitmap;
设置每个创建的Bitmap中每个Bit位与不同的Userid之间的映射关系。
其中,Bitmap的位的总个数大于或等于Userid的总个数。这是因为每一个Bitmap的位的总个数是8的整数倍,例如,User为1000个时,则Bitmap的位的总个数为1000;User为1001个时,则Bitmap的位的总个数为1008;User为999个时,则Bitmap的位的总个数为1000。
如图2所示,假设用户有16个,对应的Userid依次为0,1,…,15,99,假如Userid为1,3,4,6,7,9和14的用户没有在线(即离线),则Userid为1,3,4,6,7,9和14对应的Bit位置为0,其它Bit位置为1。
步骤403:计算预设统计时长内的用户活跃量。
其中,计算预设统计时长内的用户活跃量包括:
获取统计时长内所包含的各个子统计时间段对应的Bitmap;
对获得的各个子统计时间段对应的Bitmap中被置为1的Bit位进行求和计算;
将计算出的和值作为预设统计时长内的用户活跃量。
可选地,在将获得的Userid对应的Bit位置为1之后,在计算预设统计时长内的用户活跃量之前,该方法还包括:将各个子统计时间段作为键(Key)以及将各个子统计时间段对应的Bitmap作为值(Value)存储至预先创建的数据库(如Redis数据库)中。其中,可以通过Redis数据库中的bitcount函数对预设统计时长内的各个Bitmap中被置为1的Bit位进行求和计算。
其中,Redis数据库支持对字符串(String)类型的Value进行基于二进制位的置位操作。通过将一个用户的Userid对应Value上的一位,通过对活跃用户对应的位进行置位,就能够用一个value记录所有活跃用户的信息(在线或离线)。如图2所示,其中,第15位表示Userid为15的用户,第一位表示Userid为0的用户,Bitmap中有9个Bit位被置为1,分别是Userid为0,2,5,8,10,11,12,13和15的用户,表示这9个位上对应的用户是活跃用户(或在线用户),Userid为1,3,4,6,7,9和14的用户没有在线则其Userid为1,3,4,6,7,9和14对应的Bit位均被置为0。
举例说明,假如统计三日活跃用户量,则需要分别获取每一天的在线用户的Userid,然后将获得的每一天的在线用户的Userid对应的Bit位置为1,最后再统计三天中被置为1的Bit位的总个数(和值);假如统计5分钟内的在线用户总量(活跃用户量),则需要分别获取每一分钟的在线用户的Userid,然后将获得的每一分钟的在线用户的Userid对应的Bit位置为1,最后再统计5分钟内被置为1的Bit位的总个数(和值);假如统计12个小时内的在线用户总量(活跃用户量),则需要分别获取每一小时的在线用户的Userid,然后将获得的每一小时的在线用户的Userid对应的Bit位置为1,最后再统计12个小时内被置为1的Bit位的总个数(和值)。
本发明实施方式中,通过创建与各个子统计时间段对应的Bitmap并将获得的Userid对应的Bit位置为1以及计算预设统计时长内的用户活跃量,提高了对活跃用户量的统计性能和效率,节省了存储空间。
图5为本发明处理数据的方法的实施例的流程图,如图5所示,包括:
步骤500:根据预设统计时长确定各个子统计时间段。
本步骤具体包括:
将预设统计时长划分为N等分的子统计时长;
每一个划分后的子统计时长对应的时间段作为子统计时间段;
其中,N是正整数。
其中,当预设统计时长是N天时,则子统计时长为一天;其中,当预设统计时长是某一时间段时,则子统计时长为一分钟或一小时。如N可以是3,也可以是7,也可以是15天;N可以是10分钟,也可以是5分钟,也可以是45分钟;N可以是5小时,也可以是12小时,也可以是36小时。
需要说明的是,预设统计时长和子统计时长的关系可以由系统默认设置,也可以由管理员根据自身的需求进行设置。
步骤501:获取各个子统计时间段内在线用户的用户标识(Userid)。
步骤502:分别创建与每个子统计时间段对应的一Bitmap。
步骤503:设置每个创建的Bitmap中每个Bit位与不同的Userid之间的映射关系。
其中,Bitmap的位的总个数大于或等于Userid的总个数。这是因为每一个Bitmap的位的总个数是8的整数倍,例如,User为1000个时,则Bitmap的位的总个数为1000;User为1001个时,则Bitmap的位的总个数为1008;User为999个时,则Bitmap的位的总个数为1000。
如图4所示,假设用户有16个,对应的Userid依次为0,1,…,15,99,假如Userid为1,3,4,6,7,9和14的用户没有在线(即离线),则Userid为1,3,4,6,7,9和14对应的Bit位置为0,其它Bit位置为1。
步骤504:在创建的Bitmap中将获得的Userid对应的Bit位置为1。
步骤505:将各个子统计时间段作为键(Key)以及将各个子统计时间段对应的Bitmap作为值(Value)存储至预先创建的数据库(如Redis数据库)中。
其中,Redis数据库支持对字符串(String)类型的Value进行基于二进制位的置位操作。通过将一个用户的Userid对应Value上的一位,通过对活跃用户对应的位进行置位,就能够用一个Value记录所有活跃用户的信息(在线或离线)。如图2所示,其中,第15位表示Userid为15的用户,第一位表示Userid为0的用户,Bitmap中有9个Bit位被置为1,分别是Userid为0,2,5,8,10,11,12,13和15的用户,表示这9个位上对应的用户是活跃用户(或在线用户),Userid为1,3,4,6,7,9和14的用户没有在线则其Userid为1,3,4,6,7,9和14对应的Bit位均被置为0。
步骤406:计算预设统计时长内的用户活跃量。
其中,计算预设统计时长内的用户活跃量包括:
获取统计时长内所包含的各个子统计时间段对应的Bitmap;
对获得的各个子统计时间段对应的Bitmap中被置为1的Bit位进行求和计算;
将计算出的和值作为预设统计时长内的用户活跃量。
其中,当预先创建的数据库是Redis数据库时,可以通过Redis数据库中的bitcount函数对预设统计时长内的各个Bitmap中被置为1的Bit位进行求和计算。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件(例如处理器)完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,例如通过集成电路来实现其相应功能,也可以采用软件功能模块的形式实现,例如通过处理器执行存储于存储器中的程序/指令来实现其相应功能。本发明不限制于任何特定形式的硬件和软件的结合。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (6)
1.一种处理数据的装置,其特征在于,包括:确定模块、获取模块、处理模块、存储模块和统计模块;其中,
确定模块,用于根据预设统计时长确定各个子统计时间段;
获取模块,用于获取各个子统计时间段内在线用户的用户标识;
处理模块,用于创建与各个子统计时间段对应的位图并在创建的位图中将获得的用户标识对应的比特位置为1;
存储模块,用于将所述各个子统计时间段作为键以及将所述各个子统计时间段对应的位图作为值存储至预先创建的数据库中;
统计模块,用于获取所述预设统计时长内所包含的各个子统计时间段对应的位图;对获得的各个子统计时间段对应的位图中被置为1的比特位进行求和计算;将计算出的和值作为所述预设统计时长内的用户活跃量。
2.根据权利要求1所述的装置,其特征在于,所述确定模块,具体用于:
将所述预设统计时长划分为N等分的子统计时长;
每一个划分后的子统计时长对应的时间段作为子统计时间段;
其中,N是正整数。
3.根据权利要求1或2所述的装置,其特征在于,所述处理模块创建与各个子统计时间段对应的位图包括:
分别创建与每个子统计时间段对应的一位图;
设置每个创建的位图中每个比特位与不同的用户标识之间的映射关系。
4.一种处理数据的方法,其特征在于,包括:
根据预设统计时长确定各个子统计时间段;
获取各个子统计时间段内在线用户的用户标识;
创建与各个子统计时间段对应的位图并在创建的位图中将获得的用户标识对应的比特位置为1;
将所述各个子统计时间段作为键以及将所述各个子统计时间段对应的位图作为值存储至预先创建的数据库中;
获取所述统计时长内所包含的各个子统计时间段对应的位图;
对获得的各个子统计时间段对应的位图中被置为1的比特位进行求和计算;
将计算出的和值作为所述预设统计时长内的用户活跃量。
5.根据权利要求4所述的方法,其特征在于,所述根据预设统计时长确定各个子统计时间段包括:
将所述预设统计时长划分为N等分的子统计时长;
每一个划分后的子统计时长对应的时间段作为子统计时间段;
其中,N是正整数。
6.根据权利要求4或5所述的方法,其特征在于,所述创建与各个子统计时间段对应的位图包括:
分别创建与每个子统计时间段对应的一位图;
设置每个创建的位图中每个比特位与不同的用户标识之间的映射关系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610184389.9A CN105824952B (zh) | 2016-03-28 | 2016-03-28 | 一种处理数据的装置和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610184389.9A CN105824952B (zh) | 2016-03-28 | 2016-03-28 | 一种处理数据的装置和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105824952A CN105824952A (zh) | 2016-08-03 |
CN105824952B true CN105824952B (zh) | 2019-04-19 |
Family
ID=56525351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610184389.9A Active CN105824952B (zh) | 2016-03-28 | 2016-03-28 | 一种处理数据的装置和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105824952B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108427687A (zh) * | 2017-02-15 | 2018-08-21 | 北京国双科技有限公司 | 一种用户数处理方法及装置 |
CN108665121A (zh) * | 2017-03-27 | 2018-10-16 | Tcl集团股份有限公司 | 一种计算智能终端用户留存率的方法及系统 |
CN107294784A (zh) * | 2017-07-10 | 2017-10-24 | 环球智达科技(北京)有限公司 | 一种基于位运算的活跃统计方法 |
CN108197885A (zh) * | 2017-11-27 | 2018-06-22 | 泰康保险集团股份有限公司 | 员工的考勤方法和装置 |
CN108415952B (zh) * | 2018-02-02 | 2020-10-16 | 北京腾云天下科技有限公司 | 用户数据存储方法、标签计算方法及计算设备 |
CN108762717B (zh) * | 2018-05-21 | 2020-12-29 | 杭州海兴电力科技股份有限公司 | 基于Bit-map的抄表成功记录方法、统计方法和补招方法 |
CN108737898A (zh) * | 2018-05-23 | 2018-11-02 | 武汉斗鱼网络科技有限公司 | 一种热点直播推送方法、服务器及存储介质 |
CN109002386A (zh) * | 2018-07-02 | 2018-12-14 | 北京小米移动软件有限公司 | 用户活跃时间记录方法、装置、存储介质和电子设备 |
CN109471786B (zh) * | 2018-11-16 | 2019-08-30 | 苏州好玩友网络科技有限公司 | 一种数据采集方法、装置、设备和存储介质 |
CN110535944B (zh) * | 2019-08-29 | 2023-04-18 | 广州方硅信息技术有限公司 | 用户活跃数据处理的方法及装置 |
CN110535943B (zh) * | 2019-08-29 | 2022-04-26 | 广州方硅信息技术有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN112448865A (zh) * | 2020-11-06 | 2021-03-05 | 深圳市易平方网络科技有限公司 | 一种数据处理方法、智能终端及存储介质 |
CN112650887B (zh) * | 2020-12-22 | 2022-02-18 | 广州锦行网络科技有限公司 | 一种图数据库时间属性的快速查询方法 |
CN113377826A (zh) * | 2021-04-22 | 2021-09-10 | 宁波三星医疗电气股份有限公司 | 基于行程压缩的数据完整率统计方法 |
CN112905606B (zh) * | 2021-05-07 | 2021-08-03 | 中建电子商务有限责任公司 | 一种基于位图的考勤标识算法 |
CN114356972B (zh) * | 2021-12-03 | 2022-08-23 | 四川科瑞软件有限责任公司 | 一种数据处理方法、基于事件时间的检索方法和装置 |
CN115604532A (zh) * | 2022-11-30 | 2023-01-13 | 深圳市华曦达科技股份有限公司(Cn) | 一种指定时段观看直播用户统计方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102929672A (zh) * | 2012-10-31 | 2013-02-13 | 北京奇虎科技有限公司 | 应用升级系统及方法 |
CN103500177A (zh) * | 2013-09-06 | 2014-01-08 | 乐视致新电子科技(天津)有限公司 | 一种用户激活数的统计方法及装置 |
CN104899204A (zh) * | 2014-03-05 | 2015-09-09 | 腾讯科技(深圳)有限公司 | 数据存储方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104298680B (zh) * | 2013-07-18 | 2019-01-11 | 腾讯科技(深圳)有限公司 | 数据统计方法及数据统计装置 |
-
2016
- 2016-03-28 CN CN201610184389.9A patent/CN105824952B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102929672A (zh) * | 2012-10-31 | 2013-02-13 | 北京奇虎科技有限公司 | 应用升级系统及方法 |
CN103500177A (zh) * | 2013-09-06 | 2014-01-08 | 乐视致新电子科技(天津)有限公司 | 一种用户激活数的统计方法及装置 |
CN104899204A (zh) * | 2014-03-05 | 2015-09-09 | 腾讯科技(深圳)有限公司 | 数据存储方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105824952A (zh) | 2016-08-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105824952B (zh) | 一种处理数据的装置和方法 | |
CN110781184B (zh) | 数据表的构建方法、装置、设备及存储介质 | |
CN111476375B (zh) | 一种确定识别模型的方法、装置、电子设备及存储介质 | |
CN110275889B (zh) | 一种适用于机器学习的特征处理方法及装置 | |
CN113656377A (zh) | 数据迁移的自动匹配方法、装置、计算机设备及存储介质 | |
CN111858735A (zh) | 数据导入方法、装置、电子设备及存储介质 | |
CN117370400B (zh) | 航空数据的加工聚合处理方法、装置、电子设备及介质 | |
CN111258819A (zh) | MySQL数据库备份文件的数据获取方法、装置和系统 | |
CN117874033A (zh) | 数据库分表方法、装置、电子设备及存储介质 | |
CN116955341A (zh) | 数据库完整性评价方法、系统及其应用 | |
CN116633666A (zh) | 网络异常行为检测方法、装置、电子设备及存储介质 | |
CN111580972A (zh) | 一种虚拟资源处理方法及装置 | |
CN114791914A (zh) | 基于Bitmap位图的用户行为统计方法、装置、设备及介质 | |
CN112784114A (zh) | 一种基于Neo4j高性能图数据库的关系图谱更新方法 | |
CN115622890A (zh) | 数据配置方法、装置、计算机设备和存储介质 | |
CN111131393B (zh) | 用户活跃度数据统计方法、电子装置及存储介质 | |
CN113792048B (zh) | 非关系型数据库的表单校验规则生成方法和系统 | |
CN116775771B (zh) | 数据同步方法、设备、系统及介质 | |
CN114357069B (zh) | 一种基于分布式存储的大数据采样方法及系统 | |
CN116775688A (zh) | 基于多租户多对象池的活跃对象数量查询方法及相关设备 | |
CN116991662A (zh) | 时间序列告警规则处理方法、装置及计算机设备 | |
CN113986898A (zh) | 一种数据质量检测方法、装置、设备及可读存储介质 | |
CN117290547A (zh) | 一种设备数据集管理方法、装置、设备及介质 | |
CN116307908A (zh) | 一种数据指标的管理方法和装置 | |
CN117234679A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20201223 Address after: 750004 1st floor, building 2, phase 3, Yinchuan IBI breeding center, 396 Liupanshan Road, yandunxiang, Jinfeng District, Yinchuan City, Ningxia Hui Autonomous Region Patentee after: Ningxia Zhongzhi Haohuo Network Technology Co.,Ltd. Address before: 518000 6-8 / F, 10-11 / F, 6 / F, 6-10 / F, C zone, Han's innovation building, No. 9018, Beihuan Avenue, high tech Zone, Nanshan District, Shenzhen City, Guangdong Province Patentee before: NUBIA TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |