CN103020281B - 一种基于空间数据数值索引的数据存储与检索方法 - Google Patents

一种基于空间数据数值索引的数据存储与检索方法 Download PDF

Info

Publication number
CN103020281B
CN103020281B CN201210580189.7A CN201210580189A CN103020281B CN 103020281 B CN103020281 B CN 103020281B CN 201210580189 A CN201210580189 A CN 201210580189A CN 103020281 B CN103020281 B CN 103020281B
Authority
CN
China
Prior art keywords
index
data
numerical value
attribute
documents
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
Application number
CN201210580189.7A
Other languages
English (en)
Other versions
CN103020281A (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.)
Computer Network Information Center of CAS
Original Assignee
Computer Network Information Center of CAS
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 Computer Network Information Center of CAS filed Critical Computer Network Information Center of CAS
Priority to CN201210580189.7A priority Critical patent/CN103020281B/zh
Publication of CN103020281A publication Critical patent/CN103020281A/zh
Application granted granted Critical
Publication of CN103020281B publication Critical patent/CN103020281B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种基于空间数据数值索引的数据存储与检索方法。本方法为:1)从互联网中自动抓取包含空间数据的页面,对其进行解析后存储到数据库中;2)在数据库中选择要进行索引的属性,对于其中非数值类型的属性,将其转换成与其应的数值进行存储;3)按照空间数据所属类型对空间数据进行分类索引,为每一数据产品的数据表建立一数值索引文件,将其作为主索引,并按设定时间周期创建增量索引,定期将增量索引与主索引进行合并;所述数值索引文件包括一个索引属性与倒排文件映射表和多个数值文档倒排表;4)将所述索引部署到检索服务端;5)检索服务端根据收到的检索请求,对数据表进行检索。本方法检索速度、支持增量索引。

Description

