一种基于ROS2的数据存储方法技术

技术编号:40576937 阅读:32 留言:0更新日期:2024-03-06 17:18
本发明专利技术公开了一种基于ROS2的数据存储方法,实施步骤如下:数据存储抽象层基于数据库操作如创建数据库、创建数据表、对数据进行增删改查多种功能进行抽象,提供统一的规范接口,支持多种数据库,从而实现业务代码与数据库的解耦;数据库存储服务为独立进程,通过ROS2向其它进程提供服务;当多个进程同时访问同一个数据库文件时,通过ROS2发送操作请求,数据库存储服务调用数据存储抽象接口完成操作并将结果返回给请求进程,可确保同一时间只有一个数据库连接,进而避免死锁或者访问失败的问题;在多进程访问本地数据库时,保证了同一时间数据库只存在一个连接,避免了多进程访问数据库时容易死锁或者访问失败的问题。

【技术实现步骤摘要】

本专利技术涉及数据存储,具体是一种基于ros2的数据存储方法。


技术介绍

1、在嵌入式开发时,多使用sqlite数据库进行数据的存储。sqlite是一个开源的嵌入式关系数据库,是一种轻量级的、自给自足的、无服务器的、无需配置的、事务性的sql数据库引擎,其特点是高度便携、使用方便、结构紧凑、高效、可靠,体积小,支持acid(原子性、一致性、独立性及持久性atomicity、consistency、isolation、durability)事物。

2、在实际的开发需求中,容易出现多个进程同时访问同一组数据。基于sqlite数据库的实现大都如图1所示。每个进程都独立调用sqlite api访问数据库,每当打开一次数据库都会建立一个连接。成功打开数据库后即可成功对数据进行增删改查操作。

3、ros2是在ros的基础上设计开发的第二代机器人操作系统,可以帮助简化机器人开发任务,加速机器人落地的软件库和工具集,支持dds通信协议。

4、基于现有技术,虽然可以实现多进程访问数据库,但是在高并发访问的情况下容易出现问题,如死锁或者访问本文档来自技高网...

【技术保护点】

1.一种基于ROS2的数据存储方法,其特征在于,包括数据存储模型,所述数据存储模型由数据存储抽象层以及数据存储服务两个模块构成,具体实施步骤如下:

2.根据权利要求1所述的一种基于ROS2的数据存储方法,其特征在于,所述数据存储方法的具体实施流程包括:

3.根据权利要求1所述的一种基于ROS2的数据存储方法,其特征在于,所述操作请求类型判断对数据的操作包括,如增删改查,调用数据存储抽象接口进行数据库的增删改查,获取操作结果。

4.根据权利要求1所述的一种基于ROS2的数据存储方法,其特征在于,所述数据存储模型为多进程访问数据本地数据库的模型。

<...

【技术特征摘要】

1.一种基于ros2的数据存储方法,其特征在于,包括数据存储模型,所述数据存储模型由数据存储抽象层以及数据存储服务两个模块构成,具体实施步骤如下:

2.根据权利要求1所述的一种基于ros2的数据存储方法,其特征在于,所述数据存储方法的具体实施流程包括:

3.根据权利要求1所述的一种基于ros2的数据存储方法,其特征在于,所述操作请求类型判断对数据的操作包括,如增删改查,调用数据存储抽象接口进行数据库的增删改查,获取操作结果。

4.根据权利要求1所述的一种基于ros2的数据存储方法,其特征在于,所述数据存储模型为多进程访问数据本地数据库的模型。

5.根据权利要求1所述的一种基于ros2的数据存储方法,其特征在于,所述数据存储模型通过数据库抽象模块支持使用多种数据库,使得应用和数据库解耦。

6.根据权利要求1所述的一种基于r...

【专利技术属性】
技术研发人员:唐剑季明清杜承志
申请(专利权)人:霞智科技有限公司
类型:发明
国别省市:

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

1