CN108460137B - 一种基于合并偏差门限的范围查询数据分片优化方法 - Google Patents

一种基于合并偏差门限的范围查询数据分片优化方法 Download PDF

Info

Publication number
CN108460137B
CN108460137B CN201810195004.8A CN201810195004A CN108460137B CN 108460137 B CN108460137 B CN 108460137B CN 201810195004 A CN201810195004 A CN 201810195004A CN 108460137 B CN108460137 B CN 108460137B
Authority
CN
China
Prior art keywords
data
query
cost
deviation
cumulative probability
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.)
Expired - Fee Related
Application number
CN201810195004.8A
Other languages
English (en)
Other versions
CN108460137A (zh
Inventor
葛微
李先贤
王金艳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangxi Normal University
Original Assignee
Guangxi Normal University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangxi Normal University filed Critical Guangxi Normal University
Priority to CN201810195004.8A priority Critical patent/CN108460137B/zh
Publication of CN108460137A publication Critical patent/CN108460137A/zh
Application granted granted Critical
Publication of CN108460137B publication Critical patent/CN108460137B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query 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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于合并偏差门限的范围查询数据分片优化方法,其特征是,包括如下步骤:1)建立范围查询负载下的数据访问概率模型;2)定义最优分片方案;3)切分出第一个数据片;4)试探合并下一段数据片,并计算合并带来的代价偏差;5)跳转到步骤4),循环执行数据片合并,直到剩余数据片个数达到K为止,K是分片的数据片个数。这种方法能降低数据的管理维护开销、以及数据查询中的定位寻址代价和传输代价、提高查询效率。

Description

