根据区域范围在移动互联网内进行数据预取的方法及系统与流程

文档序号:16532148发布日期:2019-01-05 10:50阅读:186来源:国知局
根据区域范围在移动互联网内进行数据预取的方法及系统与流程

本发明涉及物联网领域和互联网领域,并且更具体地,涉及移动互联网领域中的一种根据区域范围在移动互联网内进行数据预取的方法及系统。



背景技术:

目前,随着物联网,特别是移动互联网,的发展越来越快,移动终端的使用越来越普及,人们通常会利用移动终端来安装大量的应用并且存储大量的个人数据。由于数据量的增加比存储空间的增加更为迅速,因此对移动终端内的数据文件进行有效管理则越来越重要。在一些情况下,对于使用情况的规律性较强的用户,当移动终端处于特定区域范围内时,用户通常会使用多个用户应用中的常用应用。现有技术中,没有针对这种规律性进行数据预取的技术。



技术实现要素:

根据本发明的一个方面,提供一种根据区域范围在移动互联网内进行数据预取的方法,所述方法包括:

获取与移动互联网内目标移动终端相关联的运行统计文件,对所述运行统计文件进行解析以获取所述目标移动终端的位置统计信息和所述目标移动终端内多个用户应用中每个用户应用的运行统计信息,其中所述位置统计信息是坐标点集合,所述坐标点集合包括目标移动终端在预定数量的自然日内到达过的多个位置坐标点;

基于多个位置坐标点之间的相互距离对所述坐标点集合中的所有位置坐标点进行中心点聚类,以将所述坐标点集合划分为多个子集合并且每个子集合包括至少一个位置坐标点,将所包括的位置坐标点的数量大于区域阈值的多个子集合中的每个选择作为区域子集合,并根据单个区域子集合来构建单个区域范围,从而生成多个区域范围;

对目标移动终端的当前位置进行监测,当确定目标移动终端的当前位置处于多个区域范围中的特定区域范围内的连续时间长度达到停留阈值时,根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率,并基于每个用户应用在特定区域范围内的运行概率对多个用户应用进行运行概率的降序排序以生成排序列表;

根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的至少一个预取用户应用,并且根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别,其中所述存储级别包括:减量存储级、增量存储级、定量存储级和压缩存储级;

为减量存储级的每个预取用户应用分配至少一个动态存储单元,为压缩存储级的每个预取用户应用分配至少一个动态存储单元,为增量存储级的每个预取用户应用分配一个动态存储单元并且为定量存储级的每个预取用户应用分配一个动态存储单元;

根据每个预取用户应用的存储级别给为每个预取用户应用所分配的动态存储单元设置存储级别;

根据预取用户应用的存储级别将与每个预取用户应用相关联的数据文件从第二存储器进行数据预取,包括:

将与减量存储级的每个预取用户应用相关联的多个数据文件从第二存储器复制到为减量存储级的每个预取用户应用所分配的至少一个减量存储级的动态存储单元,在复制完成时为每个减量存储级的动态存储单元设置第一时间周期并开始计时,每当第一时间周期期满时在每个减量存储级的动态存储单元中删除第一预定数量的数据文件;

在与增量存储级的每个预取用户应用相关联的多个数据文件中选择至少一个基础数据文件,将增量存储级的每个预取用户应用的至少一个基础数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元,在复制完成时为增量存储级的动态存储单元设置第二时间周期并开始计时,其中每当第二时间周期期满时将与增量存储级的每个预取用户应用相关联的多个数据文件中第二预定数量的数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元;

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件,并且将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元;以及

将与压缩存储级的每个预取用户应用相关联的多个数据文件进行压缩以生成多个经过压缩的数据文件,将压缩存储级的每个预取用户应用的多个经过压缩的数据文件从第二存储器复制到为压缩存储级的每个预取用户应用所分配的至少一个压缩存储级的动态存储单元。

所述移动互联网内包括多个移动终端,并且将发起数据预取请求的移动终端确定为目标移动终端,其中用户应用的数量大于4。

所述运行统计文件包括位置数据表,所述位置数据表中包括多个位置数据项并且每个位置数据项的内容为三元组<位置坐标点、起始时间、结束时间>。

其中将位置数据表中每个位置数据项内的位置坐标点组成包括多个位置坐标点的坐标点集合,并将所述坐标点集合作为位置统计信息,其中位置数据表用于实时记录目标移动终端的运行位置信息。

在位置数据表中,为目标移动终端保存预定数量的位置数据项,或为目标移动终端保存预定数量的自然日内或预定时间长度内的位置数据项。其中预定数量的自然日为10个自然日、20个自然日或30个自然日,其中预定时间长度为240小时

其中所述坐标点集合内不存在与多个位置坐标点中任何单个位置坐标点的直线距离均大于5米、6米、8米或10米的位置坐标点,或者每当目标移动终端的当前位置与上一个位置坐标点的距离等于5米、6米、8米或10米时,将当前位置确定为当前的位置坐标点;或者每当经过5秒钟、10秒或20秒时,将目标移动终端的当前位置确定为当前的位置坐标点。

其中预定数量的自然日为10个自然日、20个自然日或30个自然日。

其中在当前自然日结束时,将与目标移动终端在当前自然日内到达过的每个位置坐标点相关联的每个位置数据项保存到位置数据表中。

所述运行统计文件包括多个运行数据表,并且为目标移动终端内多个用户应用中每个用户应用分配一个运行数据表,每个运行数据表中包括多个运行数据项并且每个运行数据项的内容为五元组<应用名称、位置坐标点、起始时间、结束时间、累计时间长度>。

其中将为每个用户应用所分配的运行数据表作为每个用户应用的运行统计信息,并且为每个用户应用所分配的运行数据表用于实时记录每个用户应用的运行位置信息。

在所述运行统计文件中,为每个用户应用保存预定数量的运行数据项,或为每个用户应用保存预定数量的自然日内或预定时间长度(至少10天)内的运行数据项。

所述区域阈值为50个、100个或200个。

在每个子集合中,至少一个位置坐标点被选择作为中心点,并且中心点能够是位置重合的多个位置坐标点。

其中根据单个区域子集合来构建单个区域范围包括:

计算中心点与所归属的单个区域子集合中(除所述中心点之外的)其它位置坐标点中每个位置坐标点的直线距离;

确定中心点与(除所述中心点之外的)(其它位置坐标点中)每个位置坐标点的直线距离中最长的直线距离;

将以单个区域子集合内中心点为圆心并且以最长的直线距离的半径的圆形构建为单个区域范围。

在通过中心点聚类,以将所述坐标点集合划分为多个子集合之后,每个子集合中的任意位置坐标点与所归属的子集合的中心点的直线距离小于与除所归属的子集合之外的其它任意子集合的中心点的直线距离。

其中停留阈值为1分钟、5分钟、10分钟或15分钟。

其中根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率包括:

选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日;

对每个用户应用的运行统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在特定区域范围内运行的有效次数ci,其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;

基于每个用户应用在统计日期区间内,在特定区域范围内运行的有效次数ci计算所有用户应用在特定区域范围内运行的总有效次数s:

计算每个用户应用在特定区域范围内的运行概率pi=ci/s。

其中当用户应用在特定区域范围内的运行时间超过60秒时,计为一次有效次数。

其中根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率包括:

选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日;

对每个用户应用的运行统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在在特定区域范围内运行的时间长度ti,其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;

基于每个用户应用在统计日期区间内,在特定区域范围内运行的时间长度ti计算所有用户应用在特定区域范围内运行的总时间长度t:

计算每个用户应用在特定区域范围内的运行概率pi=ti/t。

在获取与移动互联网内目标移动终端相关联的运行统计文件之前还包括:

响应于用户发起的针对移动互联网内目标移动终端的与用户应用相关联的数据文件进行数据预取的数据预取请求,获取与所述数据预取相关联的动态配置文件;

在所述目标移动终端的第一存储器中创建动态索引区域,并且根据所述动态配置文件在第一存储器中创建用于存储数据文件的多个动态存储单元,其中根据所述动态配置文件确定所述多个动态存储单元中的每个动态存储单元的存储容量;以及

在所述动态索引区域中生成动态索引表,所述动态索引表包括多个索引项,每个索引项用于记录多个动态存储单元中的相应动态存储单元的应用标识、起始地址、结束地址、存储容量和存储级别。

其中第一存储器为随机存取存储器,第二存储器为只读存储器。

所述动态配置文件包括第一存储器中用于提供多个动态存储单元的存储区域的起始地址和结束地址,并且所述动态配置文件还包括多个动态存储单元中的每个动态存储单元的存储容量。

其中应用标识为动态存储单元所归属的用户应用的标识符,起始地址为动态存储单元的存储空间的起始地址,结束地址为动态存储单元的存储空间的结束地址,存储容量为动态存储单元的存储空间的存储容量和存储级别为动态存储单元的存储空间的存储级别。

还包括根据为动态存储单元所设置的存储级别对动态索引表中相应的索引项进行更新。

其中根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件,并为定量存储级的每个预取用户应用的多个文件组设置不同的优先级以构成优先级队列,将每个优先级队列中位于队首的文件组作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元并且为定量存储级的每个动态存储单元设置第三时间周期,每当第三时间周期期满时,按照优先级降低的顺序使用优先级队列中的下一文件组作为当前文件组,直到不存在下一文件组为止;

将当前文件组中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件;

其中每个文件组的尺寸小于相应的定量存储级的动态存储单元的存储空间。

其中根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件,从所述多个文件组中随机选择一个文件组作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元并且为定量存储级的每个动态存储单元设置第三时间周期,每当第三时间周期期满时,从多个文件组中随机选择下一文件组作为当前文件组,直到不存在下一文件组为止;

将当前文件组中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件;

其中每个文件组的尺寸小于相应的定量存储级的动态存储单元的存储空间。

在将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元之后,设置第三时间周期并且每当第三时间周期期满时,根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,重新从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件,将重新选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元。

其中根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

步骤1、根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成n个文件组,其中n为大于1的自然数并且每个文件组包括至少一个数据文件;

步骤2、为n个文件组中的每个文件组设置不同的序号,其中所述序号从1至n;

步骤3、将序号i=1的文件组作为当前文件组,其中n≥i>0;

步骤4、为定量存储级的每个动态存储单元设置第三时间周期;

步骤5、将当前文件组所包括的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元;

步骤6、当第三时间周期期满时,判断i=n是否成立,如果成立,则结束;如果不成立,则将序号i=i+1的文件组作为当前文件组,进行步骤5;

其中每个文件组的尺寸小于定量存储级的动态存储单元的存储容量。

其中根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的多个预取用户应用包括:

当排序列表中运行概率大于预取阈值的用户应用的数量大于0时,将排序列表中运行概率大于预取阈值的用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用;

当排序列表中运行概率大于预取阈值的用户应用的数量等于0时,将排序列表中所有用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用。

其中根据排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别包括:

将排序列表中运行概率大于高概率阈值的预取用户应用的存储级别设置为减量存储级;

将所述排序列表中运行概率小于或等于高概率阈值并且大于中概率阈值的预取用户应用的存储级别设置为增量存储级;

将所述排序列表中运行概率小于或等于中概率阈值并且大于低概率阈值的预取用户应用的存储级别设置为定量存储级;

将所述排序列表中运行概率小于或等于低概率阈值的预取用户应用的存储级别设置为压缩存储级。

其中为每个减量存储级的预取用户应用所分配的至少一个动态存储单元能够容纳相应的减量存储级的预取用户应用的所有数据文件,并且为每个压缩存储级的预取用户应用所分配的至少一个动态存储单元能够容纳相应的压缩存储级的预取用户应用的所有经过压缩的数据文件。

其中第一时间周期为30秒,第二时间周期为60秒,其中第三时间周期为90秒。

其中每个预取用户应用的至少一个基础数据文件是与增量存储级的每个预取用户应用相关联的多个数据文件中启动顺序高于优先阈值的至少一个数据文件。

其中第一预定数量为5,所述第二预定数量为8。

根据本发明的另一方面,提供一种根据区域范围在移动互联网内进行数据预取的系统,所述系统包括:

解析装置,获取与移动互联网内目标移动终端相关联的运行统计文件,对所述运行统计文件进行解析以获取所述目标移动终端的位置统计信息和所述目标移动终端内多个用户应用中每个用户应用的运行统计信息,其中所述位置统计信息是坐标点集合,所述坐标点集合包括目标移动终端在预定数量的自然日内到达过的多个位置坐标点;

生成装置,基于多个位置坐标点之间的相互距离对所述坐标点集合中的所有位置坐标点进行中心点聚类,以将所述坐标点集合划分为多个子集合并且每个子集合包括至少一个位置坐标点,将所包括的位置坐标点的数量大于区域阈值的多个子集合中的每个选择作为区域子集合,并根据单个区域子集合来构建单个区域范围,从而生成多个区域范围;

排序装置,对目标移动终端的当前位置进行监测,当确定目标移动终端的当前位置处于多个区域范围中的特定区域范围内的连续时间长度达到停留阈值时,根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率,并基于每个用户应用在特定区域范围内的运行概率对多个用户应用进行运行概率的降序排序以生成排序列表;

设置装置,根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的至少一个预取用户应用,并且根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别,其中所述存储级别包括:减量存储级、增量存储级、定量存储级和压缩存储级;根据每个预取用户应用的存储级别给为每个预取用户应用所分配的动态存储单元设置存储级别;

分配装置,为减量存储级的每个预取用户应用分配至少一个动态存储单元,为压缩存储级的每个预取用户应用分配至少一个动态存储单元,为增量存储级的每个预取用户应用分配一个动态存储单元并且为定量存储级的每个预取用户应用分配一个动态存储单元;

预取装置,根据预取用户应用的存储级别将与每个预取用户应用相关联的数据文件从第二存储器进行数据预取,包括:

将与减量存储级的每个预取用户应用相关联的多个数据文件从第二存储器复制到为减量存储级的每个预取用户应用所分配的至少一个减量存储级的动态存储单元,在复制完成时为每个减量存储级的动态存储单元设置第一时间周期并开始计时,每当第一时间周期期满时在每个减量存储级的动态存储单元中删除第一预定数量的数据文件;

在与增量存储级的每个预取用户应用相关联的多个数据文件中选择至少一个基础数据文件,将增量存储级的每个预取用户应用的至少一个基础数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元,在复制完成时为增量存储级的动态存储单元设置第二时间周期并开始计时,其中每当第二时间周期期满时将与增量存储级的每个预取用户应用相关联的多个数据文件中第二预定数量的数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元;

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件,并且将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元;以及

将与压缩存储级的每个预取用户应用相关联的多个数据文件进行压缩以生成多个经过压缩的数据文件,将压缩存储级的每个预取用户应用的多个经过压缩的数据文件从第二存储器复制到为压缩存储级的每个预取用户应用所分配的至少一个压缩存储级的动态存储单元。

所述移动互联网内包括多个移动终端,并且将发起数据预取请求的移动终端确定为目标移动终端,其中用户应用的数量大于4。

所述运行统计文件包括位置数据表,所述位置数据表中包括多个位置数据项并且每个位置数据项的内容为三元组<位置坐标点、起始时间、结束时间>。

其中将位置数据表中每个位置数据项内的位置坐标点组成包括多个位置坐标点的坐标点集合,并将所述坐标点集合作为位置统计信息,其中位置数据表用于实时记录目标移动终端的运行位置信息。

在位置数据表中,为目标移动终端保存预定数量的位置数据项,或为目标移动终端保存预定数量的自然日内或预定时间长度内的位置数据项。其中预定数量的自然日为10个自然日、20个自然日或30个自然日,其中预定时间长度为240小时

其中所述坐标点集合内不存在与多个位置坐标点中任何单个位置坐标点的直线距离均大于5米、6米、8米或10米的位置坐标点,或者每当目标移动终端的当前位置与上一个位置坐标点的距离等于5米、6米、8米或10米时,将当前位置确定为当前的位置坐标点;或者每当经过5秒钟、10秒或20秒时,将目标移动终端的当前位置确定为当前的位置坐标点。

其中预定数量的自然日为10个自然日、20个自然日或30个自然日。

其中在当前自然日结束时,将与目标移动终端在当前自然日内到达过的每个位置坐标点相关联的每个位置数据项保存到位置数据表中。

所述运行统计文件包括多个运行数据表,并且为目标移动终端内多个用户应用中每个用户应用分配一个运行数据表,每个运行数据表中包括多个运行数据项并且每个运行数据项的内容为五元组<应用名称、位置坐标点、起始时间、结束时间、累计时间长度>。

其中将为每个用户应用所分配的运行数据表作为每个用户应用的运行统计信息,并且为每个用户应用所分配的运行数据表用于实时记录每个用户应用的运行位置信息。

在所述运行统计文件中,为每个用户应用保存预定数量的运行数据项,或为每个用户应用保存预定数量的自然日内或预定时间长度(至少10天)内的运行数据项。

所述区域阈值为50个、100个或200个。

在每个子集合中,至少一个位置坐标点被选择作为中心点,并且中心点能够是位置重合的多个位置坐标点。

其中生成装置根据单个区域子集合来构建单个区域范围包括:

计算中心点与所归属的单个区域子集合中其它位置坐标点中每个位置坐标点的直线距离;

确定中心点与每个位置坐标点的直线距离中最长的直线距离;

将以单个区域子集合内中心点为圆心并且以最长的直线距离的半径的圆形构建为单个区域范围。

在生成装置通过中心点聚类,以将所述坐标点集合划分为多个子集合之后,每个子集合中的任意位置坐标点与所归属的子集合的中心点的直线距离小于与除所归属的子集合之外的其它任意子集合的中心点的直线距离。

其中停留阈值为1分钟、5分钟、10分钟或15分钟。

其中排序装置根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率包括:

选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日;

对每个用户应用的运行统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在特定区域范围内运行的有效次数ci,其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;

基于每个用户应用在统计日期区间内,在特定区域范围内运行的有效次数ci计算所有用户应用在特定区域范围内运行的总有效次数s:

计算每个用户应用在特定区域范围内的运行概率pi=ci/s。

其中当用户应用在特定区域范围内的运行时间超过60秒时,计为一次有效次数。

其中排序装置根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率包括:

选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日;

对每个用户应用的运行统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在在特定区域范围内运行的时间长度ti,其中1≤i≤na,na为目标移动终端内用户应用的数量,na为自然数并且na大于4;

基于每个用户应用在统计日期区间内,在特定区域范围内运行的时间长度ti计算所有用户应用在特定区域范围内运行的总时间长度t:

计算每个用户应用在特定区域范围内的运行概率pi=ti/t。

还包括初始化装置,用于响应于用户发起的针对移动互联网内目标移动终端的与用户应用相关联的数据文件进行数据预取的数据预取请求,获取与所述数据预取相关联的动态配置文件;

在所述目标移动终端的第一存储器中创建动态索引区域,并且根据所述动态配置文件在第一存储器中创建用于存储数据文件的多个动态存储单元,其中根据所述动态配置文件确定所述多个动态存储单元中的每个动态存储单元的存储容量;以及

在所述动态索引区域中生成动态索引表,所述动态索引表包括多个索引项,每个索引项用于记录多个动态存储单元中的相应动态存储单元的应用标识、起始地址、结束地址、存储容量和存储级别。

其中第一存储器为随机存取存储器,第二存储器为只读存储器。

所述动态配置文件包括第一存储器中用于提供多个动态存储单元的存储区域的起始地址和结束地址,并且所述动态配置文件还包括多个动态存储单元中的每个动态存储单元的存储容量。

其中应用标识为动态存储单元所归属的用户应用的标识符,起始地址为动态存储单元的存储空间的起始地址,结束地址为动态存储单元的存储空间的结束地址,存储容量为动态存储单元的存储空间的存储容量和存储级别为动态存储单元的存储空间的存储级别。

还包括根据为动态存储单元所设置的存储级别对动态索引表中相应的索引项进行更新。

其中预取装置根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件,并为定量存储级的每个预取用户应用的多个文件组设置不同的优先级以构成优先级队列,将每个优先级队列中位于队首的文件组作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元并且为定量存储级的每个动态存储单元设置第三时间周期,每当第三时间周期期满时,按照优先级降低的顺序使用优先级队列中的下一文件组作为当前文件组,直到不存在下一文件组为止;

将当前文件组中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件;

其中每个文件组的尺寸小于相应的定量存储级的动态存储单元的存储空间。

其中预取装置根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件,从所述多个文件组中随机选择一个文件组作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元并且为定量存储级的每个动态存储单元设置第三时间周期,每当第三时间周期期满时,从多个文件组中随机选择下一文件组作为当前文件组,直到不存在下一文件组为止;

将当前文件组中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件;

其中每个文件组的尺寸小于相应的定量存储级的动态存储单元的存储空间。

在预取装置将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元之后,预取装置设置第三时间周期并且每当第三时间周期期满时,根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,重新从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件,将重新选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元。