一种基于空间数据数值索引的数据存储与检索方法
技术领域
本发明涉及一种基于空间数据数值索引的数据存储与检索方法,尤其适用于空间数据中数值属性索引的建立与检索,涉及空间数据检索服务领域。
背景技术
伴随着空间数据技术以及互联网技术的快速发展,空间数据采集量的爆炸性增长,基于空间数据的互联网相关服务从无到有,蓬勃发展,并在相关学科的研究领域中,发挥着越来越重要的作用。
在基于空间数据的服务中,空间数据的检索是一项基础性的服务,是用户定位获取数据的主要方式。面对海量的已采集空间数据,需要建立合适的空间数据索引来提高检索速度,并提供稳定可靠的增量索引处理方案来处理新采集的数据。
经过多年的发展,目前已经出现了大量的空间数据索引技术,早期的索引方法有B+树和散列索引,中后期出现的空间数据库的索引方法有格子文件及其变形、四叉树及其变形树、k-d树及其变形树、R树及其变形树等。
这些空间索引技术,又可分为基于点数据的数据结构和基于非点数据的数据结构两大类,点数据的数据结构包含:四叉树及其变形树、k-d树及其变形树、k-d-B树、hB树。非点数据的数据结构包含:基于区域交叉类(如R树、R*树等)、基于剪切类(如R+树、k-d树等)。在这些索引的基础上,出现了各种空间数据库产品。商业化的产品有ORACLESPATIAL、ARCSDE等,开源空间数据库主要是PostgreSql和Mysql的空间数据库插件,分别是postGIS和mySpatial。在同等的硬件条件下,空间数据的检索速度主要由表示空间数据位置的坐标点的数量和其所采用的索引结构决定,表示空间数据位置的坐标点越少、空间索引结构支持的数值比较定位的速度越快,空间数据的检索速度就更快。目前基于上述空间数据索引的空间数据检索服务,由于其采用的空间索引结构数值比较速度较慢,在检索的表示位置的坐标点较多的空间数据时,检索性能都较差。
发明内容
针对现有技术中存在的技术问题,本发明的目的在于提供一种基于空间数据数值索引的数据存储与检索方法。本发明设计了一种支持数值范围快速检索的数值索引文件结构,可对数据库存储的空间数据进行快速索引、提高空间数据的检索速度、支持增量索引。
一个产品的数值索引文件逻辑上包含一个索引属性与倒排文件映射表和多个数值文档倒排表,如图1所示。
索引属性与倒排文件映射表的内容由少量记录组成,每条记录中包含被索引的属性名称(即被索引的空间数据的属性名称)、该属性所对应的数值文档倒排表名称,如图2所示。
数值文档倒排表包含一组倒排记录,一个倒排记录与一个被索引数值(即被索引空间属性的数值)对应,倒排记录按照索引数值由小到大的顺序有序排放。倒排记录包含:被索引数值、包含该数值的所有文档号集合、包含该数值的最大文档号MaxDocNo、包含该数值的最小文档号MinDocNo、包含该数值的文档总数DocNum,如图3所示,文档号是指数据表中一条记录的唯一标识号。
本发明的技术方案为:
1)从互联网中自动抓取包含空间数据的html页面,对其进行解析,将解析后的数据存储到数据库中;
2)在数据库中选择要进行索引的属性,对于其中非数值类型的属性,将其转换成与其一一对应的数值进行存储;
3)按照空间数据所属类型对空间数据进行分类索引,为每一数据产品的数据表建立一数值索引文件,将其作为主索引,并按设定时间周期创建增量索引,定期将增量索引与主索引进行合并;所述数值索引文件包括一个索引属性与倒排文件映射表和多个数值文档倒排表;其中,所述索引属性与倒排文件映射表中的每条记录中包含被索引的属性名称、属性所对应的数值文档倒排表名称;所述数值文档倒排表包含一组倒排记录,每一倒排记录与一被索引数值对应,倒排记录包含:被索引数值、包含该被索引数值的所有文档号集合、包含该被索引数值的最大文档号MaxDocNo、包含该被索引数值的最小文档号MinDocNo、包含该被索引数值的文档总数DocNum;
4)将所述索引部署到检索服务端;
5)检索服务端根据收到的检索请求,利用所述主索引对数据表进行检索,返回检索结果。进一步的,所述主索引或所述增量索引的建立方法为:
21)对要建立索引的数据表,创建对应的所述索引属性与倒排文件映射表文件,并在文件中添加记录;
22)向各个索引属性与倒排文件映射表文件中添加倒排记录,并使用各个属性的hash定位函数来确定添加的倒排记录的存放位置。
进一步的,使用各个属性的hash定位函数来确定添加的倒排记录的存放位置的方法为:
1)对于整数型属性,使用Hash定位函数hashPosition(x)=x+1来确定添加的倒排记录的存放位置;其中,100≥x≥0,x表示属性值;
2)对于最大经度、最小经度、中心经度属性,使用Hash定位函数hash(x)=(x+180)*10000来确定添加的倒排记录的存放位置;其中,-180.0001≤x≤180,x表示属性值;
3)对于最大纬度、最小纬度、中心纬度属性,使用Hash定位函数hash(x)=(x+90)*10000来确定添加的倒排记录的存放位置;其中,-90≤x≤90,x表示属性值;
4)对于日期属性,首先将其为整型数属性,然后使用hash定位函数hashPosition(x)=x+1来确定添加的倒排记录的存放位置;其中,18665≥x≥0,x表示属性值。
进一步的,建立所述数值文档倒排表的方法为:
41)对于某一属性,创建大小为MaxRecordNumber个倒排记录数组,每个记录中的最大文档号MaxDocNo记录数据表的id属性的最大值初始化为0、最小文档号MinDocNo记录数据表的id属性的最小值初始化为0、文档个数DocNum初始化为0、被索引的数值设置为0;其中,MaxRecordNumber的值为该属性值hash函数的最大值与最小值的差加上1;
42)从数据表中读取一条待索引数据,定位该属性值在倒排表中所对应的记录位置m,由m得到倒排表的相应记录,开始在该记录中存放被索引数值,将该数据的文档id按照递增的方式存放到文档号集合中,对文档个数DocNum进行加1处理,如果加入的文档号小于最小文档号MinDocNo,则更新MinDocNo的值为当前要索引的文档号,如果加入的文档号大于最大文档号MaxDocNo,则更新MaxDocNo的值为当前要索引的文档号,进入43);
43)如果数据表中还有待索引的记录,则进入42),如无待索引记录则将倒排记录数组写入数值文档倒排表文件,完成该属性的数值文档倒排表文件创建工作。
进一步的,将增量索引合并到对应主索引中的方法为:
51)确认主索引与增量索引的索引属性与倒排文件映射表文件的内容是否相同,如果相同,进入步骤52),如果不同,则退出;
52)遍历主索引的索引属性与倒排文件映射表文件中的记录,获取一个主索引属性对应的数值倒排表,将增量索引中对应属性的数值倒排表中的数据合并到该主索引属性的数值倒排表中;
53)合并所有属性对应的数值倒排表后,删除增量索引的索引属性与倒排文件映射表文件和其所有的数值倒排表文件。
进一步的,每一数据产品的数据表设置一整型主键id,作为索引时数据表中数据记录的文档号。
进一步的,不同数据产品的数据表整型主键id具有不同区间范围的数值。
进一步的,所述检索服务端包括分布式部署的多台检索服务器,其中一台检索服务器作为主检索服务器,接收所述检索请求并将检索请求均衡地分配到其他检索服务器上。
进一步的,所述检索请求包括:最大经度值、最小经度值、最大纬度值、最小纬度、产品类型名称、返回的文档号集合的起始位置begin、返回的文档号集合的偏移位置begin+offset。
进一步的,步骤5)的实现方法为:
1)检索服务端根据检索请求中的产品类型名称,确定要检索的索引文件,及索引属性与倒排文件映射表文件和其全部的数值倒排文件;
2)从加载的索引属性与倒排文件映射表文件中,获取最小经度属性、最大纬度属性、最小纬度属性和开始日期属性所对应的倒排表文件名称,加载这些数值文档倒排表,分别对其进行范围检索,获取相应属性范围的文档号子集;
3)合并所获取的文档号子集,从合并集合中选择从begin到begin+offset位置的文档号,并记录合并集合的大小resultSize;
4)通过合并后的文档号,查询该检索请求中的产品类型名称对应的数据表,获取各个文档号的全部属性信息,将这些属性信息、文档号和resultsize作为相应结果返回。基于以上内容本发明包括以下步骤(如图4所示):
一.抓取存储空间数据
从互联网中自动抓取包含空间数据的html页面,对其进行解析,将解析后的数据存储到数据库中。
二.非数值化索引属性的数值转换
在数据库中选择要进行索引的属性,对于其中非数值类型的属性,将其转换成与其一一对应的数值进行存储。
三.建立并合并索引
按照空间数据所属类型对空间数据进行分类索引。创建索引时,先建立各个类型空间数据的主索引,然后按一定时间周期创建增量索引,定期将增量索引与主索引进行合并。
四.分布式部署索引并启动检索服务程序
将索引数据以及检索服务程序部署到不同的服务器上,来支持分布式检索。完成索引部署后,启动检索服务程序,处理检索请求。
五.接收检索请求返回检索结果
接收用户提交的检索条件,检索服务程序检索相应的数值索引,返回满足检索条件的检索结果。
本发明的优点与积极效果
与现有的空间数据库索引相比较,本发明充分利用了空间数据数值的分布特点,设计了相应的索引结构,可以对空间数据进行更快速的检索。对于日期这种非数值属性,设计相应的转换函数,将其处理为数值,使得设计的数值索引除空间属性外还支持其他可以数值化属性(如日期等)的检索。
除支持空间数据不同属性的索引建立和快速检索外,本发明还有以下优点与积极效果:
采用主索引加增量索引的处理方式生成索引,避免了每次索引数据需要重新索引全部数据,降低了索引生成的速度,减小了生成索引时系统资源的消耗。
索引根据卫星产品分类,支持分布式检索。不同卫星产品数据索引结构相同,支持各个不同产品数据的检索结果的混合排序。
使用数据库存储空间数据,方便数据的管理,且数值索引的使用不影响数据自带的空间索引的使用。
附图说明
图1数值索引文件逻辑结构图;
图2索引属性与倒排文件映射表结构图;
图3数值文档倒排表结构;
图4为本发明的方法流程图;
图5抓取解析存储Modis数据的流程图。
具体实施方法
下面以mod091数据产品为例,说明建立索引和检索服务的过程:
一.抓取存储空间数据(如图5所示)
抓取解析存储mod091数据的过程如下所示:
1.访问网站http://earthexplorer.usgs.gov/,在其首页的标签页Dataset中选择产品mod091,在标签页path/row中设置检索空间范围,点击Results按钮好后,获取包含产品mod091数据信息的页面。
2.提取页面中的数据信息包括数据id、最大经度、最小经度、最大纬度、最小纬度、中心经度、中心纬度、平均云量、开始日期。
3.将提取的mod09a1数据全部插入到mod09a1产品对应的数据表mod09a1_metadata中(一个产品对应一个数据表),并为每一条记录增加入库的时间,在生成增量索引时使用。其中mod09a1数据表mod09a1_metadata设置整型主键id,索引时将其作为空间数据的文档号(即将数据表的id属性值作为文档号),给各表id分配不同范围的数值,以防止索引合并时数据丢失,如mod09a1_metadata配的文档号区间为[0,9999999]。
二.非数值化索引属性的数值转换
在mod091产品数据所在的数据表中,选择要进行检索处理的属性
1.选择用于检索的数值型属性有:最大经度、最小经度、最大纬度、最小纬度、中心经度、中心纬度、平均云量。
2.选择用于检索的非数值型数据有:开始日期。
这里将非数值型数据开始日期转化为数值型数据,以日期d=1999-12-12为例,使用函数dayToNumber(d)=(year(d)-1970)*366+dayOfYear(d),来计算其对应的数值是dayToNumber(d)=10960。
注:year(d)的结果是d所属的年份;dayOfYear(d)的结果是一个日期属于该年份第几天。
三.建立并合并索引
对已经存储在mod09a1产品表mod09a1_metadata中的数据建立索引,将其作为主索引,主索引只建立一次;对于每天新增加到mod09a1_metadata的数据建立索引,将其作为增量索引,并将增量索引合并到主索引中。
建立索引(主索引与增量索引的建立过程相同)的描述如下所示:
1.对要建立索引的数据表,创建对应的索引属性与倒排文件映射表文件,并在文件中添加记录,记录内容包含:检索索引属性名称及其数值文档倒排表的文件名称,检索索引属性名称及其数值文档倒排表一一对应;创建各个属性相应的数值文档倒排表,准备向数值文档倒排表文件中添加数据内容。检索属性名称为步骤二中处理的属性,
2.向各个索引属性与倒排文件映射表文件中添加倒排记录,并使用各个属性的hash定位函数来确定添加的倒排记录的存放位置,其中各属性的hash函数如下所示:平均云量属性为整数,使用的Hash定位函数为:hashPosition(x)=x+1,(100>=x>=0,x表示属性值);最大经度、最小经度、中心经度为精度是小数点后四位的浮点数使用的Hash定位函数为:hash(x)=(x+180)*10000(-180.0001<=x<=180,x表示属性值)最大纬度、最小纬度、中心纬度为精度是小数点后四位的浮点数使用的Hash定位函数为:hash(x)=(x+90)*10000(-90<=x<=90,x表示属性值)日期属性转化后为整型数值,其hash定位函数为:
hashPosition(x)=x+1,(18665>=x>=0,x表示属性值,其中18665表示日期2020-12-30,0表示1970-01-01)
以最大经度值建立数值文档倒排表文件为例,过程如下所示:
①创建大小为MaxRecordNumber个倒排记录数组,每个记录中的最大文档号MaxDocNo记录数据表的id属性的最大值初始化为0、最小文档号MinDocNo记录数据表的id属性的最小值初始化为0、文档个数DocNum都初始化为0、被索引的数值设置为0,其中,MaxRecordNumber的值为最大经度值hash函数的最大值与最小值的差加上1,MaxRecordNumber=hashPosition(xmax)-hashPosition(xmin)+1。
②从mod09a1_metadata表中读取一条待索引数据,获取其最大经度属性的数值maxLongitude,由其hash定位函数hash(maxLongitude)得到其最大经度值在倒排表中所对应的记录位置m,由m得到倒排表的相应记录,开始在该记录中存放被索引数值,将该数据的文档id按照递增的方式存放到文档号集合中,对文档个数DocNum进行加1处理,如果加入的文档号小于最小文档号MinDocNo,则更新MinDocNo的值为当前要索引的文档号,如果加入的文档号大于最大文档号MaxDocNo,则更新MaxDocNo的值为当前要索引的文档号,进入过程③。
③如果mod09a1_metadata表中还有待索引的记录,则进入过程②,如无待索引记录则将倒排记录数组写入数值文档倒排表文件,完成数值文档倒排表文件创建工作。
3.完成索引属性与倒排文件映射表文件中包含的全部数值文档倒排表文件后,索引建立完毕。
索引合并的描述如下所示:
1.确认主索引与增量索引的索引属性与倒排文件映射表文件的内容是否相同,如果相同,进入步骤2,如果不同,则退出。
2.遍历主索引的索引属性与倒排文件映射表文件中的记录,获取一个主索引属性对应的数值倒排表,将增量索引中对应属性的数值倒排表中的数据,合并到主索引属性的数值倒排表中。
3.合并所有属性对应的数值倒排表后,删除增量索引的索引属性与倒排文件映射表文件和其所有的数值倒排表文件。
四.分布式部署索引并启动检索服务程序
部署多台检索服务器,每台检索服务器,存放相同的索引文件,由一个检索服务主程序统一处理检索请求,它将检索请求均衡地分配到各个检索服务器上,并返回检索结果(即检索服务程序位于一主检索服务器上,主检索服务器负责均衡分配)。检索服务器根据表中采集数据的时间,在每天固定时刻,对个产品对应的数据表中24小时内采集的数据,建立增量索引,并将增量索引合并到主索引中,重启各个检索服务器,加载新的索引文件,处理检索请求。
五.接收检索请求返回检索结果
以对mod09a1产品的检索为例,其接收检索请求返回检索结果的过程如下所示:
1.输入条件:检索区域的最大经度值maxSearchLongitude、最小经度值minSearchLongitude、最大纬度值maxSearchLatitude、最小纬度minSearchLatitude、开始日期date、产品类型名称mod09a1、返回的文档号集合的起始位置begin、返回的文档号集合的偏移位置offset。其中最大经度值、最小经度值、最大纬度值、最小纬度、产品类型名称、返回的文档号集合的起始位置返回的文档号集合的偏移位置为必填信息
2.向检索服务主程序,即主检索服务器,发送检索请求,主检索服务器将检索请求转发给其他检索服务器。
3.检索服务器根据检索请求中的产品类型名称,确定要检索的索引文件,及索引属性与倒排文件映射表文件和其全部的数值倒排文件。从加载的索引属性与倒排文件映射表文件中,获取最小经度属性、最大纬度属性、最小纬度属性和开始日期属性所对应的倒排表文件名称,加载这些数值文档倒排表,分别对其进行范围检索:
在最大经度属性倒排表中选择最大经度大于minSearchLogitude的文档号子集;在最小经度属性倒排表中选择小于maxSearchLogitude的文档号子集;在最大纬度属性倒排表中选择大于minSearchLatitude的文档号子集,最小纬度在属性倒排表中选择小于maxSearchLatitude的文档号子集;
在开始日期选择等于date的文档号子集;
合并这些文档号子集,从合并集合中选择从begin到begin+offset位置的文档号,记录合并集合的大小resultSize。
获取属性倒排表中满足检索条件的文档号子集的算法如下所示(已最大经度为例):
①使用最大经度属性的hash定位函数确定输入值minSearchLogitude对应的倒排记录位置position。
②遍历从最大经度属性倒排表中,位置0到positon之间记录,将其各个记录的文档号集合合并构成最大经度属性倒排表检索的文档号集合。
4.通过这些文档号(同时也是mod09a1_metadata中的主键id),查询数据表mod09a1_metadata表,获取各个文档号的全部属性信息,将这些属性信息、文档号和resultsize作为相应结果返回,供前台展示。