一种基于合并偏差门限的范围查询数据分片优化方法
技术领域
本发明涉及面向大数据上范围查询的数据分片优化技术,具体是一种基于合并偏差门限的范围查询数据分片优化方法。
背景技术
在面对范围查询需求时,我们需要感知范围查询的访问模式,并基于此为数据分片,将访问模式下关联性强的数据划分成一个数据片。这个“定制边界”的数据片在被范围查询访问时会被全部或大比率命中,大大降低数据定位寻址开销和传输开销,从而提高查询效率。
为了获得最优的范围查询性能,为数据划分切片的最优分片位置一定是在范围查询的边界上。因为从来没有被范围查询分割开的相邻数据,一定会在每次查询中都被范围查询同时命中,那么他们也不应该被数据分片切割开。
发明内容
本发明的目的是针对现有技术的不足,而提供一种基于合并偏差门限的范围查询数据分片优化方法。这种方法能降低数据的管理维护开销、以及数据查询中的定位寻址代价和传输代价、提高查询效率。
实现本发明的目的的技术方案是:
一种基于合并偏差门限的范围查询数据分片优化方法,与现有技术不同的是,包括如下步骤:
1)建立范围查询负载下的数据访问概率模型:定义数据集上范围查询的所有边界组成的集合叫做范围查询边界集,在基于记录的数据组织方式下,一条数据记录的查询累积概率=数据记录被查询负载访问的次数/总查询次数,在基于数据片的数据组织方式下,定义第
Figure DEST_PATH_IMAGE002
个数据片
Figure DEST_PATH_IMAGE004
的长度为
Figure DEST_PATH_IMAGE006
,数据片
Figure DEST_PATH_IMAGE004A
上的查询累积概率为
Figure DEST_PATH_IMAGE009
,由于对数据片
Figure DEST_PATH_IMAGE004AA
上任意记录的访问都体现为对数据片
Figure DEST_PATH_IMAGE004AAA
的访问,因此数据片
Figure DEST_PATH_IMAGE004AAAA
查询累积概率
Figure DEST_PATH_IMAGE009A
取值为
Figure DEST_PATH_IMAGE004AAAAA
所含数据记录的查询累积概率的最大值,数据片
Figure DEST_PATH_IMAGE004AAAAAA
上的查询代价表示为:
Figure DEST_PATH_IMAGE004AAAAAAA
上的查询代价 = 定位寻址代价 + 数据传输代价
= 磁盘每次定位寻址代价
Figure DEST_PATH_IMAGE018
×
Figure 100002_DEST_PATH_IMAGE004AAAAAAAA
的查询累积概率
Figure DEST_PATH_IMAGE009AA
+数据片的长度
Figure DEST_PATH_IMAGE006A
×每字节数据的传输代价 ×
Figure 100002_DEST_PATH_IMAGE004AAAAAAAAA
的查询累积概率
Figure DEST_PATH_IMAGE009AAA
,由于数据分片后,可能存在查询“误命中”的情况,即片内部分数据不是查询结果集,但会被访问的情况,这就带来了额外的传输开销,定义这部分额外的传输开销叫做代价偏差,数据的分片粒度越粗,则数据查询的定位寻址代价越小,而数据传输代价偏差越大,导致数据传输代价越大,反之亦然,数据的分片粒度越细,则数据查询的定位寻址代价越大,数据传输代价越小,也就是说,定位寻址代价和数据传输代价是两个互相制约的指标,因此在倾斜范围查询工作负载下,数据分片问题是一个最优化问题;
2)定义最优分片方案:有N个关键字的数据集X,定义它的最优
Figure DEST_PATH_IMAGE025
-分片方案中第
Figure DEST_PATH_IMAGE027
分片为
Figure DEST_PATH_IMAGE029
,第
Figure DEST_PATH_IMAGE031
分片为
Figure DEST_PATH_IMAGE033
,因为这样的划分方式是最优分片方案,因此,如果调整数据分片的边界,将
Figure DEST_PATH_IMAGE035
中的
Figure DEST_PATH_IMAGE037
调整到
Figure DEST_PATH_IMAGE039
数据片中,就会增加数据查询的代价,也就是说,数据在经过最优分片后,分片代价偏差受到相邻分片的约束,当各分片的代价偏差趋近于相等的时候,总的代价偏差最小。
3)切分出第一个数据片:定义范围查询边界集为
Figure DEST_PATH_IMAGE041
,其基数为B,将集合中的元素排序,得到
Figure DEST_PATH_IMAGE043
,那么第一个数据片为
Figure DEST_PATH_IMAGE045
4)试探合并下一段数据片,并计算合并带来的代价偏差:
(1)将下一个数据初始化为下一个分片,并开始向后循环合并,如果合并后分片带来的代价偏差大于门限T时,放弃合并,则原分片是最优数据片;
(2)如果合并后分片带来的代价偏差不大于门限T时,则开始向后循环合并;
5)跳转到步骤4),循环执行数据片合并,直到数据片个数达到
Figure DEST_PATH_IMAGE047
为止,
Figure DEST_PATH_IMAGE047A
是分片的数据片个数。
为数据做分片并以数据片管理数据,可以最大程度地降低数据的管理维护开销,最优分片可以得到最优的数据查询代价,从而提高查询效率。
本技术方案可以快速高效地完成数据分片,它不用考虑全局最优性,以最高效的方式,在保证每个数据片的分片代价偏差不高于门限T的情况下快速完成数据分片。
这种方法能降低数据的管理维护开销、以及数据查询中的定位寻址代价和传输代价、提高查询效率。
附图说明
图1为实施例中的数据分片产生的代价偏差示意图。
具体实施方式
下面结合附图和实施例对本发明内容作进一步的阐述,但不是对本发明的限定。
实施例:
一种基于合并偏差门限的范围查询数据分片优化方法,与现有技术不同的是,包括如下步骤:
1)建立范围查询负载下的数据访问概率模型:定义数据集上范围查询的所有边界组成的集合叫做范围查询边界集,在基于记录的数据组织方式下,一条数据记录的查询累积概率=数据记录被查询负载访问的次数/总查询次数,在基于数据片的数据组织方式下,定义第
Figure 100002_DEST_PATH_IMAGE002A
个数据片
Figure 100002_DEST_PATH_IMAGE004AAAAAAAAAA
的长度为
Figure 100002_DEST_PATH_IMAGE006AA
,数据片
Figure 100002_DEST_PATH_IMAGE004AAAAAAAAAAA
上的查询累积概率为
Figure 100002_DEST_PATH_IMAGE009AAAA
,由于对数据片
Figure 100002_DEST_PATH_IMAGE004AAAAAAAAAAAA
上任意记录的访问都体现为对数据片
Figure 100002_DEST_PATH_IMAGE004AAAAAAAAAAAAA
的访问,因此数据片
Figure 100002_DEST_PATH_IMAGE004AAAAAAAAAAAAAA
查询累积概率
Figure 100002_DEST_PATH_IMAGE009AAAAA
取值为
Figure 100002_DEST_PATH_IMAGE004AAAAAAAAAAAAAAA
所含数据记录的查询累积概率的最大值,数据片
Figure DEST_PATH_IMAGE004AAAAAAAAAAAAAAAA
上的查询代价表示为:
Figure DEST_PATH_IMAGE004AAAAAAAAAAAAAAAAA
上的查询代价 = 定位寻址代价 + 数据传输代价
= 磁盘每次定位寻址代价
Figure DEST_PATH_IMAGE018A
×
Figure DEST_PATH_IMAGE004AAAAAAAAAAAAAAAAAA
的查询累积概率
Figure 100002_DEST_PATH_IMAGE009AAAAAA
+数据片的长度
Figure 100002_DEST_PATH_IMAGE006AAA
×每字节数据的传输代价 ×
Figure DEST_PATH_IMAGE004AAAAAAAAAAAAAAAAAAA
的查询累积概率
Figure 100002_DEST_PATH_IMAGE009AAAAAAA
,由于数据分片后,可能存在查询“误命中”的情况,即片内部分数据不是查询结果集,但会被访问的情况,这就带来了额外的传输开销,定义这部分额外的传输开销叫做代价偏差,数据的分片粒度越粗,则数据查询的定位寻址代价越小,而数据传输代价偏差越大,导致数据传输代价越大,反之亦然,数据的分片粒度越细,则数据查询的定位寻址代价越大,数据传输代价越小,也就是说,定位寻址代价和数据传输代价是两个互相制约的指标,因此在倾斜范围查询工作负载下,数据分片问题是一个最优化问题;
2)定义最优分片方案:有N个关键字的数据集X,定义它的最优
Figure 100002_DEST_PATH_IMAGE025A
-分片方案中第
Figure 100002_DEST_PATH_IMAGE027A
分片为
Figure 100002_DEST_PATH_IMAGE029A
,第
Figure 100002_DEST_PATH_IMAGE031A
分片为
Figure 100002_DEST_PATH_IMAGE033A
,因为这样的划分方式是最优分片方案,因此,如果调整数据分片的边界,将
Figure 100002_DEST_PATH_IMAGE035A
中的
Figure 100002_DEST_PATH_IMAGE037A
调整到
Figure DEST_PATH_IMAGE039A
数据片中,就会增加数据查询的代价,也就是说,数据在经过最优分片后,分片代价偏差受到相邻分片的约束,当各分片的代价偏差趋近于相等的时候,总的代价偏差最小。
3)切分出第一个数据片:定义范围查询边界集为
Figure DEST_PATH_IMAGE041A
,其基数为B,将集合中的元素排序,得到
Figure DEST_PATH_IMAGE043A
,那么第一个数据片为
Figure DEST_PATH_IMAGE045A
4)试探合并下一段数据片,并计算合并带来的代价偏差:
(1)将下一个数据初始化为下一个分片,并开始向后循环合并,如果合并后分片带来的代价偏差大于门限T时,放弃合并,则原分片是最优数据片;
(2)如果合并后分片带来的代价偏差不大于门限T时,则开始向后循环合并;
如图1所示,图1中阴影部分表示代价偏差,例如
Figure DEST_PATH_IMAGE079
的下一段数据为
Figure DEST_PATH_IMAGE081
,并计算合并带来的代价偏差:
(1)如果合并后分片
Figure DEST_PATH_IMAGE083
带来的代价偏差大于门限T时,放弃合并,则
Figure DEST_PATH_IMAGE079A
是第一个最优数据片,第二个分片初始化为
Figure DEST_PATH_IMAGE081A
,并开始向下试探合并;
(2)如果合并后分片带来的代价偏差不大于门限T时,可以合并
Figure DEST_PATH_IMAGE079AA
Figure DEST_PATH_IMAGE081AA
Figure DEST_PATH_IMAGE083A
,继续试探合并下一段数据
Figure DEST_PATH_IMAGE090
5)跳转到步骤4),循环执行数据片合并,直到数据片个数达到
Figure DEST_PATH_IMAGE047AA
为止,
Figure DEST_PATH_IMAGE047AAA
是分片的数据片个数。
本例中,代价偏差门限T的取值依据为:
数据被划分成数据片后,数据片上的查询累积概率分布是对范围查询累积概率分布的拟合,这个拟合是有偏差的,称为拟合代价偏差,它增加了数据片上的范围查询代价。如图1中的阴影部分面积就是数据分片带来的最大拟合代价偏差,它可以表示为
Figure DEST_PATH_IMAGE094
,其中,P max 是数据集上查询累积概率的最大值,P(x)是数据集上的查询分布概率密度函数;
当各分片的代价偏差趋近于相等的时候,总的代价偏差最小,因此得出每个数据分片的最大代价偏差门限T为:
Figure DEST_PATH_IMAGE096
设定了合适的门限T后,数据分片可以在门限T的限定下局部最优分片,分片的效率大大提高。