其中预取装置根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

步骤1、根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成n个文件组,其中n为大于1的自然数并且每个文件组包括至少一个数据文件;

步骤2、为n个文件组中的每个文件组设置不同的序号,其中所述序号从1至n;

步骤3、将序号i=1的文件组作为当前文件组,其中n≥i>0;

步骤4、为定量存储级的每个动态存储单元设置第三时间周期;

步骤5、将当前文件组所包括的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元;

步骤6、当第三时间周期期满时,判断i=n是否成立,如果成立,则结束;如果不成立,则将序号i=i+1的文件组作为当前文件组,进行步骤5;

其中每个文件组的尺寸小于定量存储级的动态存储单元的存储容量。

其中设置装置根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的多个预取用户应用包括:

当排序列表中运行概率大于预取阈值的用户应用的数量大于0时,将排序列表中运行概率大于预取阈值的用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用;

当排序列表中运行概率大于预取阈值的用户应用的数量等于0时,将排序列表中所有用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用。

其中设置装置根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别包括:

将所述排序列表中运行概率大于高概率阈值的预取用户应用的存储级别设置为减量存储级;

将所述排序列表中运行概率小于或等于高概率阈值并且大于中概率阈值的预取用户应用的存储级别设置为增量存储级;

将所述排序列表中运行概率小于或等于中概率阈值并且大于低概率阈值的预取用户应用的存储级别设置为定量存储级;

将所述排序列表中运行概率小于或等于低概率阈值的预取用户应用的存储级别设置为压缩存储级。

其中分配装置为每个减量存储级的预取用户应用所分配的至少一个动态存储单元能够容纳相应的减量存储级的预取用户应用的所有数据文件,并且分配装置为每个压缩存储级的预取用户应用所分配的至少一个动态存储单元能够容纳相应的压缩存储级的预取用户应用的所有经过压缩的数据文件。

其中第一时间周期为30秒,第二时间周期为60秒,其中第三时间周期为90秒。

其中每个预取用户应用的至少一个基础数据文件是与增量存储级的每个预取用户应用相关联的多个数据文件中启动顺序高于优先阈值的至少一个数据文件。

其中第一预定数量为5,所述第二预定数量为8。

附图说明

通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:

图1为根据本发明实施方式的根据区域范围在移动互联网内进行数据预取的方法的流程图;

图2为根据本发明实施方式的排序列表的逻辑示意图;

图3为根据本发明实施方式的减量存储的逻辑示意图;

图4为根据本发明实施方式的增量存储的逻辑示意图;

图5为根据本发明实施方式的定量存储的逻辑示意图;

图6为根据本发明实施方式的压缩存储的逻辑示意图;以及

图7为根据本发明实施方式的根据区域范围在移动互联网内进行数据预取的系统的结构示意图。

具体实施方式

图1为根据本发明实施方式的根据区域范围在移动互联网内进行数据预取的方法100的流程图。如图1所示,方法100从步骤101处开始。

在步骤101,获取与移动互联网内目标移动终端相关联的运行统计文件,对所述运行统计文件进行解析以获取所述目标移动终端的位置统计信息和所述目标移动终端内多个用户应用中每个用户应用的运行统计信息,其中所述位置统计信息是坐标点集合,所述坐标点集合包括目标移动终端在预定数量的自然日内到达过的多个位置坐标点。移动互联网内包括多个移动终端、基站、内容服务器等。本申请将将发起数据预取请求的移动终端或请求进行数据预取的移动终端确定为目标移动终端。此外,每个移动终端(包括目标移动终端)内包括或安装的用户应用的数量大于4,例如5、10、20个用户应用。与用户应用相关的概念包括系统应用,并且系统应用通常是由移动终端的操作系统所确定的系统级应用。

运行统计文件包括位置数据表,并且本申请为目标移动终端设置或创建一个位置数据表。位置数据表中包括多个数据项并且每个数据项的内容为三元组<位置坐标点、起始时间、结束时间>或五元组<应用名称、位置坐标点、起始时间、结束时间、累计时间长度>。例如,数据项为<加瓦咖啡店、2018年6月8日20:00、2018年6月8日21:50>或<加瓦咖啡店、2018年6月8日20:00、2018年6月8日21:50、110分钟>。

本申请将将位置数据表每个数据项内的所有位置坐标点组成坐标点集合,并将所述坐标点集合作为运行位置信息,其中位置数据表用于实时记录目标移动终端的运行位置信息。即,在移动终端运行的情况下,操作系统或控制设备会将移动终端的位置信息,例如,位置坐标点、(在当前位置坐标点的)起始时间、(在当前位置坐标点的)结束时间等,进行实时统计和记录。其中。坐标点集合包括目标移动终端在统计时间区间(预定数量的自然日)到达过的多个位置坐标点。因此,位置数据表会记录移动终端从过去的特定时间点开始到当前时间点的统计时间区间(预定数量的自然日)内的位置信息(位置坐标点、运行位置信息)。其中,在所述运行统计文件或位置数据表中,本申请为(目标)移动终端保存预定数量(例如,100个,200个,300个)的数据项,或为每个(目标)移动终端保存预定数量的自然日(例如,10天,20天,30天)内的数据项。其中预定数量的自然日为10个自然日、20个自然日、30个自然日或任意合理数量的自然日。

其中所述坐标点集合内不存在与多个位置坐标点中任何单个位置坐标点的直线距离均大于5米、6米、8米或10米的位置坐标点,即坐标点集合内的任何位置坐标点均具有位置上或时间上临近的位置坐标点,并且位置上或时间上临近的位置坐标点之间的直线距离小于或等于5米、6米、8米、10米或任意合理距离。可替换地,当目标移动终端进行移动时,每当目标移动终端的当前位置与上一个位置坐标点(位置上或时间上临近的位置坐标点,或距离最近的位置坐标点)的距离等于5米、6米、8米、10米或任何合理距离时,将当前位置(的坐标点)确定为当前的位置坐标点。在这种情况下,位置坐标点之间的距离可能是相等的。每当经过5秒钟、10秒钟、15秒钟、30秒钟或任何合理时间时,将目标移动终端的当前位置(的坐标点)确定为当前的位置坐标点。在这种情况下,当目标移动终端在5秒钟、10秒钟、15秒钟、30秒钟或任何合理时间期满时没有移动时,则当前的位置坐标点与所记录的上一个位置坐标点重合。在这种情况下,位置坐标点之间的距离可能是较为密集(移动终端低速移动)或较为松散(移动终端高速移动,例如乘坐汽车、火车等)。

在本申请中,在当前自然日结束时,将与目标移动终端在当前自然日内到达过的每个位置坐标点相关联的每个数据项保存到位置数据表中。例如,在2018年6月8日晚上24点(即,2018年6月9日0点)时,将目标移动终端在2018年6月8日内到达过的每个位置坐标点相关联的每个数据项<位置坐标点、起始时间、结束时间>保存到位置数据表中。即,在当前自然日内进行当前的位置坐标点与所述坐标点集合中每个位置坐标点的直线距离与距离阈值的比较时,坐标点集合中不包括当前自然日内的位置坐标点。例如,在2018年6月8日内进行当前的位置坐标点与所述坐标点集合中每个位置坐标点的直线距离与距离阈值的比较时,坐标点集合中不包括2018年6月8日内的位置坐标点。例如,在预定数量的自然日为10个自然日的情况下,坐标点集合包括2018年5月29日至2018年6月7日这10个自然日内目标移动终端到达过的每个位置坐标点。

运行统计文件包括多个运行数据表,并且本申请为目标移动终端内多个用户应用中每个用户应用分配一个运行数据表。每个运行数据表中包括多个运行数据项并且每个运行数据项的内容为五元组<应用名称、位置坐标点、起始时间、结束时间、累计时间长度>。例如,运行数据项为<王者荣耀、加瓦咖啡店、2018年6月8日20:00、2018年6月8日21:50、110分钟>。

本申请将为每个用户应用所分配的运行数据表作为每个用户应用的运行统计信息,即,每个用户应用的运行统计信息是通过运行数据表的形式来提供的。为每个用户应用所分配的运行数据表用于实时记录每个用户应用的运行位置信息。即,在移动终端运行的情况下,操作系统或控制设备会将每个用户应用的运行位置信息,例如,应用名称、位置坐标点、起始时间、结束时间等,进行实时统计和记录。因此,数据表会记录每个用户应用从过去的特定时间点开始到当前时间点的统计时间区间内的运行信息。其中,在所述运行统计文件中,本申请为每个用户应用保存预定数量(例如,100个,200个,300个)的运行数据项,或为每个用户应用保存预定时间长度或预定数量的自然日(例如,10天,20天,30天)内的运行数据项。其中预定数量的自然日为10个自然日、20个自然日、30个自然日或任意合理数量的自然日。

在步骤102,基于多个位置坐标点之间的相互距离对所述坐标点集合中的所有位置坐标点进行中心点聚类,以将所述坐标点集合划分为多个子集合并且每个子集合包括至少一个位置坐标点,将所包括的位置坐标点的数量大于区域阈值的多个子集合中的每个选择作为区域子集合,并根据单个区域子集合来构建单个区域范围,从而生成多个区域范围。

此外,本申请还可以基于多个位置坐标点之间的相互距离确定至少一个中心点,并且基于每个中心点对所述坐标点集合中的所有位置坐标点进行分类,以将所述坐标点集合划分为多个子集合并且每个子集合包括至少一个位置坐标点,将所包括的位置坐标点的数量大于区域阈值的多个子集合中的每个选择作为区域子集合,并根据单个区域子集合来构建单个区域范围,从而生成多个区域范围。

本申请可以使用任何公知的中心点聚类方法或分类方法将坐标点集合划分为多个子集合。在简化的版本中,可以根据建筑物和道路对所述坐标点集合中的所有位置坐标点进行分类:将同一建筑物中的所有位置坐标点作为一个子集合,并且不考虑道路上的每个位置坐标点,或者将道路上的每个位置坐标点选择作为单个子集合(即,每个子集合中仅包括一个位置坐标点)。综上所述,本申请可以通过任何方式将所述坐标点集合划分为多个子集合并且每个子集合包括至少一个位置坐标点。