Claims (10)

1.一种基于空间数据数值索引的数据存储与检索方法,其步骤为:
1)从互联网中自动抓取包含空间数据的页面,对其进行解析,将解析后的数据存储到数据库中;
2)在数据库中选择要进行索引的属性,对于其中非数值类型的属性,将其转换成与其一一对应的数值进行存储;
3)按照空间数据所属类型对空间数据进行分类索引,为每一数据产品的数据表建立一数值索引文件,将其作为主索引,并按设定时间周期创建增量索引,定期将增量索引与主索引进行合并;所述数值索引文件包括一个索引属性与倒排文件映射表和多个数值文档倒排表;其中,所述索引属性与倒排文件映射表中的每条记录中包含被索引的属性名称、属性所对应的数值文档倒排表名称;所述数值文档倒排表包含一组倒排记录,每一倒排记录与一被索引数值对应,倒排记录包含:被索引数值、包含该被索引数值的所有文档号集合、包含该被索引数值的最大文档号MaxDocNo、包含该被索引数值的最小文档号MinDocNo、包含该被索引数值的文档总数DocNum;
4)将所述索引部署到检索服务端;
5)检索服务端根据收到的检索请求,利用所述主索引对数据表进行检索,返回检索结果。
2.如权利要求1所述的方法,其特征在于所述主索引或所述增量索引的建立方法为:
21)对要建立索引的数据表,创建对应的所述索引属性与倒排文件映射表文件,并在文件中添加记录;
22)向各个索引属性与倒排文件映射表文件中添加倒排记录,并使用各个属性的hash定位函数来确定添加的倒排记录的存放位置。
3.如权利要求2所述的方法,其特征在于使用各个属性的hash定位函数来确定添加的倒排记录的存放位置的方法为:
a)对于整数型属性,使用Hash定位函数hashPosition(x)=x+1来确定添加的倒排记录的存放位置;其中,100≥x≥0,x表示属性值;
b)对于最大经度、最小经度、中心经度属性,使用Hash定位函数hash(x)=(x+180)*10000来确定添加的倒排记录的存放位置;其中,-180.0001≤x≤180,x表示属性值;
c)对于最大纬度、最小纬度、中心纬度属性,使用Hash定位函数hash(x)=(x+90)*10000来确定添加的倒排记录的存放位置;其中,-90≤x≤90,x表示属性值;
d)对于日期属性,首先将其为整型数属性,然后使用hash定位函数hashPosition(x)=x+1来确定添加的倒排记录的存放位置;其中,18665≥x≥0,x表示属性值。
4.如权利要求1或2或3所述的方法,其特征在于建立所述数值文档倒排表的方法为:
41)对于某一属性,创建大小为MaxRecordNumber个倒排记录数组,每个记录中的最大文档号MaxDocNo记录数据表的id属性的最大值且初始化为0、最小文档号MinDocNo记录数据表的id属性的最小值且初始化为0、文档个数DocNum初始化为0、被索引的数值设置为0;其中,MaxRecordNumber的值为该属性值hash函数的最大值与最小值的差加上1;
42)从数据表中读取一条待索引数据,定位该属性值在倒排表中所对应的记录位置m,由m得到倒排表的相应记录,开始在该记录中存放被索引数值,将该数据的文档id按照递增的方式存放到文档号集合中,对文档个数DocNum进行加1处理,如果加入的文档号小于最小文档号MinDocNo,则更新MinDocNo的值为当前要索引的文档号,如果加入的文档号大于最大文档号MaxDocNo,则更新MaxDocNo的值为当前要索引的文档号,进入43);
43)如果数据表中还有待索引的记录,则进入42),如无待索引记录则将倒排记录数组写入数值文档倒排表文件,完成该属性的数值文档倒排表文件创建工作。
5.如权利要求2所述的方法,其特征在于将增量索引合并到对应主索引中的方法为:
51)确认主索引与增量索引的索引属性与倒排文件映射表文件的内容是否相同,如果相同,进入步骤52),如果不同,则退出;
52)遍历主索引的索引属性与倒排文件映射表文件中的记录,获取一个主索引属性对应的数值倒排表,将增量索引中对应属性的数值倒排表中的数据合并到该主索引属性的数值倒排表中;
53)合并所有属性对应的数值倒排表后,删除增量索引的索引属性与倒排文件映射表文件和其所有的数值倒排表文件。
6.如权利要求1或2或3或5所述的方法,其特征在于每一数据产品的数据表设置一整型主键id,作为索引时数据表中数据记录的文档号。
7.如权利要求6所述的方法,其特征在于不同数据产品的数据表整型主键id具有不同区间范围的数值。
8.如权利要求1所述的方法,其特征在于所述检索服务端包括分布式部署的多台检索服务器,其中一台检索服务器作为主检索服务器,接收所述检索请求并将检索请求均衡地分配到其他检索服务器上。
9.如权利要求1或8所述的方法,其特征在于所述检索请求包括:最大经度值、最小经度值、最大纬度值、最小纬度、产品类型名称、返回的文档号集合的起始位置begin、返回的文档号集合的偏移位置begin+offset。
10.如权利要求9所述的方法,其特征在于步骤5)的实现方法为:
1)检索服务端根据检索请求中的产品类型名称,确定要检索的索引文件,及索引属性与倒排文件映射表文件和其全部的数值倒排文件;
2)从加载的索引属性与倒排文件映射表文件中,获取最小经度属性、最大纬度属性、最小纬度属性和开始日期属性所对应的倒排表文件名称,加载这些数值文档倒排表,分别对其进行范围检索,获取相应属性范围的文档号子集;
3)合并所获取的文档号子集,从合并集合中选择从begin到begin+offset位置的文档号,并记录合并集合的大小resultsize;
4)通过合并后的文档号,查询该检索请求中的产品类型名称对应的数据表,获取各个文档号的全部属性信息,将这些属性信息、文档号和resultsize作为相应结果返回。
CN201210580189.7A 2012-12-27 2012-12-27 一种基于空间数据数值索引的数据存储与检索方法 Active CN103020281B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210580189.7A CN103020281B (zh) 2012-12-27 2012-12-27 一种基于空间数据数值索引的数据存储与检索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210580189.7A CN103020281B (zh) 2012-12-27 2012-12-27 一种基于空间数据数值索引的数据存储与检索方法

