一种北斗报文信息的存储与访问方法技术

技术编号:14971876 阅读:135 留言:0更新日期:2017-04-03 00:20
本发明专利技术公开了一种北斗报文信息的存储与访问方法,包括:获取北斗报文信息的报文数据;根据报文数据生成报文信息的头文件,头文件存储报文数据的属性信息;根据头文件初始化存储报文数据的金字塔结构;将报文数据按照金字塔结构分割为多个层面切片,并将多个层面切片依次存入金字塔结构中。本发明专利技术通过使用金字塔结构按照便于索引的方式将北斗报文信息网格化、层次化,使得存储北斗报文信息占用内存比特位数更少,访问响应时间更短,提高北斗短报文数据的更新效率。

【技术实现步骤摘要】

本专利技术涉及通信领域的数据处理,特别地,涉及一种北斗报文信息的存储与访问方法
技术介绍
北斗卫星通信系统,是我国自主知识产权的全天候全天时提供卫星通信系统,无缝覆盖我国全部国土和周边海域,目前全面对民用用户开放,已在测绘、电信、水利、交通运输、勘探和国家安全等诸多领域提供导航定位、短报文通信和授时服务等应用,尤其是在电力、交通、气象、新能源等以动态信息数据监测为主的
应用。北斗短报文通信应用,意味着更加效率的信息传递,然而由于卫星通道的限制,短报文自身容量有限,单次仅可发布140个字的信息,同时存在发送时间间隔和容量带宽限制,传输时延约0.5秒,最高通信频度1秒1次,严重影响报文信息的传输效率,进而导致无法快速准确的实时更新动态数据。目前对于北斗报文信息的研究,多集中于北斗报文传输过程中北斗报文的传输协议、数据编码格式等方面,强调信息传输过程的研究,信息传输完成后在发送端或接收端信息数据的存储及访问,以及更新困难的问题,目前尚缺乏有效的解决方案。
技术实现思路
有鉴于此,本专利技术的目的在于提出一种北斗报文信息的存储与访问方法,建立一种北斗报文信息的索引定位存储机制,压缩报文信息占用内存的有效比特位数,使得北斗短报文通信时在有限的容量和通信频次内传输更多的报文信息,提高北斗报文信息的传输效率,有利于促进北斗短报文动态数据实时更新的效率。基于上述目的,本专利技术提供的技术方案如下:根据本专利技术的一个方面,提供了一种北斗报文信息的存储方法,包括:获取北斗报文信息的报文数据;根据报文数据生成报文信息的头文件,头文件存储报文数据的属性信息;根据头文件初始化存储报文数据的金字塔结构;将报文数据按照金字塔结构分割为多个层面切片,并将多个层面切片依次存入金字塔结构中。其中,金字塔结构为存储信息使用的网格化层次组织,金字塔结构具有多个层,顶层具有一个块,除底层外的每个块均在其下一层有n个块与该块对应,金字塔结构中的每个块大小相等,金字塔结构通过对应关系形成一个n叉树。并且,根据报文数据生成信息的头文件,根据报文数据的属性生成的属性头文件;报文数据的属性信息包括以下:数据源名称、金字塔层数、层面大小、层起始索引表,其中,数据源名称为金字塔结构的标识;金字塔层数为金字塔结构分层后的总层数;层面大小为金字塔结构分块后的块大小;层起始索引表为各层首层面在文件中的起始位置;头文件常驻于内存中。并且,将报文数据按照金字塔结构分割为多个层面切片,为将报文数据按照金字塔结构中的块大小分割为多个层面切片,每个层面切片与每个分层块的大小相等。并且,将多个层面切片依次存入金字塔结构中包括:将L层金字塔的顶层定为第0层,往下每层层数依次递增,底层定为第L-1层;获取多个层面切片,被获取的层面切片数量等于第L-1层可容纳的总数量,在第L-1层将被获取的切片按照Morton码顺序储存于第L-1层中的多个块中,并将该层的起始位置写入头文件的层起始索引表中;逐次增加金字塔层数继续获取并存储层面切片,直到所有层面切片都被存储于金字塔结构中为止。并且,根据头文件初始化存储报文数据的金字塔结构这一步骤在扩展存储中进行;在第L-1层将被获取的层面切片按照Morton码顺序储存于第L-1层中的多个块中这一步骤在扩展存储中进行;将该层的起始位置写入头文件的层起始索引表中,这一步骤在扩展存储中进行;其他所有步骤均在内存进行。上述n个块为4个块,金字塔结构通过对应关系形成一个n叉树为4叉树。根据本专利技术的另一个方面,提供了一种北斗报文信息的访问方法,包括:获取报文信息访问请求,计算访问请求的层面切片编号,并根据层面切片编号计算所在层;获取北斗报文信息的头文件,从头文件中获取数据源名称,并根据数据源名称获取对应的金字塔结构;同时,从头文件中获取层起始索引表,并根据层起始索引表获取层面切片所在层的起始地址;从头文件中获取层面大小,并根据层面大小、访问请求的层面切片编号与Morton码顺序获取地址偏移量,将层起始地址与地址偏移量相加,计算出访问请求的层面切片的起始地址;以起始地址为起点传输报文数据。其中,根据层面大小、访问请求的层面切片编号与Morton码顺序获取地址偏移量包括:根据访问请求的层面切片编号与所在层层数,获取层内编号;根据层内编号按照Morton码顺序确定访问请求的层面切片在所在层的偏移次序;将所在层的偏移次序与层面大小相乘,获得地址偏移量。并且,根据访问请求的层面切片编号与所在层层数,获取层内编号,为将切片编号依次减去所在层以下每一块存储的层面切片总数之和,得到层内编号。从上面所述可以看出,本专利技术提供的技术方案通过金字塔结构网格化、层次化北斗报文信息,建立报文信息索引,存储北斗报文信息占用内存比特位数更少,访问响应时间更短,提高北斗短报文数据的更新效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为根据本专利技术实施例的一种北斗报文信息的存储方法的流程图;图2为根据本专利技术实施例的一种北斗报文信息的存储方法中,金字塔结构的结构示意图;图3为根据本专利技术实施例的一种北斗报文信息的存储方法中,一种4叉树的金字塔结构树图;图4为根据本专利技术实施例的一种北斗报文信息的存储方法的一个实施例中的具体流程步骤;图5为根据本专利技术实施例的一种北斗报文信息的访问方法的流程图;图6为根据本专利技术实施例的一种北斗报文信息的访问方法中,层面切片起始地址的获取方法示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进一步进行清楚、完整、详细地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本专利技术保护的范围。根据本专利技术的实施例,提供了一种北斗报文信息的存储方法。如图1所示,根据本专利技术的实施例提供的北斗报文信息的存储方法包括:步骤S101,获取北斗报文信息的报文数据;步骤S103,根据报文数据生成报文信息的本文档来自技高网...

