CN108388665B - 一种查询获取到数据中新数据插入位置的方法 - Google Patents
一种查询获取到数据中新数据插入位置的方法 Download PDFInfo
- Publication number
- CN108388665B CN108388665B CN201810210207.XA CN201810210207A CN108388665B CN 108388665 B CN108388665 B CN 108388665B CN 201810210207 A CN201810210207 A CN 201810210207A CN 108388665 B CN108388665 B CN 108388665B
- Authority
- CN
- China
- Prior art keywords
- data
- marking
- check point
- last
- point
- 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
Images
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/2453—Query optimisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Image Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种查询获取到数据中新数据插入位置的方法,包含以下步骤:S1.获取在线数据;S2.对在线数据进行存储并标记;S3.等待一段时间;S4.检查数据插入情况,确定数据插入范围;S5.根据步骤S4获取到的数据插入范围,进行数据定向获取。本发明的查询获取到数据中新数据插入位置的方法,实现了查询到新插入的新数据位置的方法,进行定向获取新数据,从而提高了获取数据的效率,降低了数据的请求频率。
Description
技术领域
本发明涉及软件技术领域,特别涉及一种查询获取到数据中新数据插入位置的方法。
背景技术
在获取在线数据时,如果对于数据数量准确度要求较高,需要实时数据,则需要一直进行数据获取,更新的在线数据一般会按时间顺序和根据先进后出的原则排在之前数据的前面,这样也方便查询最新的数据。
但是如果有些数据由于数据发生的位置较远,不能实时更新到在线数据中,当更新到在线数据中后,根据数据产生的时间会插入到现有数据的中间,造成难以获取到这些数据,只能进行数据的全部获取,造成资源的浪费,以及不必要的数据请求,因此本发明时针对提高数据获取效率而产生。
发明内容
本发明的目的是克服上述背景技术中不足,提供一种查询获取到数据中新数据插入位置的方法,实现了查询到新插入的新数据位置的方法,进行定向获取新数据,从而提高了获取数据的效率,降低了数据的请求频率。
为了达到上述的技术效果,本发明采取以下技术方案:
一种查询获取到数据中新数据插入位置的方法,包含以下步骤:
S1.获取在线数据;
S2.对在线数据进行存储并标记;
S3.等待一段时间;
S4.检查数据插入情况,确定数据插入范围;
S5.根据步骤S4获取到的数据插入范围,进行数据定向获取。
进一步地,所述步骤S1具体为:对在线数据进行连续的数据更新统计,找出数据更新频率较低的时间段并在该时间段进行数据的全部获取,由于在数据获取完毕到数据标记完毕需要一定的时间,因此需要选择一个数据更新频率较低的时间进行,以保证当前获取的数据和下一步标记的数据源相同。
进一步地,所述步骤S2具体为:
S21.确定一个数据标记时的标记间隔,并根据标记间隔确定数据中的多个数据标记检验点;其中,该标记间隔既不能太大也不能太小,需要根据数据更新频率来确定,因为如果太大则容易造成返回的数据插入范围过大,降低获取数据的效率;太小则会造成数据标记时间过长,如果数据频繁进行更新,则难以完成一次数据标记,且该数据标记检验点的位置也要根据实际情况进行决定,不能过大,造成在标记的过程中由于数据的频繁新增,造成需要一直重新标记;也不能太小,造成标记数据速度太慢;
S22.从当前数据统计周期的第一条开始进行数据标记,如果一条数据有多个字段,则选择不重复的字段作为标记数据。
进一步地,所述步骤S4具体为:
S41.获取当前在线数据的总数量和所述步骤S21中确定的最后一个数据标记检验点,确定该标记点在当前在线数据的理论位置;
S42.查询该理论位置上的数据,并和最后一个数据标记检验点做比较,如果相同,则确定当前没有新的数据插入;否则,查询数据中最后一个数据标记检验点的实际位置,并记录其理论位置和实际位置的差值,进入步骤S43;
S43.计算倒数第二个数据标记检验点在当前在线数据的理论位置,并查询该理论位置的数据,再将该理论位置的数据来和倒数第二个数据标记检验点做比较;
如果相同,则证明最后一个数据标记检验点到倒数第二个数据标记检验点之间有数据插入,则返回最后一个数据标记检验点,记录出现位置偏移的点和偏移量;
如果不同,则继续参照上述方式查询倒数第三个数据标记检验点,并以此类推,直至查询完所有数据标记检验点,得到一个或多个新数据插入的范围;
S44.记录第一个数据标记检验点的偏移量和不同于第一个数据标记检验点且不重复的数据标记检验点的偏移量。
进一步地,在所述步骤S4中检查数据插入情况时,需要每检查一定数量的数据后,就要获取一次总数据量,如果总数据量发生变化,则需要根据新的总数据量进行检查,以确保检查结果的正确性。
进一步地,所述步骤S5具体为:
S51.根据步骤S43获取到的数据插入范围,进行定向数据获取,其中,具体的定向数据获取的范围是以设置的数据标记间隔大小,进行数据获取,其中缺失的数据数量就是出现理论位置和实际位置不符点的位置差值,如有多个差值,则两个差值之间的差值就是指定范围内数据的插入数量;
S52.在数据定向获取完毕之后,再次进行数据标记,为下一次检查做准备。
本发明与现有技术相比,具有以下的有益效果:
通过本发明的查询获取到数据中新数据插入位置的方法可有效解决现有技术中大量在线数据中有新数据插入其中时,只能对全部数据进行获取,造成大量资源浪费和过多数据请求的问题,实现通过查询到新插入的新数据位置的方法,进行定向获取新数据,从而提高了获取数据的效率,降低了数据的请求频率。
附图说明
图1是本发明查询获取到数据中新数据插入位置的方法的流程示意图。
具体实施方式
下面结合本发明的实施例对本发明作进一步的阐述和说明。
实施例:
实施例一:
如图1所示,一种查询获取到数据中新数据插入位置的方法,包含以下步骤:
S1.获取在线数据:
具体为:对在线数据进行连续的数据更新统计,找出数据更新频率较低的时间段并在该时间段进行数据的全部获取,由于在数据获取完毕到数据标记完毕需要一定的时间,因此需要选择一个数据更新频率较低的时间进行,以保证当前获取的数据和下一步标记的数据源相同。
S2.对在线数据进行存储并标记;具体包括:
S21.确定一个数据标记时的标记间隔,并根据标记间隔确定数据中的多个数据标记检验点;其中,该标记间隔既不能太大也不能太小,需要根据数据更新频率来确定,因为如果太大则容易造成返回的数据插入范围过大,降低获取数据的效率;太小则会造成数据标记时间过长,如果数据频繁进行更新,则难以完成一次数据标记,且该数据标记检验点的位置也要根据实际情况进行决定,不能过大,造成在标记的过程中由于数据的频繁新增,造成需要一直重新标记;也不能太小,造成标记数据速度太慢;
S22.从当前数据统计周期的第一条开始进行数据标记,如果一条数据有多个字段,则选择不重复的字段作为标记数据。
S3.等待一段时间;
由于数据的频繁更新会影响数据标记和数据检验的速度,因此需要选择一个数据更新频率相对较低的时间段来进行,具体可以对在线数据进行连续的数据更新统计,找出数据更新频率较低的时间段。
S4.检查数据插入情况,确定数据插入范围;具体包括:
S41.获取当前在线数据的总数量和所述步骤S21中确定的最后一个数据标记检验点,确定该标记点在当前在线数据的理论位置;
S42.查询该理论位置上的数据,并和最后一个数据标记检验点做比较,如果相同,则确定当前没有新的数据插入;否则,查询数据中最后一个数据标记检验点的实际位置,并记录其理论位置和实际位置的差值,进入步骤S43;
S43.计算倒数第二个数据标记检验点在当前在线数据的理论位置,并查询该理论位置的数据,再将该理论位置的数据来和倒数第二个数据标记检验点做比较;
如果相同,则证明最后一个数据标记检验点到倒数第二个数据标记检验点之间有数据插入,则返回最后一个数据标记检验点,记录出现位置偏移的点和偏移量;
如果不同,则继续参照上述方式查询倒数第三个数据标记检验点,并以此类推,直至查询完所有数据标记检验点,得到一个或多个新数据插入的范围;
S44.记录第一个数据标记检验点的偏移量和不同于第一个数据标记检验点且不重复的数据标记检验点的偏移量。
其中,在检查数据插入情况时,需要每检查一定数量的数据后,就要获取一次总数据量,如果总数据量发生变化,则需要根据新的总数据量进行检查,以确保检查结果的正确性。
S5.根据步骤S4获取到的数据插入范围,进行数据定向获取,具体包括:
S51.根据步骤S43获取到的数据插入范围,进行定向数据获取,其中,具体的定向数据获取的范围是以设置的数据标记间隔大小,进行数据获取,其中缺失的数据数量就是出现理论位置和实际位置不符点的位置差值,如有多个差值,则两个差值之间的差值就是指定范围内数据的插入数量;
S52.在数据定向获取完毕之后,再次进行数据标记,为下一次检查做准备。
举一个具体的例子,某在线数据由于一些原因,该在线数据在更新时可能会将新数据插入到之前的数据中,此时需要利用本方法进行查询数据插入的位置。
在3月10日时该在线数据的数据总量为3500条,设置标记间隔为100,则共标记了35个标记点,且位置分别位于第1,101,201,...,3301,3401点处;
等待一段时间后,在3月20数据量增加至4200条,其中插入的数据的位置位于之前数据的第1505和1506条之间,开始进行检查数据插入情况,如果没有数据插入,则根据当前数据总量计算出之前的第35个标记点对应到当前的位置为第3401条,但是该条数据和之前记录的不同,因此确定出现了数据插入情况。
向数据增加的方向进行寻找,发现之前的标记的数据在当前总数据的位置为第3402,判断插入了1条数据,开始向数据增加的反方向进行查询,查询到第34个标记点的实际位置为3302,第33个标记点的实际位置为3202,…,一直查询到第17个标记点的实际位置为1602,而第16个标记点的位置为1501,和之前记录的相同,判断出新插入的数据在当前总数据的位置为401到502之间。
因此,使用本发明的方法只需要获取这102条数据即可,而不需要获取3501-1505=1996(数据获取方向从最新的一条开始)或1506(数据获取方向从最早的一条开始)条数据,可极大的提升数据获取的效率。
由于在检查数据插入情况时总数据的变化会造成查询标记点的准确位置错误,因此每隔若干个点会检查一次总数据的变化情况,而一旦监测到总数据量发生变化,则需要重新进行数据检查,降低了检查效率。为了减少因数据总量的增加而造成数据检查效率的降低,因此本发明的数据检查方法需要在在线数据更新频率较低的时间段进行。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
Claims (2)
1.一种查询获取到数据中新数据插入位置的方法,其特征在于,包含以下步骤:
S1.获取在线数据;对在线数据进行连续的数据更新统计,找出数据更新频率低的时间段并在该时间段进行数据的全部获取;
S2.对在线数据进行存储并标记;
S21.确定一个数据标记时的标记间隔,并根据标记间隔确定数据中的多个数据标记检验点;
S22. 从当前数据统计周期的第一条开始进行数据标记,如果一条数据有多个字段,则选择不重复的字段作为标记数据;
S3.等待一段时间;
S4.检查数据插入情况,确定数据插入范围;
S41. 获取当前在线数据的总数量和所述步骤S21中确定的最后一个数据标记检验点,确定该标记点在当前在线数据的理论位置;
S42. 查询该理论位置上的数据,并和最后一个数据标记检验点做比较,如果相同,则确定当前没有新的数据插入;否则,查询数据中最后一个数据标记检验点的实际位置,并记录其理论位置和实际位置的差值,进入步骤S43;
S43. 计算倒数第二个数据标记检验点在当前在线数据的理论位置,并查询该理论位置的数据,再将该理论位置的数据来和倒数第二个数据标记检验点做比较;
如果相同,则证明最后一个数据标记检验点到倒数第二个数据标记检验点之间有数据插入,则返回最后一个数据标记检验点,记录出现位置偏移的点和偏移量;
如果不同,则继续倒数第三个数据标记检验点的查询、比较和判断,并以此类推,直至完成所有数据标记检验点的检查,得到一个或多个新数据插入的范围;
S44.记录第一个数据标记检验点的偏移量和不同于第一个数据标记检验点且不重复的数据标记检验点的偏移量;
S5. 根据步骤S4获取到的数据插入范围,进行数据定向获取;
S51.根据步骤S43获取到的数据插入范围,进行定向数据获取,其中,具体的定向数据获取的范围是以设置的数据标记间隔大小,进行数据获取,其中缺失的数据数量就是出现理论位置和实际位置不符点的位置差值,如有多个差值,则两个差值之间的差值就是指定范围内数据的插入数量;
S52.在数据定向获取完毕之后,再次进行数据标记,为下一次检查做准备。
2.根据权利要求1所述的一种查询获取到数据中新数据插入位置的方法,其特征在于,在所述步骤S4中检查数据插入情况时,需要每检查一定数量的数据后,就要获取一次总数据量,如果总数据量发生变化,则需要根据新的总数据量进行检查,以确保检查结果的正确性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810210207.XA CN108388665B (zh) | 2018-03-14 | 2018-03-14 | 一种查询获取到数据中新数据插入位置的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810210207.XA CN108388665B (zh) | 2018-03-14 | 2018-03-14 | 一种查询获取到数据中新数据插入位置的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108388665A CN108388665A (zh) | 2018-08-10 |
CN108388665B true CN108388665B (zh) | 2021-06-22 |
Family
ID=63067342
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810210207.XA Active CN108388665B (zh) | 2018-03-14 | 2018-03-14 | 一种查询获取到数据中新数据插入位置的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108388665B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605805A (zh) * | 2013-12-09 | 2014-02-26 | 冶金自动化研究设计院 | 一种海量时序数据的存储方法 |
CN106407190A (zh) * | 2015-07-27 | 2017-02-15 | 阿里巴巴集团控股有限公司 | 一种事件记录查询方法及装置 |
US9760672B1 (en) * | 2014-12-22 | 2017-09-12 | Qualcomm Incorporated | Circuitry and method for critical path timing speculation to enable process variation compensation via voltage scaling |
CN107301211A (zh) * | 2017-06-07 | 2017-10-27 | 四川科库科技有限公司 | 一种在线数据处理方法 |
-
2018
- 2018-03-14 CN CN201810210207.XA patent/CN108388665B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103605805A (zh) * | 2013-12-09 | 2014-02-26 | 冶金自动化研究设计院 | 一种海量时序数据的存储方法 |
US9760672B1 (en) * | 2014-12-22 | 2017-09-12 | Qualcomm Incorporated | Circuitry and method for critical path timing speculation to enable process variation compensation via voltage scaling |
CN106407190A (zh) * | 2015-07-27 | 2017-02-15 | 阿里巴巴集团控股有限公司 | 一种事件记录查询方法及装置 |
CN107301211A (zh) * | 2017-06-07 | 2017-10-27 | 四川科库科技有限公司 | 一种在线数据处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108388665A (zh) | 2018-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109215338B (zh) | 一种基于网格化的北斗gps车辆轨迹管理系统及其方法 | |
JP2017076387A5 (zh) | ||
CN105138635A (zh) | 一种利用哈希值比对进行数据增量复制的方法 | |
CN111061758B (zh) | 数据存储方法、装置及存储介质 | |
CN105468662B (zh) | 一种基于表码值的能耗数据处理方法和系统 | |
US20160179889A1 (en) | Caching methods and a system for entropy-based cardinality estimation | |
CN111681261A (zh) | 一种基于动作定位的甘特图处理方法、系统和存储介质 | |
CN106844290B (zh) | 一种基于曲线拟合的时序数据处理方法 | |
CN108388665B (zh) | 一种查询获取到数据中新数据插入位置的方法 | |
CN114116795B (zh) | 一种数据存储和查询方法、装置、存储介质及电子设备 | |
CN107491458B (zh) | 一种存储时间序列数据的方法和装置以及系统 | |
CN104572778A (zh) | 一种业务数据库查询统计方法 | |
CN104618922A (zh) | 一种rtt测量定位系统中的测量结果匹配方法和装置 | |
CN114048238B (zh) | 工业设备时序数据的存储方法、装置和电子设备 | |
CN112445835B (zh) | 一种业务数据处理方法及装置、网管服务器、存储介质 | |
CN112825268B (zh) | 测序结果比对方法及其应用 | |
CN113129438B (zh) | 一种车道线的精度提升方法、装置及可读存储介质 | |
CN112561388A (zh) | 一种基于物联网的信息处理方法、装置及设备 | |
CN105513365A (zh) | 基于等时定位监测的道路通行时间估计系统 | |
CN110309141B (zh) | 一种直播间数据量统计方法、存储介质、设备及系统 | |
CN115578080B (zh) | 基于信息化系统造价基准库工作量核定方法 | |
CN113742326B (zh) | 功率优化器及其功率缺失值填充方法、装置 | |
CN103793339A (zh) | 基于内存访问堆栈距离的数据Cache性能探索方法 | |
CN111190930B (zh) | 融合哈希和分块的消防设备历史数据定位系统及定位方法 | |
CN115062270B (zh) | 基于最大似然的缺失值填充的传感器数据处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |