数据处理方法、装置、存储介质和电子设备制造方法及图纸

技术编号:34946757 阅读:9 留言:0更新日期:2022-09-17 12:22
本公开涉及数据处理方法、装置、存储介质和电子设备,应用于一种持久化存储模块,持久化存储模块应用于自适应平台汽车开放系统架构,持久化存储模块包括键值存储模块和数据库访问模块,所述方法包括:键值存储模块接收应用程序发送的基于数据表访问句柄生成的操作指令;键值存储模块将操作指令发送至数据库访问模块;数据库访问模块基于操作指令对目标数据表进行相应的操作,生成操作结果;数据库访问模块发送操作结果至键值存储模块;键值存储模块将操作结果发送至应用程序。本公开利用数据库对自适应平台汽车开放系统架构中应用程序的数据进行存储,保证了数据的持久性存储以及应用程序对数据操作的稳定性。及应用程序对数据操作的稳定性。及应用程序对数据操作的稳定性。

【技术实现步骤摘要】
数据处理方法、装置、存储介质和电子设备


[0001]本公开涉及自动驾驶领域,尤其涉及数据处理方法、装置、存储介质和电子设备。

技术介绍

[0002]自适应平台汽车开放系统架构(Adaptive Autosar,AP)的持久化存储模块为AP的应用程序和其他功能集提供了将信息存储在非易失性存储器中的机制。持久化存储模块提供了键值存储和文件存储两种存储方式。AP的应用和其他程序可以同时使用多个键值存储和文件存储的组合,不同的键值存储相互独立,单独存储。图1展示了现有系统使用键值存储的时序图,可以看出,每次打开新的键值存储文件时,都会申请一块内存空间存储数据,并从本地初始文件中同步数据到内存中。读取数据时会直接从内存中读取,在写入数据、修改数据和删除数据时,直接修改内存中数据,应用调用同步接口时将内存储中的数据同步到键值存储文件中。由于直接从内存中读取数据,读取数据效率很高,但是如果存储的数据很多,程序会占用大量的内存资源,并且数据以轻量级的数据交换格式JavaScript对象简谱(JavaScript Object Notation,Json)文件存储,每次同步数据到文件中时都会重新将内存中的数据写入文件中,该过程会直接覆盖原来的数据,因此如果写入失败,可能会导致所有数据丢失。

技术实现思路