无论通过何种方式,例如通过中心点聚类、(中心点)分类、建筑物分类等,以将所述坐标点集合划分为多个子集合之后,每个子集合中的任意位置坐标点与所归属的子集合的中心点的直线距离小于与除所归属的子集合之外的其它任意子集合的中心点的直线距离。当任一子集合中的第一位置坐标点与所述任一子集合的中心点的直线距离大于与另一子集合的中心点的直线距离时,则将第一位置坐标点划分到所述另一子集合。即,每个子集合中的任意位置坐标点与所处于的子集合的中心点的直线距离小于与其它任意子集合的中心点的直线距离。例如,当第一子集合中的第一位置坐标点与第一子集合的中心点的直线距离大于与第二子集合的中心点的直线距离时,则将第一位置坐标点划分到第二子集合。

在本申请中,区域阈值为50个、100个或200个。在每个子集合中,至少一个位置坐标点被选择作为中心点,并且中心点能够是位置重合的多个位置坐标点,或者中心点能够是位置临近的多个位置坐标点。其中根据单个区域子集合来构建单个区域范围包括:计算中心点与所归属的单个区域子集合中其它位置坐标点中每个位置坐标点的直线距离;确定中心点与每个位置坐标点的直线距离中最长的直线距离;将以单个区域子集合内中心点为圆心并且以最长的直线距离的半径的圆形构建为单个区域范围。例如,其中根据第一区域子集合来构建第一区域范围包括:计算第一区域子集合的中心点与第一区域子集合中任意其它位置坐标点中每个位置坐标点的直线距离;确定第一区域子集合的中心点与每个位置坐标点的直线距离中最长的直线距离;将以第一区域子集合内中心点为圆心并且以最长的直线距离的半径的圆形构建为第一区域范围。

图2为根据本发明实施方式的排序列表200的逻辑示意图。如图2所示,居住地202是目标移动终端的用户所居住的区域范围,办公地203是目标移动终端的用户工作的区域范围并且餐厅204和205是目标移动终端的用户进行午餐的区域范围。在图2中,在区域范围内利用圆形来表示位置坐标点,其中实心圆形为被选择作为区域范围的中心点的位置坐标点,而空心圆形是未被选择作为区域范围的中心点的位置坐标点。在居住地202内,具有多个位置坐标点,其中位于中心的位置坐标点被选择作为中心点。居住地202的多个位置坐标点用于表示用户手持目标移动终端在居住地202(家中)所到达过的多个位置,例如,在卧室、在客厅。办公地203的多个位置坐标点用于表示用户手持目标移动终端在办公地203(家中)所到达过的多个位置,例如,在工作位、在会议室。在办公地203中,位于中心的三个位置坐标点被选择作为中心点。餐厅204和205的位置坐标点用于表示用户手持目标移动终端在餐厅中用餐的位置。在餐厅204和205中,位于中心的位置坐标点被选择作为中心点。

其中居住地202和办公地203之间的多个位置坐标点206用于指示目标移动终端的用户上班或下班所到达过的多个位置坐标点。应当了解的是,本申请以简单的路径来演示用户上班或下班所到达过的多个位置坐标点,而实际上,用户在上班或下班的路上可以途径不同的路径,并且在相同路径上有可能在不同的位置(例如,马路一侧或另一侧等)。同理,办公地203和餐厅204、205之间的多个位置坐标点用于指示目标移动终端的用户在去用餐或返回时所到达过的多个位置坐标点。如上所述,根据对位置坐标点的采集方式的不同,目标移动终端的多个位置坐标点可能会比较密集、重合、比较分散等。但坐标点集合内不存在与多个位置坐标点中任何单个位置坐标点的直线距离均大于5米、6米、8米或10米的位置坐标点,即坐标点集合内的任何位置坐标点均具有(位置上或时间上)临近的位置坐标点,并且(位置上或实践上)临近的位置坐标点之间的直线距离小于或等于5米、6米、8米、10米或任意合理距离。

无论通过何种方式,例如通过中心点聚类、(中心点)分类、建筑物分类等,以将所述坐标点集合划分为多个子集合之后,每个子集合中的任意位置坐标点与所归属的子集合的中心点的直线距离小于与除所归属的子集合之外的其它任意子集合的中心点的直线距离。当任一子集合中的第一位置坐标点与所述任一子集合的中心点的直线距离大于与另一子集合的中心点的直线距离时,则将第一位置坐标点划分到所述另一子集合。即,每个子集合中的任意位置坐标点与所处于的子集合的中心点的直线距离小于与其它任意子集合的中心点的直线距离。例如,当第一子集合中的第一位置坐标点与第一子集合的中心点的直线距离大于与第二子集合的中心点的直线距离时,则将第一位置坐标点划分到第二子集合。

在本申请中,区域阈值为50个、100个或200个。在每个子集合中,至少一个位置坐标点被选择作为中心点,并且中心点能够是位置重合的多个位置坐标点,或者中心点能够是位置临近的多个位置坐标点,例如办公地203中的情况。

在中心点能够是位置临近的多个位置坐标点的情况下,根据单个区域子集合来构建单个区域范围包括:将多个中心点的中心点确定为复合中心点;计算复合中心点与所归属的单个区域子集合中其它位置坐标点中每个位置坐标点的直线距离;确定复合中心点与每个位置坐标点的直线距离中最长的直线距离;将以单个区域子集合内复合中心点为圆心并且以最长的直线距离的半径的圆形构建为单个区域范围。例如,其中根据第一区域子集合来构建第一区域范围包括:计算第一区域子集合的复合中心点与第一区域子集合中任意其它位置坐标点中每个位置坐标点的直线距离;确定第一区域子集合的复合中心点与每个位置坐标点的直线距离中最长的直线距离;将以第一区域子集合内复合中心点为圆心并且以最长的直线距离的半径的圆形构建为第一区域范围。

在步骤103,对目标移动终端的当前位置进行监测,当确定目标移动终端的当前位置处于多个区域范围中的特定区域范围内的连续时间长度达到停留阈值时,根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率,并基于每个用户应用在特定区域范围内的运行概率对多个用户应用进行运行概率的降序排序以生成排序列表。

本申请利用定位部件(例如,gps部件或北斗部件)对目标移动终端的当前位置进行实时监测,确定目标移动终端的当前位置处于多个区域范围中的特定区域范围内的连续时间长度是否达到停留阈值。其中停留阈值为1分钟、5分钟、10分钟或15分钟。

当目标移动终端的当前位置处于多个区域范围中的特定区域范围内的连续时间长度达到停留阈值时,根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率包括:

选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日(例如,10个自然日,20个自然日,30个自然日);

对每个用户应用的运行统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在特定区域范围内运行的有效次数ci。例如当用户应用在特定区域范围(例如居住地202)内的运行时间超过60秒时,计为一次有效次数。例如,支付宝应用在10个自然日的每个自然日内在特定区域范围(例如居住地202)内的连续运行时间为50秒(运行未超过60秒)、120秒、0秒(未运行)、180秒、360秒、520秒、780秒、0秒(未运行)、55秒(运行未超过60秒)和600秒,那么支付宝应用的有效次数为0+1+0+1+1+1+1+0+0+1=6次。其中1≤i≤na,na为目标移动终端内用户应用的数量并且na大于4;

基于每个用户应用在统计日期区间内,在特定区域范围(例如居住地202)内的有效次数ci计算所有用户应用在特定区域范围内运行的总有效次数s:

计算每个用户应用在特定区域范围内的运行概率pi=ci/s。

例如,支付宝应用在10个自然日的特定区域范围(例如居住地202)运行6次、微信应用在10个自然日的特定区域范围(例如居住地202)运行10次、淘宝应用10个自然日的特定区域范围(例如居住地202)运行3次、王者荣耀在10个自然日的特定区域范围(例如居住地202)运行1次以及美团应用在10个自然日的特定区域范围(例如居住地202)运行0次,那么s=20次。支付宝、微信应用、淘宝应用、王者荣耀和美团应用在特定区域范围(例如居住地202)的运行概率分别是30%、50%、15%、5%和0%。

可替换地,其中根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率包括:

选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日,(例如,10个自然日,20个自然日,30个自然日);

对每个用户应用的运行统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在在特定区域范围内运行的时间长度ti。支付宝应用在10个自然日的每个自然日内在特定区域范围(例如居住地202)内的运行时间为10秒、60秒、0秒、50秒、30秒、90秒、120秒、0秒、15秒和60秒,那么支付宝应用的时间长度为435秒。其中1≤i≤na,na为目标移动终端内用户应用的数量,并且na大于4;

基于每个用户应用在统计日期区间内,在特定区域范围(例如居住地202)内运行的时间长度ti计算所有用户应用在特定区域范围内运行的总时间长度t:

计算每个用户应用在特定区域范围内的运行概率pi=ti/t。

例如,支付宝应用在10个自然日的特定区域范围(例如居住地202)运行435秒、微信应用在10个自然日的特定区域范围(例如居住地202)运行875秒、淘宝应用10个自然日的特定区域范围(例如居住地202)运行500秒、王者荣耀在10个自然日的特定区域范围(例如居住地202)运行190秒以及美团应用在10个自然日的特定区域范围(例如居住地202)运行0秒,那么t=2000秒。支付宝、微信应用、淘宝应用、王者荣耀和美团应用在特定区域范围(例如居住地202)的运行概率分别是21.75%、43.75%、25%、9.5%和0%。

在图2所示的实例中,如表210所示,在从2018年6月1日至2018年6月10日的10个自然日内的特定区域范围(例如居住地202)内,王者荣耀的运行概率为18%、抖音短视频的运行概率为16%、优酷视频的运行概率为15%、手机淘宝的运行概率为13%、美团外卖的运行概率为10%、百度外卖的运行概率为9%、极品飞车的运行概率为7%、三国极无双的运行概率为6%以及懒人英语的运行概率为0%。

在步骤104,根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的至少一个预取用户应用,并且根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别,其中所述存储级别包括:减量存储级、增量存储级、定量存储级和压缩存储级。

其中根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的多个预取用户应用包括:当排序列表中运行概率大于预取阈值(例如,5%、10%)的用户应用的数量大于0(例如,10个)时,将排序列表中运行概率大于预取阈值的用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用;当排序列表中运行概率大于预取阈值(例如,5%、10%)的用户应用的数量等于0时,将排序列表中所有用户应用(例如,15个)确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用。

其中根据排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别包括:

将所述排序列表中运行概率大于高概率阈值(例如,15%)的预取用户应用的存储级别设置为减量存储级;

将所述排序列表中运行概率小于或等于高概率阈值(例如,15%)并且大于中概率阈值(例如,12%)的预取用户应用的存储级别设置为增量存储级;

将所述排序列表中运行概率小于或等于中概率阈值(例如,12%)并且大于低概率阈值(例如,8%)的预取用户应用的存储级别设置为定量存储级;