Claims (1)

1.一种基于合并偏差门限的范围查询数据分片优化方法,其特征是,包括如下步骤:
1)建立范围查询负载下的数据访问概率模型:定义数据集上范围查询的所有边界组成的集合叫做范围查询边界集,在基于记录的数据组织方式下,一条数据记录的查询累积概率=数据记录被查询负载访问的次数/总查询次数,在基于数据片的数据组织方式下,定义第
Figure DEST_PATH_IMAGE002A
个数据片
Figure DEST_PATH_IMAGE004AAAAAAAA
的长度为
Figure DEST_PATH_IMAGE006AA
,数据片
Figure DEST_PATH_IMAGE004AAAAAAAAA
上的查询累积概率为
Figure DEST_PATH_IMAGE009AAAA
,数据片
Figure DEST_PATH_IMAGE004AAAAAAAAAA
查询累积概率
Figure DEST_PATH_IMAGE009AAAAA
取值为
Figure DEST_PATH_IMAGE004AAAAAAAAAAA
所含数据记录的查询累积概率的最大值,数据片
Figure DEST_PATH_IMAGE004AAAAAAAAAAAA
上的查询代价表示为:
Figure DEST_PATH_IMAGE004AAAAAAAAAAAAA
上的查询代价 = 定位寻址代价 + 数据传输代价
= 磁盘每次定位寻址代价
Figure DEST_PATH_IMAGE016A
×
Figure DEST_PATH_IMAGE004AAAAAAAAAAAAAA
的查询累积概率
Figure DEST_PATH_IMAGE009AAAAAA
+数据片的长度
Figure DEST_PATH_IMAGE006AAA
× 每字节数据的传输代价 ×
Figure DEST_PATH_IMAGE004AAAAAAAAAAAAAAA
的查询累积概率
Figure DEST_PATH_IMAGE009AAAAAAA
,数据分片后,存在查询“误命中”的情况,即片内部分数据不是查询结果集,但会被访问的情况,带来了额外的传输开销,定义这部分额外的传输开销叫做代价偏差;
2)定义最优分片方案:有N个关键字的数据集X,定义它的最优
Figure DEST_PATH_IMAGE023A
-分片方案中第
Figure DEST_PATH_IMAGE025A
分片为
Figure DEST_PATH_IMAGE027A
,第
Figure DEST_PATH_IMAGE029A
分片为
Figure DEST_PATH_IMAGE031A
3)切分出第一个数据片:定义范围查询边界集为
Figure DEST_PATH_IMAGE033A
,其基数为B,将集合中的元素排序,得到
Figure DEST_PATH_IMAGE035A
,那么第一个数据片为
Figure DEST_PATH_IMAGE037A
4)试探合并下一段数据片,并计算合并带来的代价偏差:
(1)将下一个数据初始化为下一个分片,并开始向后循环合并,如果合并后分片带来的代价偏差大于门限T时,放弃合并,则原分片是最优数据片;
(2)如果合并后分片带来的代价偏差不大于门限T时,则开始向后循环合并;
5)跳转到步骤4),循环执行数据片合并,直到数据片个数达到
Figure DEST_PATH_IMAGE039AA
为止,
Figure DEST_PATH_IMAGE039AAA
是分片的数据片个数。
CN201810195004.8A 2018-03-09 2018-03-09 一种基于合并偏差门限的范围查询数据分片优化方法 Expired - Fee Related CN108460137B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810195004.8A CN108460137B (zh) 2018-03-09 2018-03-09 一种基于合并偏差门限的范围查询数据分片优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810195004.8A CN108460137B (zh) 2018-03-09 2018-03-09 一种基于合并偏差门限的范围查询数据分片优化方法

