[发明专利]数据处理方法、装置、设备和介质在审
申请号: | 201810986572.X | 申请日: | 2018-08-28 |
公开(公告)号: | CN109145164A | 公开(公告)日: | 2019-01-04 |
发明(设计)人: | 冯凯文;陈卓;党跃东;李科磊;鲍万宇;倪忠俊 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06F16/901 | 分类号: | G06F16/901;G06F16/903 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 目标主题 主题数据 数据处理 索引 名称字符串 访问指令 散列处理 索引查找 自动驾驶 索引表 构建 | ||
本发明实施例公开了一种数据处理方法、装置、设备和介质,涉及自动驾驶领域。该方法包括:接收包括目标主题ID的主题数据访问指令;在预先构建的主题数据索引列表中,以目标主题ID为索引查找目标主题的数据,其中所述主题数据索引列表是以主题ID为关键字,主题的数据为键值的索引表,所述主题ID是对主题的名称字符串进行散列处理得到的。本发明实施例提供的一种数据处理方法、装置、设备和介质,降低了对主题名称操作的开销。
技术领域
本发明实施例涉及自动驾驶领域,尤其涉及一种数据处理方法、装置、设备和介质。
背景技术
自动驾驶系统中,不同的模块间会基于主题(又称频道)进行数据通信。其中,主题是指分布式的信息发布或订阅中订阅或发布的主题,也可以理解为多个模块间的通信通道。
主题的名称往往是主题进行数据通信的多个模块名称组成的字符串。例如,控制系统(名称为apollo)、传感器模块(名称为sensor)和相机模块(名称为camera)通过某一主题进行数据通信,则该主题的名称是apollo/sensor/camera。
在底层数据存储中,系统需要用主题名称作为关键字,将不同主题的数据存储在表中。然而,由于主题名称字符串中字符较多,从而导致对包括较多字符的主题名称的操作开销大的问题。
发明内容
本发明实施例提供一种数据处理方法、装置、设备和介质,以降低对主题名称操作的开销。
第一方面,本发明实施例提供了一种数据处理方法,该方法包括:
接收包括目标主题ID(身份标识)的主题数据访问指令;
在预先构建的主题数据索引列表中,以目标主题ID为索引查找目标主题的数据,其中所述主题数据索引列表是以主题ID为关键字,主题的数据为键值的索引表,所述主题ID是对主题的名称字符串进行散列处理得到的。
进一步地,所述方法还包括:
若检测到任一主题的数据存在异常,则从主题数据索引列表中获取存在异常的主题的数据,以及从预先构建的ID索引列表中获取所述主题的名称字符串,其中所述ID索引列表是以各主题ID为关键字,各主题的名称字符串为键值的索引表;
依据获取的所述主题的名称字符串和所述主题的异常数据,生成所述主题的异常日志。
进一步地,所述接收包括目标主题ID的主题数据访问指令之前,所述方法还包括:
在初始化过程中获取各主题的名称字符串;
采用预设的散列算法,将各主题的名称字符串散列处理为定长的主题ID。
进一步地,所述将各主题的名称字符串散列处理为定长的主题ID之后,所述方法还包括:
在各主题的头部结构中添加各主题的主题ID。
进一步地,所述目标主题ID是从预先构建的ID索引列表中获取的,或是在预存的目标主题的头部结构中获取的。
第二方面,本发明实施例还提供了一种数据处理装置,该装置包括:
指令接收模块,用于接收包括目标主题ID身份标识的主题数据访问指令;
数据查找模块,用于在预先构建的主题数据索引列表中,以目标主题ID为索引查找目标主题的数据,其中所述主题数据索引列表是以主题ID为关键字,主题的数据为键值的索引表,所述主题ID是对主题的名称字符串进行散列处理得到的。
进一步地,所述装置还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810986572.X/2.html,转载请声明来源钻瓜专利网。