将所述排序列表中运行概率小于或等于低概率阈值(例如,8%)的预取用户应用的存储级别设置为压缩存储级。其中预取用户应用的运行概率均大于5%。

如图2所示,根据上述方式可以确定,王者荣耀的运行概率为18%和抖音短视频的运行概率为16%,因此王者荣耀和抖音短视频的存储级别为减量存储级。优酷视频的运行概率为15%和手机淘宝的运行概率为13%,因此优酷视频和手机淘宝的存储级别为增量存储级。美团外卖的运行概率为10%和百度外卖的运行概率为9%,因此美团外卖和百度外卖的存储级别为定量存储级,极品飞车的运行概率为7%和三国极无双的运行概率为6%,因此极品飞车和三国极无双的存储级别为压缩存储级。

由于排序列表中运行概率大于预取阈值5%的用户应用的数量8大于0,因此排序列表中运行概率大于预取阈值的用户应用(王者荣耀的运行概率为18%、抖音短视频的运行概率为16%、优酷视频的运行概率为15%、手机淘宝的运行概率为13%、美团外卖的运行概率为10%、百度外卖的运行概率为9%、极品飞车的运行概率为7%、三国极无双的运行概率为6%)确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用。懒人英语的运行概率为0%,因此不属于预取用户应用。

在步骤105,为减量存储级的每个预取用户应用分配至少一个动态存储单元,为压缩存储级的每个预取用户应用分配至少一个动态存储单元,为增量存储级的每个预取用户应用分配一个动态存储单元并且为定量存储级的每个预取用户应用分配一个动态存储单元。其中为减量存储级的每个预取用户应用分配的至少一个动态存储单元中的每个动态存储单元的存储容量可以相同或不同,并且为压缩存储级的每个预取用户应用分配至少一个动态存储单元中的每个动态存储单元的存储容量可以相同或不同。

为每个减量存储级的预取用户应用所分配的至少一个动态存储单元的总存储容量能够容纳相应的减量存储级的预取用户应用的所有数据文件。为每个压缩存储级的预取用户应用所分配的至少一个动态存储单元的总存储容量能够容纳相应的压缩存储级的预取用户应用的所有经过压缩的数据文件。为增量存储级的每个预取用户应用所分配一个动态存储单元能够容纳相应的增量存储级的预取用户应用的所有数据文件。为定量存储级的每个预取用户应用所分配一个动态存储单元能够容纳相应的定量存储级的预取用户应用的所有数据文件。

在步骤106,根据每个预取用户应用的存储级别给为每个预取用户应用所分配的动态存储单元设置存储级别。将为减量存储级的每个预取用户应用所分配的至少一个动态存储单元的每个动态存储单元设置为减量存储级,将为压缩存储级的每个预取用户应用所分配的至少一个动态存储单元的每个动态存储单元设置为压缩存储级,将为增量存储级的每个预取用户应用分配一个动态存储单元设置为增量存储级并且将为定量存储级的每个预取用户应用所分配的一个动态存储单元设置为定量存储级。

在步骤107,根据预取用户应用的存储级别将与每个预取用户应用相关联的数据文件从第二存储器进行数据预取,包括:

优选地,将与减量存储级的每个预取用户应用相关联的(所有)多个数据文件从第二存储器复制到为减量存储级的每个预取用户应用所分配的至少一个减量存储级的动态存储单元,并在复制完成时为每个减量存储级的动态存储单元设置第一时间周期并开始计时,每当第一时间周期期满时在每个减量存储级的动态存储单元中删除第一预定数量的数据文件,直到每个减量存储级的动态存储单元均不具有数据文件为止。

图3为根据本发明实施方式的减量存储300的逻辑示意图。其中王者荣耀的运行概率为18%和抖音短视频的运行概率为16%,因此王者荣耀和抖音短视频的存储级别为减量存储级。

将王者荣耀的所有数据文件为从第二存储器复制到为王者荣耀所分配的至少一个减量存储级的动态存储单元301、302和303。动态存储单元301、302和303中每个的存储容量均为500m,并且在每个动态存储单元中标注应用名称和存储级别。在复制完成后为每个减量存储级的动态存储单元301、302和303设置第一时间周期(例如,30秒、50秒、60秒),每当第一时间周期期满(即,每当经过了30秒、50秒、60秒)时在每个减量存储级的动态存储单元301、302和303中删除第一预定数量(例如,3个、5个)的数据文件。

将抖音短视频的所有数据文件为从第二存储器复制到为抖音短视频所分配的至少一个减量存储级的动态存储单元311和312。动态存储单元311和312中每个的存储容量均为60m,并且在每个动态存储单元中标注应用名称和存储级别。并在复制完成后为每个减量存储级的动态存储单元311和312设置第一时间周期(例如,30秒、50秒、60秒),每当第一时间周期期满(即,每当经过了30秒、50秒、60秒)时在每个减量存储级的动态存储单元中删除第一预定数量(例如,3个、5个)的数据文件。例如,在王者荣耀和抖音短视频的数据文件全部复制到相应的动态存储单元301、302和303,以及311和312后,开始计时,每当经过30秒时,从动态存储单元301、302、303、311和312中的每个删除3个数据文件。当动态存储单元301、302和303,以及311和312中均不具有数据文件时,停止删除文件。

优选地,在与增量存储级的每个预取用户应用相关联的(所有)多个数据文件中选择至少一个基础数据文件,将增量存储级的每个预取用户应用的至少一个基础数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元,并在复制完成时为增量存储级的动态存储单元设置第二时间周期并开始计时,其中每当第二时间周期期满时将与增量存储级的每个预取用户应用相关联的多个数据文件中除了已经复制的文件之外的第二预定数量的数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元,直到每个预取用户应用相关联的所有数据文件全部被复制到所分配的相应的增量存储级的动态存储单元为止。其中每个预取用户应用的至少一个基础数据文件是与增量存储级的每个预取用户应用相关联的多个数据文件中启动顺序高于优先阈值(例如,优先阈值为3,即将多个数据文件中每个的启动顺序设置为1、2、3、4或5级,其中1、2、3、4或5级的启动顺序的级别依次升高)的至少一个数据文件。

其中为每个预取用户应用所分配的增量存储级的一个动态存储单元能够容纳/存储相应的/所归属的预取用户应用的所有(多个)数据文件。

图4为根据本发明实施方式的增量存储400的逻辑示意图。其中优酷视频的运行概率为15%和手机淘宝的运行概率为13%,因此优酷视频和手机淘宝的存储级别为增量存储级。

从优酷视频相关联的(所有)多个数据文件中选择10个基础数据文件,将这10个基础文件从第二存储器复制到为优酷视频所分配的增量存储级的动态存储单元401。动态存储单元401的存储容量均为200m,并且在每个动态存储单元中标注应用名称和存储级别。在复制完成后为增量存储级的动态存储单元401设置第二时间周期(例如,30秒、50秒、60秒),每当第二时间周期期满(即,每当经过了30秒、50秒、60秒)时将与优酷视频用相关联的多个数据文件中(除了已经复制的文件之外的)第二预定数量的(例如,3个、5个、8个)数据文件从第二存储器复制到动态存储单元401。

从手机淘宝相关联的(所有)多个数据文件中选择10个基础数据文件,将这10个基础文件从第二存储器复制到为手机淘宝所分配的增量存储级的动态存储单元402。动态存储单元402的存储容量均为300m,并且在每个动态存储单元中标注应用名称和存储级别。在复制完成后为增量存储级的动态存储单元402设置第二时间周期(例如,30秒、50秒、60秒),每当第二时间周期期满(即,每当经过了30秒、50秒、60秒)时将与手机淘宝用相关联的多个数据文件中(除了已经复制的文件之外的)第二预定数量的(例如,3个、5个、8个)数据文件从第二存储器复制到动态存储单元402。

例如,在优酷视频和手机淘宝的10个基础数据文件全部复制到相应的动态存储单元401以及402后,开始计时,每当经过60秒时,将与优酷视频用相关联的90个数据文件中(初始为100个数据文件)的8个数据文件从第二存储器复制到动态存储单元401;以及每当经过60秒时,将与手机淘宝用相关联的150个数据文件中(初始为160个数据文件)的8个数据文件从第二存储器复制到动态存储单元401。当优酷视频的所有100个数据文件全部被复制奥动态存储单元401中时,不再进行复制动作,当手机淘宝的全部160个数据文件全部被复制奥动态存储单元402中时,不再进行复制动作

优选地,根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的(所有)多个数据文件选择至少一个数据文件(所选择的至少一个数据文件所需的总的存储容量小于定量存储级的动态存储单元的存储容量),并且将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元。

图5为根据本发明实施方式的定量存储500的逻辑示意图。其中美团外卖的运行概率为10%和百度外卖的运行概率为9%,因此美团外卖和百度外卖的存储级别为定量存储级。根据为美团外卖所分配的定量存储级的动态存储单元的存储容量20m,从与美团外卖相关联的(所有)多个数据文件选择至少一个数据文件(所选择的至少一个数据文件所需的存储容量小于20m),并且将所选择的至少一个数据文件从第二存储器复制到为动态存储单元501。根据为百度外卖所分配的定量存储级的动态存储单元的存储容量10m,从与美团外卖相关联的(所有)多个数据文件选择至少一个数据文件(所选择的至少一个数据文件所需的存储容量小于10m),并且将所选择的至少一个数据文件从第二存储器复制到为动态存储单元511。

可替换地,其中根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(501或511)的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件。其中每个文件组的至少一个数据文件所需的总的存储容量小于相应的定量存储级的动态存储单元的存储容量。即,美团外卖的每个文件组中所有数据文件的总的存储容量小于20m,并且百度外卖的每个分组中所有数据文件的总的存储容量小于10m。为定量存储级的每个预取用户应用的多个文件组设置不同的优先级以构成优先级队列。例如,美团外卖包括5个文件组,并且5个文件组的优先级为1、2、3、4和5(其中数字越小优先级越高)。将每个优先级队列中位于队首的文件组(优先级为1的文件组)作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元(例如,动态存储单元501)。在复制完成后为定量存储级的每个动态存储单元(501或511)设置第三时间周期(例如,30秒、60秒或90秒)。每当第三时间周期期满时(即,每当经过了30秒、60秒、60秒),按照优先级降低的顺序使用优先级队列中的下一文件组(例如优先级为2的文件组)作为当前文件组,直到不存在下一文件组为止。即,将优先级1、2、3、4和5的文件组均复制到动态存储单元501或511后为止。由此可知,当时间足够长(足够大于多个第三时间周期期)时,例如,第三时间周期为90秒,并且到达了第450秒(即5个第三时间周期时),5个文件组中的所有文件组均用作过当前文件组。在这种情况下,不在对动态存储单元(501或511)中的内容进行更新,即保留优先级为5的文件组的至少一个数据文件在动态存储单元501中。