Publications (2)

Publication Number Publication Date
CN103020281A CN103020281A (zh) 2013-04-03
CN103020281B true CN103020281B (zh) 2016-01-27

Family

ID=47968884

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210580189.7A Active CN103020281B (zh) 2012-12-27 2012-12-27 一种基于空间数据数值索引的数据存储与检索方法

Country Status (1)

Country Link
CN (1) CN103020281B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103390038B (zh) * 2013-07-16 2016-03-30 西安交通大学 一种基于HBase的构建和检索增量索引的方法
CN104636346A (zh) * 2013-11-07 2015-05-20 腾讯科技(深圳)有限公司 网页数据查询方法及装置
CN103607463B (zh) * 2013-11-25 2016-08-17 中国电信集团系统集成有限责任公司 定位数据存储系统和存储方法
CN103778219B (zh) * 2014-01-20 2015-03-04 西安交通大学 一种基于HBase的更新增量索引的方法
CN105701118B (zh) * 2014-11-28 2019-05-28 国际商业机器公司 用于归一化文件的非数值特征的方法和装置
CN104765694B (zh) * 2015-03-18 2016-07-06 广东电网有限责任公司电力科学研究院 一种可配置合并取值的cim内存库加载方法
CN106156166B (zh) * 2015-04-16 2020-11-10 深圳市腾讯计算机系统有限公司 关系链查询系统、文档检索方法、索引建立方法及装置
CN104820692B (zh) * 2015-04-28 2018-06-08 广东小天才科技有限公司 一种建立索引的方法及装置
CN105069078A (zh) * 2015-07-31 2015-11-18 天脉聚源(北京)传媒科技有限公司 一种处理增量索引合并失败的方法及装置
CN107094114A (zh) * 2016-01-13 2017-08-25 英特尔公司 用于模块化转发表可缩放性的技术
CN106446201A (zh) * 2016-09-30 2017-02-22 福建中金在线信息科技有限公司 一种社交圈数据的处理方法及装置
CN108255829B (zh) * 2016-12-28 2021-10-19 腾讯科技(北京)有限公司 数据查找方法及装置
CN107704954B (zh) * 2017-09-26 2020-07-10 杭州控客信息技术有限公司 一种智能家居系统中高效的用电习惯分析方法
CN108460067B (zh) * 2017-10-30 2022-08-16 上海赛图计算机科技股份有限公司 基于数据的瓦片索引结构、索引构建方法和数据检索方法
CN108509625A (zh) * 2018-04-08 2018-09-07 中国人民解放军63601部队 一种数据静态表位置定位方法
CN110020321A (zh) * 2018-04-13 2019-07-16 深圳壹账通智能科技有限公司 产品索引的生成方法、装置、设备和计算机存储介质
CN110597891B (zh) * 2018-06-12 2022-06-21 武汉斗鱼网络科技有限公司 MySQL聚合为PostgreSQL数据库的设备、系统、方法、存储介质
CN108829880B (zh) * 2018-06-27 2020-12-01 烽火通信科技股份有限公司 一种光网络终端设备的配置管理的方法
CN110263057B (zh) * 2019-06-12 2020-04-17 上海英方软件股份有限公司 一种rowid映射表的存储和查询方法及装置
CN112965961B (zh) * 2021-02-02 2023-04-28 中国船舶重工集团环境工程有限公司 一种用于有机固废资源利用产沼气的大数据分析方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1536509A (zh) * 2003-04-11 2004-10-13 �Ҵ���˾ 倒排索引存储方法、倒排索引机制以及在线更新的方法
CN101136014A (zh) * 2006-09-01 2008-03-05 北大方正集团有限公司 一种支持全文检索系统同时检索数值类型数据域的方法
CN101477568A (zh) * 2009-02-12 2009-07-08 清华大学 一种结构化数据和非结构化数据综合检索的方法
CN101673307A (zh) * 2009-10-21 2010-03-17 中国农业大学 空间数据索引方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9453741B2 (en) * 2010-03-31 2016-09-27 Telenav, Inc. Navigation system with indexed term searching and method of operation thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1536509A (zh) * 2003-04-11 2004-10-13 �Ҵ���˾ 倒排索引存储方法、倒排索引机制以及在线更新的方法
CN101136014A (zh) * 2006-09-01 2008-03-05 北大方正集团有限公司 一种支持全文检索系统同时检索数值类型数据域的方法
CN101477568A (zh) * 2009-02-12 2009-07-08 清华大学 一种结构化数据和非结构化数据综合检索的方法
CN101673307A (zh) * 2009-10-21 2010-03-17 中国农业大学 空间数据索引方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于航天信息球的空间信息元数据管理的研究与实现;张慧;《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》;20071115;C031-65第1-77页 *

