利索能及
我要发布
收藏
专利号: 2017106095634
申请人: 南京师范大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-08-18
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种空间属性优先的时空轨迹数据文件在辅助存储设备中的存储方法,其特征在于:依次包括以下步骤:(1)采用均匀的空间网格对轨迹进行分段处理,将轨迹与网格的交叉点作为轨迹的分割点;

(2)在完成所有轨迹分段操作之后,同一网格的轨迹段被集中组织;

(3)以“数据文件”形式作为存储单元将网格中的轨迹段存入存储设备;数据文件包括文件首部、数据区、空闲区和索引区;所述文件首部记录数据文件的元数据,该元数据包括偏移量、文件链接、空间属性和数据容量;所述数据区中最小的存储单位为数据块,每个数据块中存储若干条轨迹段,数据块中的轨迹段包括轨迹段首部和轨迹段数据区;所述索引区记录数据区中每个轨迹段的时间信息;

(4)对存储之后的轨迹数据文件进行初始化、轨迹添加、顺序读取和时间查询操作;

其中,时空轨迹数据集TrajDB=(Traj1,Traj2,…,Trajn),轨迹Traji=,pij代表轨迹Traji中的第j个点,每个点包含x,y和t三种属性,分别代表在t时刻移动对象的经纬度坐标x和y;轨迹表示成由轨迹段组成的序列,即 Sij代表轨迹Traji中的第j条轨迹段;

所述步骤(4)中当添加新的轨迹数据集时,首先采用均匀的空间网格将轨迹划分成轨迹段,然后将同属相同网格的轨迹段添加至对应的数据文件中;向指定数据文件中添加轨迹段数据集的具体步骤如下:(A)按照时间对轨迹段进行排序

对给定的轨迹段根据其最早时刻和持续时间进行排序,即如果轨迹段的最早时刻相同,则持续时间短的轨迹段排在前面;此处,最晚时刻-最早时刻=持续时间;

(B)添加轨迹段的数据区和索引区记录

按照步骤(A)的排序结果,依次取出每条轨迹段,按照如下步骤进行添加:

a、计算当前轨迹段中所有点的总数据量Lpdata,加上轨迹段首部的大小,得到轨迹段将在数据块中存储的数据量 再加上轨迹段在索引区的记录大小 得到该轨迹段在数据文件中存储的总数据量 比较 和空闲区容量,如果空闲区存储空间足够,则顺序执行下一步骤;否则新建数据文件F,并且将当前文件通过文件首部中的链接字段与新文件F相互链接;然后,将当前轨迹段添加到文件F中,即更换数据文件重新执行步骤a;

b、比较文件首部中的当前数据块剩余容量Lrb,如果 则表明当前数据块中存在足够空间存储该轨迹段,则顺序执行下一步骤;否则表明当前数据块容量不够,执行步骤d;

c、读取当前空闲区的偏移量,同时记录此偏移量值,为添加索引区记录做准备,然后,按照数据块的轨迹段格式,在空闲区偏移位置处写入轨迹段数据,包括轨迹段长度、ID和所有点数据,随后更新Lrb,然后执行步骤e;

d、读取当前空闲区的偏移量,将当前文件的读写位置移至新数据块开始处,比较轨迹段 和数据块容量Lblock,如果 则设置当前数据块的跨块标志字段为“0”,按照步骤c执行轨迹段写入操作;否则设置当前数据块的跨块标志字段为“1”,将“4091”写入轨迹段长度字段,然后写入轨迹段ID,完成轨迹段首部之后,开始写入点数据,直至当前轨迹段填满为止,随后更新Lrb,然后,计算当前数据块已经写入的点数据总量Lw,更新执行步骤b;

e、读取当前索引区的偏移量,按照相应字段长度,从索引区偏移位置前19个字节处将轨迹段的起始位置、最早时刻和最晚时刻写入到数据文件中;

f、更新文件首部中的空闲区偏移量、索引区偏移量、空闲区容量和当前数据块的剩余容量;

g、计算新加入轨迹段的最小外接矩形MBRseg,并和文件首部中的最小外接矩形MBR进行对比,如果MBRseg与MBR不存在包含关系,则更新MBR使得可以包含MBRseg,否则文件首部中MBR保持不变。