将当前文件组(可能是优先级为1、2、3、4或5的文件组)中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件。其中每个文件组的尺寸(即,文件组中所有数据文件的尺寸)小于相应的定量存储级的动态存储单元的存储空间。

可替换地,其中根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

根据为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(501或511)的存储容量将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成多个文件组,其中每个文件组包括至少一个数据文件其中每个文件组的至少一个数据文件所需的总的存储容量小于相应的定量存储级的动态存储单元的存储容量。即,美团外卖的每个文件组中所有数据文件的总的存储容量小于20m,并且百度外卖的每个分组中所有数据文件的总的存储容量小于10m。例如,美团外卖包括5个文件组,并且5个文件组的序号为1、2、3、4和5。从所述多个文件组中随机选择一个文件组(序号为5的文件组)作为当前文件组并将当前文件组中的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元(例如,动态存储单元501)并在复制完成后为定量存储级的每个动态存储单元(501或511)设置第三时间周期(例如,30秒、60秒或90秒)。每当第三时间周期期满时(即,每当经过了30秒、60秒、60秒),从多个文件组中随机选择下一文件组(例如,序号为2的文件组)作为当前文件组,直到不存在下一文件组为止。将序号为1、2、3、4和5的文件组均复制到动态存储单元501或511后为止。由此可知,当时间足够长(足够大于多个第三时间周期期)时,例如,第三时间周期为90秒,并且到达了第450秒(即5个第三时间周期时),5个文件组中的所有文件组均用作过当前文件组。在这种情况下,不在对动态存储单元(501或511)中的内容进行更新,即保留随机选择的最后一个文件组(例如文件组1)的至少一个数据文件在动态存储单元501中。

将当前文件组(可能是序号为1、2、3、4或5的文件组)中的至少一个数据文件作为从与定量存储级的每个预取用户应用相关联的多个数据文件选择的至少一个数据文件。其中每个文件组的尺寸(即,文件组中所有数据文件的尺寸)小于相应的定量存储级的动态存储单元的存储空间。

可替换地,在将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(501或511)之后,设置第三时间周期(例如,30秒、60秒或90秒)并且开始计时,每当第三时间周期(例如,30秒、60秒或90秒)期满时,根据为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(501或511)的存储容量(20m或10m),重新从与定量存储级的每个预取用户应用相关联的多个数据文件随机/按顺序选择至少一个数据文件,将重新选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(20m或10m)。其中,通过随机选择的方式重新选择的至少一个数据文件中的数据文件可能会与之前随机选择的数据文件相同。通过按顺序选择的方式重新选择的至少一个数据文件中的数据文件不会与之前按顺序选择的任意的数据文件相同。

可替换地,其中根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件包括:

步骤1、根据为定量存储级的每个预取用户应用(美团外卖或百度外卖)所分配的定量存储级的动态存储单元(501或511)的存储容量(20m或10m)将与定量存储级的每个预取用户应用相关联的多个数据文件进行分组以生成n(例如,n=5)个文件组,其中n为大于1的自然数并且每个文件组包括至少一个数据文件;

步骤2、为n个文件组中的每个文件组设置不同的序号,其中所述序号从1至n(例如,1、2、3、4和5);

步骤3、将序号i=1的文件组作为当前文件组,其中n≥i>0;

步骤4、为定量存储级的每个动态存储单元(501或511)设置第三时间周期(例如,30秒、60秒或90秒);

步骤5、将当前文件组所包括的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元,并开始计时;

步骤6、当第三时间周期期满时,判断i=n(即,i=5是否成立)是否成立,如果成立,则结束;如果不成立,则将序号i=i+1的文件组作为当前文件组,进行步骤5;

其中每个文件组的尺寸小于定量存储级的动态存储单元(501或511)的存储容量(20m或10m)。即,美团外卖的每个文件组中所有数据文件的总的存储容量小于20m,并且百度外卖的每个分组中所有数据文件的总的存储容量小于10m。例如,美团外卖包括5个文件组,并且5个文件组的序号为1、2、3、4和5。

在步骤6中,如果成立,则结束,意味着:将序号为1、2、3、4和5的文件组均复制到动态存储单元501或511后停止复制。由此可知,当时间足够长(足够大于多个第三时间周期期)时,例如,第三时间周期为90秒,并且到达了第450秒(即5个第三时间周期时),5个文件组中的所有文件组均用作过当前文件组。在这种情况下,不在对动态存储单元(501或511)中的内容进行更新,即保留随机选择的最后一个文件组(例如文件组5)的至少一个数据文件在动态存储单元501中。

优选地,将与压缩存储级的每个预取用户应用相关联的(所有)多个数据文件进行压缩以生成多个经过压缩的数据文件,将压缩存储级的每个预取用户应用的多个经过压缩的数据文件从第二存储器复制到为压缩存储级的每个预取用户应用所分配的至少一个压缩存储级的动态存储单元。

图6为根据本发明实施方式的压缩存储600的逻辑示意图。其中极品飞车的运行概率为7%和三国极无双的运行概率为6%,因此王者荣耀和抖音短视频的存储级别为压缩存储级。将与压缩存储级的每个预取用户应用(极品飞车或三国极无双)相关联的(所有)多个数据文件进行压缩以生成多个经过压缩的数据文件,将压缩存储级的每个预取用户应用(极品飞车或三国极无双)的多个经过压缩的数据文件从第二存储器复制到为压缩存储级的每个预取用户应用所分配的至少一个压缩存储级的动态存储单元601、602和603,以及611和612。

例如,将与极品飞车相关联的(所有)多个数据文件进行压缩以生成多个经过压缩的数据文件,将极品飞车的多个经过压缩的数据文件从第二存储器复制到动态存储单元601、602和603。例如,将与三国极无双相关联的(所有)多个数据文件进行压缩以生成多个经过压缩的数据文件,将三国极无双多个经过压缩的数据文件从第二存储器复制到动态存储单元611和612。

优选地,在获取与移动互联网内目标移动终端相关联的运行统计文件之前还包括:

响应于用户发起的针对移动互联网内目标移动终端的与用户应用相关联的数据文件进行数据预取的数据预取请求,获取与所述数据预取相关联的动态配置文件。移动互联网内包括多个移动终端、基站、内容服务器等。本申请将将发起数据预取请求的移动终端或请求进行数据预取的移动终端确定为目标移动终端。此外,每个移动终端(包括目标移动终端)内包括或安装的用户应用的数量大于4,例如5、10、20个用户应用。与用户应用相关的概念包括系统应用,并且系统应用通常是由移动终端的操作系统所确定的系统级应用。

所述动态配置文件包括第一存储器中用于提供多个动态存储单元的存储区域的起始地址和结束地址。提供多个动态存储单元的存储区域可以是第一存储器中的地址上连续的存储区或是地址上不连续的存储区。所述动态配置文件还包括多个动态存储单元中的每个动态存储单元的存储容量。通常,可以根据移动终端(目标移动终端)内每个用户应用的多个数据文件的尺寸和数量来设置每个动态存储单元的存储容量,以使得每个动态存储单元的存储容量能够容纳相应的至少一个数据文件。

在所述目标移动终端的第一存储器中创建动态索引区域,并且根据所述动态配置文件在第一存储器中创建用于存储数据文件的多个动态存储单元,其中根据所述动态配置文件确定所述多个动态存储单元中的每个动态存储单元的存储容量。因此,本申请根据每个动态存储单元的存储容量第一存储器中创建用于存储数据文件的多个动态存储单元。

在所述动态索引区域中生成动态索引表,所述动态索引表包括多个索引项,每个索引项用于记录多个动态存储单元中的相应动态存储单元的应用标识、起始地址、结束地址、存储容量和存储级别。其中应用标识为动态存储单元所归属的用户应用的标识符,起始地址为动态存储单元的存储空间的起始地址,结束地址为动态存储单元的存储空间的结束地址,存储容量为动态存储单元的存储空间的存储容量和存储级别为动态存储单元的存储空间的存储级别。例如,动态存储单元的索引项包括:支付宝应用、7000h00、8fffh、8kb、减量存储级。当动态索引表中的任何索引项涉及更新的数据时,利用更新的数据对动态索引表中的相应索引项进行更新。

其中第一存储器为随机存取存储器并且第二存储器为只读存储器。还包括根据为动态存储单元所设置的存储级别对动态索引表中相应的索引项进行更新。其中第一时间周期为30秒,第二时间周期为60秒,其中第三时间周期为90秒。其中第一预定数量为5,所述第二预定数量为8。

应当了解的是,本申请中将一个或多个数据文件从第二存储器或其他位置复制到任意存储级的动态存储单元时,是将任意存储级的动态存储单元中的原数据文件进行删除并将新的一个或多个数据文件复制到所述任意存储级的动态存储单元中。

此外,当数据预取结束时,或根据用户的操作将动态索引区域或所有动态存储单元删除/重置/清除。

图7为为根据本发明实施方式的根据区域范围在移动互联网内进行数据预取的系统700的结构示意图。如图7所示,系统700包括:获取装置701、生成装置702、排序装置703、设置装置704、分配装置705、预取装置706以及初始化装置707。

获取装置701,获取与移动互联网内目标移动终端相关联的运行统计文件,对所述运行统计文件进行解析以获取所述目标移动终端的位置统计信息和所述目标移动终端内多个用户应用中每个用户应用的运行统计信息,其中所述位置统计信息是坐标点集合,所述坐标点集合包括目标移动终端在预定数量的自然日内到达过的多个位置坐标点。移动互联网内包括多个移动终端、基站、内容服务器等。本申请将将发起数据预取请求的移动终端或请求进行数据预取的移动终端确定为目标移动终端。此外,每个移动终端(包括目标移动终端)内包括或安装的用户应用的数量大于4,例如5、10、20个用户应用。与用户应用相关的概念包括系统应用,并且系统应用通常是由移动终端的操作系统所确定的系统级应用。

运行统计文件包括位置数据表,并且本申请为目标移动终端设置或创建一个位置数据表。位置数据表中包括多个数据项并且每个数据项的内容为三元组<位置坐标点、起始时间、结束时间>或五元组<应用名称、位置坐标点、起始时间、结束时间、累计时间长度>。例如,数据项为<加瓦咖啡店、2018年6月8日20:00、2018年6月8日21:50>或<加瓦咖啡店、2018年6月8日20:00、2018年6月8日21:50、110分钟>。