Also Published As

Publication number Publication date
CN103020281A (zh) 2013-04-03

Similar Documents

Publication Publication Date Title
CN103020281B (zh) 一种基于空间数据数值索引的数据存储与检索方法
CN102332030A (zh) 用于分布式键-值存储系统的数据存储、管理和查询方法及系统
CN101452487B (zh) 一种数据加载的方法、系统及数据加载装置
CN102737133B (zh) 一种实时搜索的方法
CN106326429A (zh) 一种基于solr的Hbase秒级查询方案
CN102184211A (zh) 文件系统和检索、写入、修改或删除文件的方法与装置
CN102906751A (zh) 一种数据存储、数据查询的方法及装置
CN109284273B (zh) 一种采用后缀数组索引的海量小文件查询方法及系统
CN111427847B (zh) 面向用户自定义元数据的索引与查询方法和系统
CN103399945A (zh) 一种基于云计算数据库系统的数据结构
CN104239377A (zh) 跨平台的数据检索方法及装置
CN106326361A (zh) 一种基于HBase数据库的数据查询方法及装置
CN103631909A (zh) 对大规模结构化和非结构化数据联合处理的系统及方法
CN108205562B (zh) 地理信息系统的定位数据存储、检索方法及其装置
Hauff et al. Placing images on the world map: a microblog-based enrichment approach
CN108595511B (zh) 一种多样化气象水文数据分类存储处理方法和系统
CN102566945A (zh) 一种实现图书自动组稿按需印刷的方法和系统
CN103353901A (zh) 基于Hadoop分布式文件系统的表数据的有序管理方法以及系统
CN104834650A (zh) 一种有效查询任务生成方法及系统
CN103840969A (zh) 云计算系统中告警日志的管理方法和系统
CN104391941A (zh) 一种快速构建常用文件全文检索工具的方法
CN104615734B (zh) 一种社区管理服务大数据处理系统及其处理方法
CN110928903B (zh) 数据提取方法及装置、设备和存储介质
CN105260464A (zh) 数据存储结构的转换方法及装置
CN104035993A (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
C14 Grant of patent or utility model
GR01 Patent grant