2.根据权利要求1所述的空间属性优先的时空轨迹数据文件在辅助存储设备中的存储方法,其特征在于:所述文件首部中的偏移量包括:(I)文件数据区偏移量是数据文件中数据区的起始位置,用于数据访问操作中定位数据区的数据;(II)文件空闲区偏移量是数据文件空闲区的起始位置,用于定位新添加数据的起始位置;(III)文件索引区偏移量是数据文件索引区的起始位置,用于读取索引和添加新数据的索引信息;

当一个数据文件无法容纳所有数据时,当前数据文件通过所述文件链接来链接其他数据文件解决存储容量不足的问题,在文件首部中的前序文件链接和后序文件链接分别指向与当前数据文件相关联的前一个数据文件和后一个数据文件,方便访问邻近的数据文件;

当时空轨迹数据量过大时,一份轨迹数据集必须存储在多个相互链接的数据文件中,其中每个数据文件仅对应于网格空间中的某个部分区域,采用“数据文件对应的网格区域”标识该区域;而数据文件中所有轨迹数据全体的最小外接矩形MBR也被同样保存在数据文件首部中。

3.根据权利要求1所述的空间属性优先的时空轨迹数据文件在辅助存储设备中的存储方法,其特征在于:所述数据区中每个数据块的第一个字段是一个跨块标志位,跨块标志取值为0或者1,“1”表示当前轨迹段的数据存储在当前数据块和下一数据块中,读取时需要一并处理;“0”表示当前轨迹段仅存储在当前数据块中;

轨迹段首部包括轨迹段长度和轨迹段ID,轨迹段长度用来表示轨迹段在当前数据块中的存储区域,轨迹段ID是轨迹段的唯一编号用于合并分散在多个数据块中的轨迹段;轨迹段数据区全部由点数据构成,每个点数据包括经度、纬度和时刻。

4.根据权利要求1所述的空间属性优先的时空轨迹数据文件在辅助存储设备中的存储方法,其特征在于:所述索引区的具体字段功能描述如下:(I)轨迹段的偏移量用于定位轨迹段在数据文件中的位置;

(II)轨迹段中数据的最早时刻和最晚时刻,用来筛选满足数据访问的时间条件。

5.根据权利要求1所述的空间属性优先的时空轨迹数据文件在辅助存储设备中的存储方法,其特征在于:所述步骤(4)中新的数据文件默认大小为64M字节,而数据块的大小应该和辅助存储设备的“分配单元”的大小在数值上保持一致,初始化操作的具体步骤如下:新建空的数据文件,然后按照数据块的基本格式在文件首部中依次写入各相应字段的初始值。

6.根据权利要求1所述的空间属性优先的时空轨迹数据文件在辅助存储设备中的存储方法,其特征在于:所述步骤(4)中顺序读取的操作步骤如下:

1)、访问程序从数据文件首部中获得数据区的偏移量offsets和空闲区的偏移量offsete;

2)、访问程序从offsets位置开始读取数据块到内存中,根据数据块的跨块标志判断是否加载后续数据块,直至跨块标志为0停止;

3)、访问程序在内存中进行数据转换和提取操作,跳过“跨块标志”读取轨迹段长度,根据该长度控制轨迹段数据的读取范围,首先读出轨迹段ID,然后以相应字节为一个单元,读出点数据的经度、纬度和时刻数据,直至读完所有点数据;

4)、如果跨块标志为“0”,表明不存在一条跨越两个数据块的轨迹段;否则,采用步骤2)的方法继续读下一段,同样读出所有点数据,根据读出的轨迹段ID号和已读的轨迹段进行合并;

5)、重复步骤2)~4)操作,直至读文件至offsete位置停止。

7.根据权利要求1所述的空间属性优先的时空轨迹数据文件在辅助存储设备中的存储方法,其特征在于:所述步骤(4)中时间查询的操作步骤如下:i、加载索引区的所有轨迹段摘要,包括偏移位置、开始时间和结束时间;

ii、根据给定的时间条件,对比索引区轨迹段的时间区间进行筛选,得到候选轨迹段集合C;

iii、逐一访问C中的每个轨迹段的偏移位置,首先读出轨迹段ID,然后以相应字节为一个单元,读出点数据的经度、纬度和时刻数据,直至读完所有点数据,在重组这些数据后返回查询结果。