【技术保护点】
一种北斗报文信息的存储方法,其特征在于,包括:获取北斗报文信息的报文数据;根据所述报文数据生成报文信息的头文件,所述头文件存储所述报文数据的属性信息;根据头文件初始化存储所述报文数据的金字塔结构;将所述报文数据按照金字塔结构分割为多个层面切片,并将所述多个层面切片依次存入所述金字塔结构中。

【技术特征摘要】
1.一种北斗报文信息的存储方法,其特征在于,包括:
获取北斗报文信息的报文数据;
根据所述报文数据生成报文信息的头文件,所述头文件存储所述报文数
据的属性信息;
根据头文件初始化存储所述报文数据的金字塔结构;
将所述报文数据按照金字塔结构分割为多个层面切片,并将所述多个层
面切片依次存入所述金字塔结构中。
2.根据权利要求1所述的一种北斗报文信息的存储方法,其特征在于,
所述金字塔结构为存储信息使用的网格化层次组织,所述金字塔结构具有多
个层,顶层具有一个块,除底层外的每个块均在其下一层有n个块与该块对
应,所述金字塔结构中的每个块大小相等,所述金字塔结构通过所述对应关
系形成一个n叉树。
3.根据权利要求2所述的一种北斗报文信息的存储方法,其特征在于,
根据所述报文数据生成报文信息的头文件,为根据所述报文数据的属性信息
生成报文信息的头文件;所述报文数据的属性信息包括以下至少之一:数据
源名称、金字塔层数、层面大小、层起始索引表,其中,所述数据源名称为
所述金字塔结构的标识;金字塔层数为所述金字塔结构分层后的总层数;层
面大小为所述金字塔结构分块后的块大小;层起始索引表为各层首层面在文
件中的起始位置;所述头文件常驻于内存中。
4.根据权利要求3所述的一种北斗报文信息的存储方法,其特征在于,
将所述报文数据按照金字塔结构分割为多个层面切片,为将所述报文数据按
照金字塔结构中的块大小分割为多个层面切片,所述每个层面切片与所述每
个分层块的大小相等。
5.根据权利要求4所述的一种北斗报文信息的存储方法,其特征在于,
将所述多个层面切片依次存入所述金字塔结构中包括:
将所述L层金字塔的顶层定为第0层,往下每层层数依次递增,底层定
为第L-1层;
获取多个层面切片,所述被获取的层面切片数量等于第L-1层可容纳的
总数量,在第L-1层将被获取的层面切片按照Morton码顺序储存于第L-1层

\t中的多个块中,并将该层的起始位置写入所述头文件的层起始索引表中;
逐次增加金字塔层数继续获取并存储层面切片,直到所有层...

【专利技术属性】
技术研发人员:何清素崔九鑫王俊生贺金红
申请(专利权)人:北京汇通金财信息科技有限公司北京中电普华信息技术有限公司国家电网公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1