本申请将将位置数据表每个数据项内的所有位置坐标点组成坐标点集合,并将所述坐标点集合作为运行位置信息,其中位置数据表用于实时记录目标移动终端的运行位置信息。即,在移动终端运行的情况下,操作系统或控制设备会将移动终端的位置信息,例如,位置坐标点、(在当前位置坐标点的)起始时间、(在当前位置坐标点的)结束时间等,进行实时统计和记录。其中。坐标点集合包括目标移动终端在统计时间区间(预定数量的自然日)到达过的多个位置坐标点。因此,位置数据表会记录移动终端从过去的特定时间点开始到当前时间点的统计时间区间(预定数量的自然日)内的位置信息(位置坐标点、运行位置信息)。其中,在所述运行统计文件或位置数据表中,本申请为(目标)移动终端保存预定数量(例如,100个,200个,300个)的数据项,或为每个(目标)移动终端保存预定数量的自然日(例如,10天,20天,30天)内的数据项。其中预定数量的自然日为10个自然日、20个自然日、30个自然日或任意合理数量的自然日。

其中所述坐标点集合内不存在与多个位置坐标点中任何单个位置坐标点的直线距离均大于5米、6米、8米或10米的位置坐标点,即坐标点集合内的任何位置坐标点均具有位置上或时间上临近的位置坐标点,并且位置上或时间上临近的位置坐标点之间的直线距离小于或等于5米、6米、8米、10米或任意合理距离。可替换地,当目标移动终端进行移动时,每当目标移动终端的当前位置与上一个位置坐标点(位置上或时间上临近的位置坐标点,或距离最近的位置坐标点)的距离等于5米、6米、8米、10米或任何合理距离时,将当前位置(的坐标点)确定为当前的位置坐标点。在这种情况下,位置坐标点之间的距离可能是相等的。每当经过5秒钟、10秒钟、15秒钟、30秒钟或任何合理时间时,将目标移动终端的当前位置(的坐标点)确定为当前的位置坐标点。在这种情况下,当目标移动终端在5秒钟、10秒钟、15秒钟、30秒钟或任何合理时间期满时没有移动时,则当前的位置坐标点与所记录的上一个位置坐标点重合。在这种情况下,位置坐标点之间的距离可能是较为密集(移动终端低速移动)或较为松散(移动终端高速移动,例如乘坐汽车、火车等)。

在本申请中,在当前自然日结束时,将与目标移动终端在当前自然日内到达过的每个位置坐标点相关联的每个数据项保存到位置数据表中。例如,在2018年6月8日晚上24点(即,2018年6月9日0点)时,将目标移动终端在2018年6月8日内到达过的每个位置坐标点相关联的每个数据项<位置坐标点、起始时间、结束时间>保存到位置数据表中。即,在当前自然日内进行当前的位置坐标点与所述坐标点集合中每个位置坐标点的直线距离与距离阈值的比较时,坐标点集合中不包括当前自然日内的位置坐标点。例如,在2018年6月8日内进行当前的位置坐标点与所述坐标点集合中每个位置坐标点的直线距离与距离阈值的比较时,坐标点集合中不包括2018年6月8日内的位置坐标点。例如,在预定数量的自然日为10个自然日的情况下,坐标点集合包括2018年5月29日至2018年6月7日这10个自然日内目标移动终端到达过的每个位置坐标点。

运行统计文件包括多个运行数据表,并且本申请为目标移动终端内多个用户应用中每个用户应用分配一个运行数据表。每个运行数据表中包括多个运行数据项并且每个运行数据项的内容为五元组<应用名称、位置坐标点、起始时间、结束时间、累计时间长度>。例如,运行数据项为<王者荣耀、加瓦咖啡店、2018年6月8日20:00、2018年6月8日21:50、110分钟>。

本申请将为每个用户应用所分配的运行数据表作为每个用户应用的运行统计信息,即,每个用户应用的运行统计信息是通过运行数据表的形式来提供的。为每个用户应用所分配的运行数据表用于实时记录每个用户应用的运行位置信息。即,在移动终端运行的情况下,操作系统或控制设备会将每个用户应用的运行位置信息,例如,应用名称、位置坐标点、起始时间、结束时间等,进行实时统计和记录。因此,数据表会记录每个用户应用从过去的特定时间点开始到当前时间点的统计时间区间内的运行信息。其中,在所述运行统计文件中,本申请为每个用户应用保存预定数量(例如,100个,200个,300个)的运行数据项,或为每个用户应用保存预定时间长度或预定数量的自然日(例如,10天,20天,30天)内的运行数据项。其中预定数量的自然日为10个自然日、20个自然日、30个自然日或任意合理数量的自然日。

生成装置702,基于多个位置坐标点之间的相互距离对所述坐标点集合中的所有位置坐标点进行中心点聚类,以将所述坐标点集合划分为多个子集合并且每个子集合包括至少一个位置坐标点,将所包括的位置坐标点的数量大于区域阈值的多个子集合中的每个选择作为区域子集合,并根据单个区域子集合来构建单个区域范围,从而生成多个区域范围。

此外,本申请还可以基于多个位置坐标点之间的相互距离确定至少一个中心点,并且基于每个中心点对所述坐标点集合中的所有位置坐标点进行分类,以将所述坐标点集合划分为多个子集合并且每个子集合包括至少一个位置坐标点,将所包括的位置坐标点的数量大于区域阈值的多个子集合中的每个选择作为区域子集合,并根据单个区域子集合来构建单个区域范围,从而生成多个区域范围。

本申请可以使用任何公知的中心点聚类方法或分类方法将坐标点集合划分为多个子集合。在简化的版本中,可以根据建筑物和道路对所述坐标点集合中的所有位置坐标点进行分类:将同一建筑物中的所有位置坐标点作为一个子集合,并且不考虑道路上的每个位置坐标点,或者将道路上的每个位置坐标点选择作为单个子集合(即,每个子集合中仅包括一个位置坐标点)。综上所述,本申请可以通过任何方式将所述坐标点集合划分为多个子集合并且每个子集合包括至少一个位置坐标点。

无论通过何种方式,例如通过中心点聚类、(中心点)分类、建筑物分类等,以将所述坐标点集合划分为多个子集合之后,每个子集合中的任意位置坐标点与所归属的子集合的中心点的直线距离小于与除所归属的子集合之外的其它任意子集合的中心点的直线距离。当任一子集合中的第一位置坐标点与所述任一子集合的中心点的直线距离大于与另一子集合的中心点的直线距离时,则将第一位置坐标点划分到所述另一子集合。即,每个子集合中的任意位置坐标点与所处于的子集合的中心点的直线距离小于与其它任意子集合的中心点的直线距离。例如,当第一子集合中的第一位置坐标点与第一子集合的中心点的直线距离大于与第二子集合的中心点的直线距离时,则将第一位置坐标点划分到第二子集合。

在本申请中,区域阈值为50个、100个或200个。在每个子集合中,至少一个位置坐标点被选择作为中心点,并且中心点能够是位置重合的多个位置坐标点,或者中心点能够是位置临近的多个位置坐标点。其中根据单个区域子集合来构建单个区域范围包括:计算中心点与所归属的单个区域子集合中其它位置坐标点中每个位置坐标点的直线距离;确定中心点与每个位置坐标点的直线距离中最长的直线距离;将以单个区域子集合内中心点为圆心并且以最长的直线距离的半径的圆形构建为单个区域范围。例如,其中根据第一区域子集合来构建第一区域范围包括:计算第一区域子集合的中心点与第一区域子集合中任意其它位置坐标点中每个位置坐标点的直线距离;确定第一区域子集合的中心点与每个位置坐标点的直线距离中最长的直线距离;将以第一区域子集合内中心点为圆心并且以最长的直线距离的半径的圆形构建为第一区域范围。

图2为根据本发明实施方式的排序列表200的逻辑示意图。如图2所示,居住地202是目标移动终端的用户所居住的区域范围,办公地203是目标移动终端的用户工作的区域范围并且餐厅204和205是目标移动终端的用户进行午餐的区域范围。在图2中,在区域范围内利用圆形来表示位置坐标点,其中实心圆形为被选择作为区域范围的中心点的位置坐标点,而空心圆形是未被选择作为区域范围的中心点的位置坐标点。在居住地202内,具有多个位置坐标点,其中位于中心的位置坐标点被选择作为中心点。居住地202的多个位置坐标点用于表示用户手持目标移动终端在居住地202(家中)所到达过的多个位置,例如,在卧室、在客厅。办公地203的多个位置坐标点用于表示用户手持目标移动终端在办公地203(家中)所到达过的多个位置,例如,在工作位、在会议室。在办公地203中,位于中心的三个位置坐标点被选择作为中心点。餐厅204和205的位置坐标点用于表示用户手持目标移动终端在餐厅中用餐的位置。在餐厅204和205中,位于中心的位置坐标点被选择作为中心点。

其中居住地202和办公地203之间的多个位置坐标点206用于指示目标移动终端的用户上班或下班所到达过的多个位置坐标点。应当了解的是,本申请以简单的路径来演示用户上班或下班所到达过的多个位置坐标点,而实际上,用户在上班或下班的路上可以途径不同的路径,并且在相同路径上有可能在不同的位置(例如,马路一侧或另一侧等)。同理,办公地203和餐厅204、205之间的多个位置坐标点用于指示目标移动终端的用户在去用餐或返回时所到达过的多个位置坐标点。如上所述,根据对位置坐标点的采集方式的不同,目标移动终端的多个位置坐标点可能会比较密集、重合、比较分散等。但坐标点集合内不存在与多个位置坐标点中任何单个位置坐标点的直线距离均大于5米、6米、8米或10米的位置坐标点,即坐标点集合内的任何位置坐标点均具有(位置上或时间上)临近的位置坐标点,并且(位置上或实践上)临近的位置坐标点之间的直线距离小于或等于5米、6米、8米、10米或任意合理距离。

无论通过何种方式,例如通过中心点聚类、(中心点)分类、建筑物分类等,以将所述坐标点集合划分为多个子集合之后,每个子集合中的任意位置坐标点与所归属的子集合的中心点的直线距离小于与除所归属的子集合之外的其它任意子集合的中心点的直线距离。当任一子集合中的第一位置坐标点与所述任一子集合的中心点的直线距离大于与另一子集合的中心点的直线距离时,则将第一位置坐标点划分到所述另一子集合。即,每个子集合中的任意位置坐标点与所处于的子集合的中心点的直线距离小于与其它任意子集合的中心点的直线距离。例如,当第一子集合中的第一位置坐标点与第一子集合的中心点的直线距离大于与第二子集合的中心点的直线距离时,则将第一位置坐标点划分到第二子集合。

