[发明专利]大数据的非精准排序方法在审
| 申请号: | 201810192740.8 | 申请日: | 2018-03-09 |
| 公开(公告)号: | CN108416025A | 公开(公告)日: | 2018-08-17 |
| 发明(设计)人: | 李凌瑶;张业岭;蒋可安;张菁菁;王宁骏;胡天然 | 申请(专利权)人: | 王宁骏;张菁菁;胡天然;张业岭;蒋可安;李凌瑶 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 上海骁象知识产权代理有限公司 31315 | 代理人: | 林炜 |
| 地址: | 200233 上海市*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数组 样本 目标数据库 频数 排序 目标数据 大数据 构建 海量数据检索 数据处理技术 计算目标 排列位置 排序结果 排序位置 数组记录 参考 段数据 截取 查询 场景 检测 优化 | ||
一种大数据的非精准排序方法,涉及数据处理技术领域,所解决的是海量数据检索的技术问题。该方法从目标数据库中随机截取一段数据样本,再根据样本构建样本值数组、样本频数数组,利用样本值数组存放样本的参考数值,利用样本频数数组记录各个参考数值的出现频率;并对样本值数组及样本频数数组进行优化;然后再构建一个累计值数组,并根据样本频数数组为累计值数组赋值;然后利用样本值数组检测待排序的目标数据在目标数据库中的排列位置,根据累计值数组中的对应元素,计算目标数据在目标数据库中的排序百分比值,从而得出目标数据在目标数据库中的排序位置。本发明提供的方法,适用于不需要精确查询排序结果的场景。
技术领域
本发明涉及数据处理的技术,特别是涉及一种大数据的非精准排序方法的技术。
背景技术
在某些场合中,对海量数据进行排序并不需要很精准的排序结果(比如,查询一个数据在海量数据中的大致位置),以较小的代价实现非精准的排序可以快速得到查询结果。
但是,常规的数值排序方法都是严格的比较数值大小,按照一定顺序排列,采用常规的数值排序方法对海量数据进行排序需要开辟较大的缓存和较多的计算时间,花费的代价是巨大的,需要大量硬件投资来保证查询结果的实现。
发明内容
针对上述现有技术中存在的缺陷,本发明所要解决的技术问题是提供一种计算时间短,且硬件投资成本低的大数据的非精准排序方法。
为了解决上述技术问题,本发明所提供的一种大数据的非精准排序方法,其特征在于,具体步骤如下:
1)从目标数据库中随机截取一段包含有N个数据的数据样本Y,并设定一个计算精度α,1E+8<N<1E+10,1E-6≤α≤1E-4;
2)令m等于1/α的整数部分;
3)构建一个m维的样本值数组Lv,为样本值数组Lv中的每个元素赋值,赋值计算公式为:
Lv(i)=Vmin+i×(Vmax-Vmin)/m
其中,Lv(i)为样本值数组Lv中的第i个元素,Vmax为数据样本Y中的数据最大值,Vmin为数据样本Y中的数据最小值,0<i≤m;;
4)构建一个m维的样本频数数组Ln,为样本频数数组Ln中的每个元素赋值,赋值方法为:统计数据样本Y中的大于Lv(i)并且小于Lv(i+1)的数据的数量,并将统计的数量值赋给Ln(i);
其中,Ln(i)为样本频数数组Ln中的第i个元素,Lv(i)为样本值数组Lv中的第i个元素,Lv(i+1)为Lv(i)后序相邻的元素;
5)按照规则A、规则B优化样本值数组Lv及样本频数数组Ln,直到样本频数数组Ln中的所有元素都不满足规则A,并且也不满足规则B;
规则A:对于样本频数数组Ln中的任意一个元素Ln(i),如果Ln(i)<η×N/m,则令令N=N-Ln(i)/2,令m=m-1,并删除样本值数组Lv中的第i个元素Lv(i),并删除样本频数数组Ln中的第i个元素Ln(i),η的取值为0.1;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于王宁骏;张菁菁;胡天然;张业岭;蒋可安;李凌瑶,未经王宁骏;张菁菁;胡天然;张业岭;蒋可安;李凌瑶许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810192740.8/2.html,转载请声明来源钻瓜专利网。





