一种应用于高精度地图的中间层数据安全提交方法、装置、设备及存储介质与流程

文档序号:20838833发布日期:2020-05-22 17:13阅读:533来源:国知局
一种应用于高精度地图的中间层数据安全提交方法、装置、设备及存储介质与流程

本发明涉及高精度地图数据处理技术领域,尤其涉及一种应用于高精度地图的中间层数据安全提交方法、装置、设备及存储介质。



背景技术:

随着通信及互联网领域的迅猛发展,高精度地图已经在人们的生活中得到了越来越多的应用。

高精度地图,通俗来讲就是精度更高、数据维度更多的电子地图。与一般电子导航地图面向的是驾驶员,主要起的是辅助驾驶的导航功能不一样的是,高精度地图更多的面向无人驾驶时代的自动行驶汽车,通过高精度多维度数据提供有效的地图数据。传统导航地图只需要存储和处理永久静态数据(更新频率为1个月)和半永久静态数据(频率为1小时),而高精度地图为了应对各类突发状况,保证自动驾驶安全,还需要存储和处理半动态数据(频率为1分钟)和动态数据(频率为1秒)。因此高精度地图将大量的行车辅助信息存储为结构化数据的过程中,数据处理量更大,对数据的实时性,可靠性要求也更高。

在现有技术中,为了提高数据的可靠性,对数据进行本地缓存是常用的防护机制。中间层数据缓存可以用来保护数据的完整性,在提交失败的时候可以使用缓存数据重新提交,增加一层安全机制。原始数据通过业务逻辑解算后得到最终结果,进行安全提交。但大量生产数据同时并发提交结果时,由于每个任务进程都需要连接数据库并写入数据,若干个作业员同时提交数据的现象在所难免。可以通过消息队列指令(mq指令)使数据提交过程有序排队,可以减小据提交过程中的数据库并发连接量。但服务器上的数据库最大连接数总有上限,网络带宽也有上限,遇到大量数据同时提交的情况引起异常还是不能避免,如数据写入过程出错,数据丢失等。



技术实现要素:

本发明针对在高精度地图应用领域中存在的大量并发作业环境下数据往往无法安全提交的问题,提供一种应用于高精度地图的中间层数据安全提交方法、装置、设备及存储介质,使用redis做数据缓存中间层,通过数据流服务管理与控制中间层和数据库的双向交互,起到安全连接、任务有序排队的防护作用,达到解决问题的目的。

本发明解决上述技术问题的技术方案如下:

第一方面,本发明提供一种应用于高精度地图的中间层数据安全提交方法,主要包含以下步骤:

步骤1,在redis中,设置数据流服务管理层与控制中间层两部分,控制中间层包含数据缓存和指令缓存两部分;

步骤2,在redis中约定待缓存数据的格式;

其中,缓存数据包括相关数据的字段、结构和类型等,数据格式包括json、文本等。使用hashset保存缓存结果数据,hashset是redis里的一种数据结构,也被称为集合或容器,该容器中只能存储不重复的对象。

步骤3,在redis中约定数据提交指令格式;

其中,相关指令包括数据库连接信息、提交类型等,以保证数据的正确提取。

步骤4,在有数据提交任务时,控制中间层提交指令,供数据流服务管理层提取和解析;

步骤5,数据流服务管理层订阅指令,实现指令提取,形成业务逻辑,交由逻辑处理单元处理;

步骤6,逻辑处理单元执行业务逻辑,读取控制中间层的缓存数据,并实现数据库连接和事务化提交,将最终结果写入数据库;

步骤7,当事务化提交失败时,中间层服务将把执行失败的任务回填指令缓存,缓存数据保留,继续订阅任务重新执行;当事务化提交成功时,则完成数据写入过程,可清理缓存数据以便下次任务正常执行。

第二方面,本发明实施例还提供一种应用于高精度地图的中间层数据安全提交装置,该装置包括:

中间控制单元,主要实现控制中间层功能,包含数据缓存和指令缓存两部分,用于缓存数据和指令,在有数据提交任务时,提交指令供数据流服务管理单元提取和解析;