Publications (2)

Publication Number Publication Date
CN108460137A CN108460137A (zh) 2018-08-28
CN108460137B true CN108460137B (zh) 2021-07-20

Family

ID=63217402

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810195004.8A Expired - Fee Related CN108460137B (zh) 2018-03-09 2018-03-09 一种基于合并偏差门限的范围查询数据分片优化方法

Country Status (1)

Country Link
CN (1) CN108460137B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1920822A (zh) * 2006-09-14 2007-02-28 浙江大学 交互式书法字k近邻查询方法
CN103942289A (zh) * 2014-04-12 2014-07-23 广西师范大学 一种Hadoop上面向范围查询的内存缓存方法
CN105808661A (zh) * 2016-02-29 2016-07-27 浪潮通信信息系统有限公司 一种数据查询的方法及装置
CN107169033A (zh) * 2017-04-17 2017-09-15 东北大学 基于数据模式转换和并行框架的关系数据查询优化方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9760637B2 (en) * 2015-09-11 2017-09-12 Skyhigh Networks, Inc. Wildcard search in encrypted text using order preserving encryption

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1920822A (zh) * 2006-09-14 2007-02-28 浙江大学 交互式书法字k近邻查询方法
CN103942289A (zh) * 2014-04-12 2014-07-23 广西师范大学 一种Hadoop上面向范围查询的内存缓存方法
CN105808661A (zh) * 2016-02-29 2016-07-27 浪潮通信信息系统有限公司 一种数据查询的方法及装置
CN107169033A (zh) * 2017-04-17 2017-09-15 东北大学 基于数据模式转换和并行框架的关系数据查询优化方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
An efficient distributed range query processing algorithm on LiDAR data;Yu Chi Chung等;《2017 10th International Conference on Ubi-media Computing and Workshops (Ubi-Media)》;20171019;全文 *
基于Storm的连续范围查询优化技术;王波涛等;《计算机工程与科学》;20170115;全文 *