在本申请中,区域阈值为50个、100个或200个。在每个子集合中,至少一个位置坐标点被选择作为中心点,并且中心点能够是位置重合的多个位置坐标点,或者中心点能够是位置临近的多个位置坐标点,例如办公地203中的情况。

在中心点能够是位置临近的多个位置坐标点的情况下,根据单个区域子集合来构建单个区域范围包括:将多个中心点的中心点确定为复合中心点;计算复合中心点与所归属的单个区域子集合中其它位置坐标点中每个位置坐标点的直线距离;确定复合中心点与每个位置坐标点的直线距离中最长的直线距离;将以单个区域子集合内复合中心点为圆心并且以最长的直线距离的半径的圆形构建为单个区域范围。例如,其中根据第一区域子集合来构建第一区域范围包括:计算第一区域子集合的复合中心点与第一区域子集合中任意其它位置坐标点中每个位置坐标点的直线距离;确定第一区域子集合的复合中心点与每个位置坐标点的直线距离中最长的直线距离;将以第一区域子集合内复合中心点为圆心并且以最长的直线距离的半径的圆形构建为第一区域范围。

排序装置703,对目标移动终端的当前位置进行监测,当确定目标移动终端的当前位置处于多个区域范围中的特定区域范围内的连续时间长度达到停留阈值时,根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率,并基于每个用户应用在特定区域范围内的运行概率对多个用户应用进行运行概率的降序排序以生成排序列表。

本申请利用定位部件(例如,gps部件或北斗部件)对目标移动终端的当前位置进行实时监测,确定目标移动终端的当前位置处于多个区域范围中的特定区域范围内的连续时间长度是否达到停留阈值。其中停留阈值为1分钟、5分钟、10分钟或15分钟。

当目标移动终端的当前位置处于多个区域范围中的特定区域范围内的连续时间长度达到停留阈值时,根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率包括:

选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日(例如,10个自然日,20个自然日,30个自然日);

对每个用户应用的运行统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在特定区域范围内运行的有效次数ci。例如当用户应用在特定区域范围(例如居住地202)内的运行时间超过60秒时,计为一次有效次数。例如,支付宝应用在10个自然日的每个自然日内在特定区域范围(例如居住地202)内的连续运行时间为50秒(运行未超过60秒)、120秒、0秒(未运行)、180秒、360秒、520秒、780秒、0秒(未运行)、55秒(运行未超过60秒)和600秒,那么支付宝应用的有效次数为0+1+0+1+1+1+1+0+0+1=6次。其中1≤i≤na,na为目标移动终端内用户应用的数量并且na大于4;

基于每个用户应用在统计日期区间内,在特定区域范围(例如居住地202)内的有效次数ci计算所有用户应用在特定区域范围内运行的总有效次数s:

计算每个用户应用在特定区域范围内的运行概率pi=ci/s。

例如,支付宝应用在10个自然日的特定区域范围(例如居住地202)运行6次、微信应用在10个自然日的特定区域范围(例如居住地202)运行10次、淘宝应用10个自然日的特定区域范围(例如居住地202)运行3次、王者荣耀在10个自然日的特定区域范围(例如居住地202)运行1次以及美团应用在10个自然日的特定区域范围(例如居住地202)运行0次,那么s=20次。支付宝、微信应用、淘宝应用、王者荣耀和美团应用在特定区域范围(例如居住地202)的运行概率分别是30%、50%、15%、5%和0%。

可替换地,其中根据每个用户应用的运行统计信息确定每个用户应用在特定区域范围内的运行概率包括:

选择用于确定运行概率的统计日期区间,所述统计日期区间包括至少10个自然日,(例如,10个自然日,20个自然日,30个自然日);

对每个用户应用的运行统计信息内多个数据项中的每个数据项进行解析,以确定在统计日期区间内,每个用户应用在在特定区域范围内运行的时间长度ti。支付宝应用在10个自然日的每个自然日内在特定区域范围(例如居住地202)内的运行时间为10秒、60秒、0秒、50秒、30秒、90秒、120秒、0秒、15秒和60秒,那么支付宝应用的时间长度为435秒。其中1≤i≤na,na为目标移动终端内用户应用的数量,并且na大于4;

基于每个用户应用在统计日期区间内,在特定区域范围(例如居住地202)内运行的时间长度ti计算所有用户应用在特定区域范围内运行的总时间长度t:

计算每个用户应用在特定区域范围内的运行概率pi=ti/t。

例如,支付宝应用在10个自然日的特定区域范围(例如居住地202)运行435秒、微信应用在10个自然日的特定区域范围(例如居住地202)运行875秒、淘宝应用10个自然日的特定区域范围(例如居住地202)运行500秒、王者荣耀在10个自然日的特定区域范围(例如居住地202)运行190秒以及美团应用在10个自然日的特定区域范围(例如居住地202)运行0秒,那么t=2000秒。支付宝、微信应用、淘宝应用、王者荣耀和美团应用在特定区域范围(例如居住地202)的运行概率分别是21.75%、43.75%、25%、9.5%和0%。

在图2所示的实例中,如表210所示,在从2018年6月1日至2018年6月10日的10个自然日内的特定区域范围(例如居住地202)内,王者荣耀的运行概率为18%、抖音短视频的运行概率为16%、优酷视频的运行概率为15%、手机淘宝的运行概率为13%、美团外卖的运行概率为10%、百度外卖的运行概率为9%、极品飞车的运行概率为7%、三国极无双的运行概率为6%以及懒人英语的运行概率为0%。

设置装置704用于根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的至少一个预取用户应用,并且根据所述排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别,其中所述存储级别包括:减量存储级、增量存储级、定量存储级和压缩存储级;根据每个预取用户应用的存储级别给为每个预取用户应用所分配的动态存储单元设置存储级别。

其中根据所述排序列表确定所述多个用户应用中能够被从第二存储器预先加载到第一存储器中的多个预取用户应用包括:当排序列表中运行概率大于预取阈值(例如,5%、10%)的用户应用的数量大于0(例如,10个)时,将排序列表中运行概率大于预取阈值的用户应用确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用;当排序列表中运行概率大于预取阈值(例如,5%、10%)的用户应用的数量等于0时,将排序列表中所有用户应用(例如,15个)确定为能够被从第二存储器预先加载到第一存储器中的预取用户应用,以确定至少一个预取用户应用。

其中根据排序列表为至少一个预取用户应用中每个预取用户应用设置存储级别包括:

将所述排序列表中运行概率大于高概率阈值(例如,15%)的预取用户应用的存储级别设置为减量存储级;

将所述排序列表中运行概率小于或等于高概率阈值(例如,15%)并且大于中概率阈值(例如,12%)的预取用户应用的存储级别设置为增量存储级;

将所述排序列表中运行概率小于或等于中概率阈值(例如,12%)并且大于低概率阈值(例如,8%)的预取用户应用的存储级别设置为定量存储级;

将所述排序列表中运行概率小于或等于低概率阈值(例如,8%)的预取用户应用的存储级别设置为压缩存储级。其中预取用户应用的运行概率均大于5%。

分配装置705用于为减量存储级的每个预取用户应用分配至少一个动态存储单元,为压缩存储级的每个预取用户应用分配至少一个动态存储单元,为增量存储级的每个预取用户应用分配一个动态存储单元并且为定量存储级的每个预取用户应用分配一个动态存储单元。其中为减量存储级的每个预取用户应用分配的至少一个动态存储单元中的每个动态存储单元的存储容量可以相同或不同,并且为压缩存储级的每个预取用户应用分配至少一个动态存储单元中的每个动态存储单元的存储容量可以相同或不同。

为每个减量存储级的预取用户应用所分配的至少一个动态存储单元的总存储容量能够容纳相应的减量存储级的预取用户应用的所有数据文件。为每个压缩存储级的预取用户应用所分配的至少一个动态存储单元的总存储容量能够容纳相应的压缩存储级的预取用户应用的所有经过压缩的数据文件。为增量存储级的每个预取用户应用所分配一个动态存储单元能够容纳相应的增量存储级的预取用户应用的所有数据文件。为定量存储级的每个预取用户应用所分配一个动态存储单元能够容纳相应的定量存储级的预取用户应用的所有数据文件。

预取装置706用于根据预取用户应用的存储级别将与每个预取用户应用相关联的数据文件从第二存储器进行数据预取,包括:

将与减量存储级的每个预取用户应用相关联的多个数据文件从第二存储器复制到为减量存储级的每个预取用户应用所分配的至少一个减量存储级的动态存储单元,在复制完成时为每个减量存储级的动态存储单元设置第一时间周期并开始计时,每当第一时间周期期满时在每个减量存储级的动态存储单元中删除第一预定数量的数据文件;

在与增量存储级的每个预取用户应用相关联的多个数据文件中选择至少一个基础数据文件,将增量存储级的每个预取用户应用的至少一个基础数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元,在复制完成时为增量存储级的动态存储单元设置第二时间周期并开始计时,其中每当第二时间周期期满时将与增量存储级的每个预取用户应用相关联的多个数据文件中第二预定数量的数据文件从第二存储器复制到为增量存储级的每个预取用户应用所分配的增量存储级的动态存储单元;

根据为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元的存储容量,从与定量存储级的每个预取用户应用相关联的多个数据文件选择至少一个数据文件,并且将所选择的至少一个数据文件从第二存储器复制到为定量存储级的每个预取用户应用所分配的定量存储级的动态存储单元;以及

将与压缩存储级的每个预取用户应用相关联的多个数据文件进行压缩以生成多个经过压缩的数据文件,将压缩存储级的每个预取用户应用的多个经过压缩的数据文件从第二存储器复制到为压缩存储级的每个预取用户应用所分配的至少一个压缩存储级的动态存储单元。

初始化装置707用于响应于用户发起的针对移动互联网内目标移动终端的与用户应用相关联的数据文件进行数据预取的数据预取请求,获取与所述数据预取相关联的动态配置文件;

在所述目标移动终端的第一存储器中创建动态索引区域,并且根据所述动态配置文件在第一存储器中创建用于存储数据文件的多个动态存储单元,其中根据所述动态配置文件确定所述多个动态存储单元中的每个动态存储单元的存储容量;以及

在所述动态索引区域中生成动态索引表,所述动态索引表包括多个索引项,每个索引项用于记录多个动态存储单元中的相应动态存储单元的应用标识、起始地址、结束地址、存储容量和存储级别。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1