[0003]为了解决上述提出的至少一个技术问题,本公开提出了数据处理方法、装置、存储介质和电子设备。
[0004]根据本公开的一方面,提供了一种数据处理方法,应用于一种持久化存储模块,所述持久化存储模块应用于自适应平台汽车开放系统架构,所述持久化存储模块包括键值存储模块和数据库访问模块,所述方法包括:
[0005]所述键值存储模块接收应用程序发送的基于数据表访问句柄生成的操作指令,所述数据表访问句柄指向所述应用程序所对应的目标数据表;
[0006]所述键值存储模块将所述操作指令发送至所述数据库访问模块;
[0007]所述数据库访问模块基于所述操作指令对所述目标数据表进行相应的操作,生成操作结果;
[0008]所述数据库访问模块发送所述操作结果至所述键值存储模块;
[0009]所述键值存储模块将所述操作结果发送至应用程序。
[0010]在一些可能的实施方式中,所述键值存储模块接收应用程序发送的基于数据表访问句柄生成的操作指令之前,所述方法还包括:
[0011]响应于接收到所述应用程序发送的创建数据表指令的情况,所述键值存储模块判断所述应用程序所对应的目标数据表是否存在;
[0012]若所述目标数据表存在,所述键值存储模块发送所述数据表访问句柄至所述应用程序;
[0013]若所述目标数据表不存在,所述键值存储模块发送所述创建数据表指令至所述数据库访问模块;
[0014]所述数据库访问模块响应于接收到所述创建数据表指令的情况,创建所述目标数据表,并在创建成功的情况下发送所述目标数据表对应的数据表访问句柄至所述键值存储模块;
[0015]所述键值存储模块发送所述数据表访问句柄至所述应用程序。
[0016]在一些可能的实施方式中,所述方法还包括:
[0017]响应于接收到所述应用程序发送的初始化数据库指令的情况,所述键值存储模块发送配置数据库类型指令至所述数据库访问模块;
[0018]所述数据库访问模块接收到所述配置数据库类型指令,配置目标数据库的类型,所述目标数据库为所述应用程序对应的数据库;
[0019]所述数据库访问模块根据所述目标数据库的类型获取所述数据库访问句柄;
[0020]所述数据库访问模块判断所述目标数据库的类型和上一次存储的数据库类型是否相同;
[0021]若不同,基于所述数据库访问句柄,将所述上一次存储的数据库中的所有数据迁移到所述目标数据库中;
[0022]所述数据库访问模块将所述数据库访问句柄发送至所述键值存储模块。
[0023]在一些可能的实施方式中,所述操作指令包括写入数据操作指令,所述数据库访问模块基于所述操作指令对所述目标数据表进行相应的操作包括:
[0024]获取第一目标数据和所述第一目标数据对应的第一键,所述第一目标数据为所述应用程序待写入目标数据表的数据;
[0025]判断所述目标数据表中是否存在所述第一键;
[0026]若存在,基于所述第一目标数据更新所述目标数据表中所述第一键对应的键值;
[0027]若不存在,将所述第一键和所述第一目标数据写入所述目标数据表。
[0028]在一些可能的实施方式中,所述操作指令还包括读取数据操作指令,所述数据库访问模块基于所述操作指令对所述目标数据表进行相应的操作还包括:
[0029]获取第二键,所述第二键为所述应用程序待读取的第二目标数据所对应的键;
[0030]判断所述目标数据表中是否存在所述第二键;
[0031]若存在,返回所述目标数据表中所述第二键对应的所述第二目标数据;
[0032]若不存在,返回读取失败信息。
[0033]在一些可能的实施方式中,所述操作指令还包括删除数据操作指令,所述数据库访问模块基于所述操作指令对所述目标数据表进行相应的操作还包括:
[0034]获取第三键,所述第三键为所述应用程序待删除的第三目标数据对应的键;
[0035]删除所述目标数据表中所述第三键对应的所述第三目标数据。
[0036]在一些可能的实施方式中,所述操作指令还包括删除键值操作指令,所述数据库访问模块基于所述操作指令对所述目标数据表进行相应的操作还包括:
[0037]删除所述目标数据表中所有键及其对应的键值;
[0038]所述操作指令还包括删除数据表操作指令;
[0039]所述数据库访问模块基于所述操作指令对所述目标数据表进行相应的操作还包
括:
[0040]删除所述目标数据表。
[0041]根据本公开的第二方面,提供一种数据处理装置,应用于一种持久化存储模块,所述持久化存储模块应用于自适应平台汽车开放系统架构,所述持久化存储模块包括键值存储模块和数据库访问模块,所述装置包括:
[0042]操作指令接收模块,用于所述键值存储模块接收应用程序发送的基于数据表访问句柄生成的操作指令,所述数据表访问句柄指向所述应用程序所对应的目标数据表;
[0043]操作指令转发模块,用于所述键值存储模块将所述操作指令发送至所述数据库访问模块;
[0044]操作执行模块,用于所述数据库访问模块基于所述操作指令对所述目标数据表进行相应的操作,生成操作结果;
[0045]操作结果发送模块,用于所述数据库访问模块发送所述操作结果至所述键值存储模块;
[0046]操作结果转发模块,用于所述键值存储模块将所述操作结果发送至应用程序。
[0047]根据本公开的第三方面,提供了一种电子设备,包括至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,应用于一种持久化存储模块,所述持久化存储模块应用于自适应平台汽车开放系统架构,所述持久化存储模块包括键值存储模块和数据库访问模块,其特征在于,所述方法包括:所述键值存储模块接收应用程序发送的基于数据表访问句柄生成的操作指令,所述数据表访问句柄指向所述应用程序所对应的目标数据表;所述键值存储模块将所述操作指令发送至所述数据库访问模块;所述数据库访问模块基于所述操作指令对所述目标数据表进行相应的操作,生成操作结果;所述数据库访问模块发送所述操作结果至所述键值存储模块;所述键值存储模块将所述操作结果发送至应用程序。2.根据权利要求1所述的方法,其特征在于,所述键值存储模块接收应用程序发送的基于数据表访问句柄生成的操作指令之前,所述方法还包括:响应于接收到所述应用程序发送的创建数据表指令的情况,所述键值存储模块判断所述应用程序所对应的目标数据表是否存在;若所述目标数据表存在,所述键值存储模块发送所述数据表访问句柄至所述应用程序;若所述目标数据表不存在,所述键值存储模块发送所述创建数据表指令至所述数据库访问模块;所述数据库访问模块响应于接收到所述创建数据表指令的情况,创建所述目标数据表,并在创建成功的情况下发送所述目标数据表对应的数据表访问句柄至所述键值存储模块;所述键值存储模块发送所述数据表访问句柄至所述应用程序。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:响应于接收到所述应用程序发送的初始化数据库指令的情况,所述键值存储模块发送配置数据库类型指令至所述数据库访问模块;所述数据库访问模块接收到所述配置数据库类型指令,配置目标数据库的类型,所述目标数据库为所述应用程序对应的数据库;所述数据库访问模块根据所述目标数据库的类型获取所述数据库访问句柄;所述数据库访问模块判断所述目标数据库的类型和上一次存储的数据库类型是否相同;若不同,基于所述数据库访问句柄,将所述上一次存储的数据库中的所有数据迁移到所述目标数据库中;所述数据库访问模块将所述数据库访问句柄发送至所述键值存储模块。4.根据权利要求1所述的方法,其特征在于,所述操作指令包括写入数据操作指令,所述数据库访问模块基于所述操作指令对所述目标数据表进行相应的操作包括:获取第一目标数据和所述第一目标数据对应的第一键,所述第一目标数据为所述应用程序待写入目标数据表的数据;判断所述目标数据表中是否存在所述第一键;若存在,基于所述第一目标数据更新所述目标数据表中所述第一键对应的键值;
若不存在,将所述第一键和所述...

【专利技术属性】
技术研发人员:唐剑闫国启姜壮
申请(专利权)人:中汽创智科技有限公司
类型:发明
国别省市:

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

1