数据流服务管理单元,主要用于实现数据流服务管理层功能,订阅指令,并提取和解析指令,形成业务逻辑;

逻辑处理单元,主要实现执行业务逻辑,读取中间控制单元的缓存数据,并实现数据库连接和事务化提交,将最终结果写入数据库。

第三方面,本发明提供一种应用于高精度地图的中间层数据安全提交设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现所述应用于高精度地图的中间层数据安全提交方法的步骤。

第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述应用于高精度地图的中间层数据安全提交方法的步骤。

与现有技术相比,本发明具有如下显而易见的突出特点和显著的技术进步:引入中间层缓存和指令有序排队,以及事务化提交、容错,提供安全可靠的数据本地缓存,即使提交失败,也能找回。通过指令缓存实现指令排队,作业员数据写入本地缓存且不直连数据库,减小数据库连接压力,只有双向数据流服务与数据库直连并获得缓存数据进行数据库写入,极大降低了数据提交的故障率,使得数据提交过程更加安全。

附图说明

图1为本发明实施例一开的一种应用于高精度地图的中间层数据安全提交方法流程图;

图2为本发明实施例二开的一种应用于高精度地图的中间层数据安全提交装置的结构框图。

具体实施方式

为了使本发明实施例中的目的、技术方案和优点进行清楚、完整地描述,下面将结合本发明实施例中的附图对本发明作进一步说明。以下结合附图所举实例只用于解释本发明,并非用于限定本发明的范围。

本发明的实施例一提供一种应用于高精度地图的中间层数据安全提交方法,解决在高精度地图领域中大量并发作业环境下数据往往无法安全提交的问题,实现安全连接、任务有序排队的防护作用,达到降低数据提交故障率,数据提交过程更加安全的目的。

本发明实施例中使用的电脑环境为postgres9.4,postgis9.4,开发环境为vs2015+qt5,redis2.4.5。

图1为本发明实施的流程图,其具体的实施方法如下所示:

步骤1,在redis中,设置数据流服务管理层与控制中间层两部分,控制中间层包含数据缓存和指令缓存两部分,所要提交的数据集写入数据缓存,同时生成解析任务指令,写入指令缓存。

步骤2:数据流服务管理层获取解析任务指令,将任务信息提交逻辑处理单元。

步骤3:逻辑处理单元读取任务信息的缓存数据并连接数据库,事务化提交结果。

步骤4:获取提交状态。

步骤5:提交异常,则保留数据缓存,回填指令,以待重新执行成功。

步骤6:提交成功,则完成数据入库,清理数据缓存以便下次任务写入。

本发明的实施例二提供了能够实现上述应用于高精度地图的中间层数据安全提交方法全部步骤的一种应用于高精度地图的中间层数据安全提交装置的具体实施方式,所述中间层数据安全提交装置具体包括如下内容:

中间控制单元,主要实现控制中间层功能,包含数据缓存和指令缓存两部分,用于缓存数据和指令,在有数据提交任务时,提交指令供数据流服务管理单元提取和解析;

数据流服务管理单元,主要用于实现数据流服务管理层功能,订阅指令,并提取和解析指令,形成业务逻辑;

逻辑处理单元,主要实现执行业务逻辑,读取中间控制单元的缓存数据,并实现数据库连接和事务化提交,将最终结果写入数据库。

本发明提供的一种应用于高精度地图的中间层数据安全提交装置的实施例具体可以用于执行上述应用于高精度地图的中间层数据安全提交方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。

本发明实施例三提供了一种能够实现上述应用于高精度地图的中间层数据安全提交方法全部步骤的一种应用于高精度地图的中间层数据安全提交设备的具体实施方式,所述设备包括:处理器、存储器和总线;

其中,处理器和存储器通过所述总线完成相互间的通信;

处理器用于调用存储器中的程序指令,以执行上述方法实施例所提供的方法,具体步骤不再赘述,可以参照上述方法实施例的详细描述。

此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。

本发明实施例提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,具体步骤不再赘述,可以参照上述方法实施例的详细描述。

本发明实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,体步骤不再赘述,可以参照上述方法实施例的详细描述。

以上所描述的装置及设备等实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1