Also Published As

Publication number Publication date
CN108460137A (zh) 2018-08-28

Similar Documents

Publication Publication Date Title
US11100142B2 (en) Increasing clustering of partitions of a table
Tao et al. The mv3r-tree: A spatio-temporal access method for timestamp and interval queries
US10977248B2 (en) Processing records in dynamic ranges
US8825629B2 (en) Method for index tuning of a SQL statement, and index merging for a multi-statement SQL workload, using a cost-based relational query optimizer
US7761474B2 (en) Indexing stored data
US20160203173A1 (en) Indexing methods and systems for spatial data objects
CN112541074A (zh) 日志解析方法、装置、服务器和存储介质
CN105989015B (zh) 一种数据库扩容方法和装置以及访问数据库的方法和装置
US20140229496A1 (en) Information processing device, information processing method, and computer program product
CN108460137B (zh) 一种基于合并偏差门限的范围查询数据分片优化方法
US11144527B2 (en) Optimizing database table scans in the presence of ordered data
Gulzar et al. D-SKY: A framework for processing skyline queries in a dynamic and incomplete database
CN108416027B (zh) 一种基于范围查询边界集的合并数据分片优化方法
KR20070080350A (ko) 데이터스트림 관리 시스템에서 다수의 연속질의들에 표현된선택조건들의 효율적인 처리장치 및 처리방법
Mahmood et al. Fast: frequency-aware spatio-textual indexing for in-memory continuous filter query processing
CN110489601B (zh) 一种基于缓存机制的实时数据索引快速动态更新方法
Chen et al. Continuous online index tuning in moving object databases
Rojas et al. Distributing efficiently the Block-Max WAND algorithm
Munir et al. ATUN-HL: Auto tuning of hybrid layouts using workload and data characteristics
CN108427747B (zh) 一种基于范围查询边界集的动态规划数据分片优化方法
Gandhi et al. Experiments on Static Data Summarization Techniques
CN112307266B (zh) 一种索引模型的构建方法及装置
Zhang et al. Probabilistic Skyline Computation on Vertically Distributed Uncertain Data
US20170083567A1 (en) High-dimensional data storage and retrieval
CN114756626A (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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210720