CN112506887B - 车辆终端can总线数据处理方法及装置 - Google Patents
车辆终端can总线数据处理方法及装置 Download PDFInfo
- Publication number
- CN112506887B CN112506887B CN202011381262.9A CN202011381262A CN112506887B CN 112506887 B CN112506887 B CN 112506887B CN 202011381262 A CN202011381262 A CN 202011381262A CN 112506887 B CN112506887 B CN 112506887B
- Authority
- CN
- China
- Prior art keywords
- data
- real
- time
- detail
- bus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 9
- 238000003860 storage Methods 0.000 claims abstract description 40
- 238000012545 processing Methods 0.000 claims abstract description 33
- 238000004458 analytical method Methods 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims abstract description 24
- 238000004364 calculation method Methods 0.000 claims abstract description 21
- 230000008569 process Effects 0.000 claims abstract description 11
- 238000004590 computer program Methods 0.000 claims description 13
- 238000004140 cleaning Methods 0.000 claims description 8
- 238000013500 data storage Methods 0.000 claims description 7
- 230000002159 abnormal effect Effects 0.000 claims description 5
- 238000009826 distribution Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 21
- 238000004891 communication Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 15
- 238000005516 engineering process Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 239000000872 buffer Substances 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000011068 loading method Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010223 real-time analysis Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003638 chemical reducing agent Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- ZLIBICFPKPWGIZ-UHFFFAOYSA-N pyrimethanil Chemical compound CC1=CC(C)=NC(NC=2C=CC=CC=2)=N1 ZLIBICFPKPWGIZ-UHFFFAOYSA-N 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40267—Bus for use in transportation systems
- H04L2012/40273—Bus for use in transportation systems the transportation system being a vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明提供了车辆终端CAN总线数据处理方法及装置,方法包括:获取车辆终端的CAN总线数据;对所述的CAN总线数据进行解析确定CAN总线数据中明细数据;将确定的明细数据按照实时数据模式及历史数据模式分别存储至分布式数据库。本发明实现各车辆终端CAN数据的实时接入、解析、计算、存储之间建立起有效合理的连接,并且保证数据在流转过程中的时效性和准确性。克服现有技术中,CAN总线数据实时接入、解析、计算、存储之间不容易达成的时效性和实时计算的问题,提高CAN总线数据的处理效率及超大量数据的存储。
Description
技术领域
本发明涉及数据处理技术,具体的讲是一种车辆终端CAN总线数据处理方法及装置。
背景技术
随着移动通信技术和车联网配套技术的不断发展。公交企业对于目前已经不能满足于现有的车联网终端可以采集的感知数据。伴随着公交企业数字化转型的需求,对感知数据实时性、全面性提出了更高的要求。原有的车载终端设备、通信协议、物联网平台无法满足此场景的应用需求。并且对于各类车辆的CAN数据没有统一的标准协议。针对此场景急需一整套稳定的硬件、通信、平台及大数据完整解决方案。
现有智能公交行业车联网通讯协议除了各厂家私有协议外。JT/T 808道路运输车辆卫星定位系统终端通讯协议及其扩展协议应用的比较广泛。各行业团体会以此协议进行扩展用以在原有智能公交业务基础之上扩展新的业务领域。但此协议并不能全面的规定对于整车CAN数据的网络传输协议。并且在电动汽车方面GB/T 32960的相关技术规范也不足以覆盖更深一步的整车数据采集的规范。由此相关的配套平台也不具备对多车型、多燃料类型及更全面的整车数据感知和采集提供支撑。针对于更全面的CAN数据采集仅能满足部分要求。
现有技术中,主流车联网平台不能满足CAN数据采集的高频度、高实时性的要求,主流车辆网平台不能满足海量数据的实时解析、计算和存储能力。
发明内容
为解决现有技术中的至少一问题,解决海量CAN总线数据的接入、解析、计算机存储问题,本发明提供了一种车辆终端CAN总线数据处理方法,包括:
获取车辆终端的CAN总线数据;
对所述的CAN总线数据进行解析确定所述CAN总线数据中的明细数据;
将确定的明细数据按照实时数据模式及历史数据模式分别存储至分布式数据库。
本发明实施例中,所述的分布式数据库包括:Doris、Hbase、HDFS。
本发明实施例中,所述的方法还包括:将解析后的CAN总线数据通过kafka集群中间件上传至分布式数据库。
本发明实施例中,所述的将确定的明细数据按照实时数据模式及历史数据模式分别存储至分布式数据库包括:
将所述明细数据按照实时数据模式存储至分布式数据库Hbase和HDFS;
将所述明细数据按照历史数据模式存储至分布式数据库Doris。
同时,本发明还提供一种车辆终端CAN总线数据处理装置,包括:
数据获取模块,用于获取车辆终端的CAN总线数据;
解析模块,用于对所述的CAN总线数据进行解析确定所述CAN总线数据中的明细数据;
存储模块,用于将确定的明细数据按照实时数据模式及历史数据模式分别存储至分布式数据库。
本发明实施例中,所述的分布式数据库包括:Doris、Hbase、HDFS;
本发明实施例中,所述的装置还包括:
数据上传模块,用于将解析后的CAN总线数据通过kafka集群上传至分布式数据库。
本发明实施例中,所述的存储模块包括:
实时数据存储单元,将所述明细数据按照实时数据模式存储至分布式数据库Hbase和HDFS;
历史数据存储单元,将所述明细数据按照历史数据模式存储至分布式数据库Doris。
同时,本发明还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述方法。
同时,本发明还提供一种计算机可读存储介质,计算机可读存储介质存储有执行上述方法的计算机程序。
本发明将各车辆终端的CAN数据的实时接入、解析、计算、存储之间建立起有效合理的连接,并且保证数据在流转过程中的时效性和准确性,克服现有技术中,CAN总线数据实时接入、解析、计算、存储之间不容易达成的时效性和实时计算的问题,提高CAN总线数据的处理效率及超大量数据的存储。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的车辆终端CAN总线数据处理方法的流程图;
图2为本发明实施例中的示意图;
图3为本发明实施例中的示意图;
图4为本发明提供的车辆终端CAN总线数据处理装置的框图;
图5为本发明实施例中的框图;
图6为本发明实施例中提供的电子设备实施例的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中,智能公交行业车联网通讯协议除了各厂家私有协议外。JT/T 808道路运输车辆卫星定位系统终端通讯协议及其扩展协议应用的比较广泛。各行业团体以此协议进行扩展用以在原有智能公交业务基础之上扩展新的业务领域。但此协议并不能全面的规定对于整车CAN数据的网络传输协议。并且在电动汽车方面GB/T 32960的相关技术规范也不足以覆盖更深一步的整车数据采集的规范。同时,现有技术中,传统车联网设备不能实时高频度的采集整车CAN数据,主流车联网平台不能满足CAN数据采集的高频度、高实时性的要求,主流车辆网平台不能满足海量数据的实时解析、计算和存储能力。
基于此,为解决海量CAN总线数据的接入、解析、计算机存储问题,本发明提供一种车辆终端CAN总线数据处理方法,如图1所示,该方法包括:
步骤S101,获取车辆终端的CAN总线数据;
步骤S102,对所述的CAN总线数据进行解析确定所述CAN总线数据中的明细数据;
步骤S103,将明细数据按照实时数据模式及历史数据模式分别存储至分布式数据库。
本发明通过对CAN总线数据进行解析确定CAN总线数据中的实时数据、明细数据以及历史数据,通过对现有无线网络传输协议扩展解决新的业务能力扩展并且保持原业务不重建、不中断的问题。通过将确定的实时数据、明细数据及历史数据存储至分布式数据库,解决海量CAN数据实时接入、解析、计算、存储的问题。
如图2所示,为本发明一实施例中提供的实现远程传输CAN总线数据及时接入、解析、计算、存储的实施例的示意图。
车载数据终端通过808协议将整车CAN网络中的数据上传至平台端(中心-通信接入平台),C++解析服务的C++解析程序解析完成后上报解析数据至大数据集群的Kafka集群,通过Flink对于Kafka集群中的数据进行ETL清洗和状态计算,将把接入数据再拆分成N个Kafka集团分发数据。
本发明实施例中,通过中心-通信接入平台将上传的CAN总线数据进行解析,解析程序将CAN总线数据由按照J1939格式的二进制原始数据按照协议解析为与各车辆零部件对应的十进制明细数据,将解析后的CAN总线明细数据通过kafka集群中间件上传至分布式数据库。
将明细数据按照实时数据模式及历史数据模式分别存储至分布式数据库,将明细数据按照实时数据模式存储至分布式数据库Hbase和HDFS,实现CAN总线明细数据历史数据模式入库。具体的,本发明一实施例中通过预先设置一存储时间,使得明细数据在分布式数据库Hbase和HDFS存储预设的时长,以将明细数据的作为实时数据实现实时查询。
同时,将明细数据按照历史数据模式存储至分布式数据库Doris,即将明细数据永久存储于分布式数据库Doris作为历史数据,实现CAN总线明细数据实时数据模式入库。
本发明一实施例中,通过kafka集群中间件上传后,可以再通过Flink等清洗工具对实时接入数据进行接入封装和处理落库,将明细数据作为用于实现实时查询的实时数据落入HDFS和Hbase中,同时将明细数据落入Doris。落入HDFS和Hbase当中的实时数据,为后续提供封装的实时数据提供数据支撑;明细数据同时落入到Doris集群中,为后续提供明细数据的查询及统计接口提供数据支撑。
本发明实施例中,涉及的各技术手段解释如下:
本发明实施例中,通过C++通信协议解析实现数据解析。C++通信协议解析,C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。C++不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。
Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。消费者的这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。对于像Hadoop一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消息。(数据交换)
DataX是被广泛使用的离线数据同步工具/平台,实现包括MySQL、Oracle、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、DRDS等各种异构数据源之间高效的数据同步功能。用于实现数据交换。
Flink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。此外,Flink的运行时本身也支持迭代算法的执行。用于实现数据计算。
Spark是专为大规模数据处理而设计的快速通用的计算引擎。现在形成一个高速发展应用广泛的生态系统。Spark主要有三个特点:首先,高级API剥离了对集群本身的关注,Spark应用开发者可以专注于应用所要做的计算本身;其次,Spark很快,支持交互式计算和复杂算法;最后,Spark是一个通用引擎,可用它来完成各种各样的运算,包括SQL查询、文本处理、机器学习等,而在Spark出现之前,我们一般需要学习各种各样的引擎来分别处理这些需求。
Hadoop分布式文件系统(HDFS)是指被设计成适合运行在通用硬件(commodityhardware)上的分布式文件系统(Distributed File System)。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。HDFS放宽了一部分POSIX约束,来实现流式读取文件系统数据的目的。HDFS有着高容错性(fault-tolerant)的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求(requirements)这样可以实现流的形式访问(streaming access)文件系统中的数据。
Doris是分布式、面向交互式查询的分布式数据库,主要部分是SQL,内部用到MPP技术。MPP(Massively Parallel Processing),即大规模并行处理,在数据库非共享集群中,每个节点都有独立的磁盘存储系统和内存系统,业务数据根据数据库模型和应用特点划分到各个节点上,每台数据节点通过专用网络或者商业通用网络互相连接,彼此协同计算,作为整体提供数据库服务。非共享数据库集群有完全的可伸缩性、高可用、高性能、优秀的性价比、资源共享等优势。简单来说,MPP是将任务并行的分散到多个服务器和节点上,在每个节点上计算完成后,将各自部分的结果汇总在一起得到最终的结果(与Hadoop相似)。Doris主要解决PB级别的数据量(如果高于PB级别,不推荐使用Doris解决,可以考虑用Hive等工具),解决结构化数据,查询时间一般在秒级或毫秒级。
Hive是基于Hadoop构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop分布式文件系统中的数据:可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能;可以将SQL语句转换为MapReduce任务运行,通过自己的SQL查询分析需要的内容,这套SQL简称Hive SQL,使不熟悉mapreduce的用户可以很方便地利用SQL语言查询、汇总和分析数据。而mapreduce开发人员可以把自己写的mapper和reducer作为插件来支持hive做更复杂的数据分析。它与关系型数据库的SQL略有不同,但支持了绝大多数的语句如DDL、DML以及常见的聚合函数、连接查询、条件查询。它还提供了一系列的进行数据提取转化加载,用来存储、查询和分析存储在Hadoop中的大规模数据集,并支持UDF(User-Defined Function)、UDAF(User-Defnes AggregateFunction)和USTF(User-Defined Table-Generating Function),也可以实现对map和reduce函数的定制,为数据操作提供了良好的伸缩性和可扩展性。hive不适合用于联机(online)事务处理,也不提供实时查询功能。它最适合应用在基于大量不可变数据的批处理作业。hive的特点包括:可伸缩(在Hadoop的集群上动态添加设备)、可扩展、容错、输入格式的松散耦合。
HBase是一个高可靠、高性能、面向列、可伸缩的分布式数据库,是谷歌BigTable的开源实现,主要用来存储非结构化和半结构化的松散数据。HBase的目标是处理非常庞大的表,可以通过水平扩展的方式,利用廉价计算机集群处理由超过10亿行数据和数百万列元素组成的数据表。
Hadoop分布式文件系统(HDFS)、Doris、Hive、Hbase作为大数据集群的组件作为数据存储和仓库的能力出众,但是对于大数据量的实时计算能力比较薄弱,并且很占用现有资源。
Flink、Spark作为数据实时计算的工具,他们的实时计算能力出众,但是不具备数据存储的能力。并且也没有对于实时数据的接入能力。
Kafka、DataX作为数据交换的工具,他们只具备数据中间件的能力,不具备数据计算和存储的能力。
本发明通过中心平台技术方案,将获取的CAN总线数据进行解析后上传至Kafka集群,通过Kafka集群对解析后的数据分别进行处理,从而解决海量CAN数据实时接入、解析、计算、存储的问题。
如图3所示,为本发明实施例中上报解析数据至大数据集群,大数据平台对上报数据进行处理的示意图。
C++解析程序解析完成CAN数据后,上报解析数据至大数据集群的Kafka集群中的SRC主题;
通过Flink对于Kafka(SRC)集群中的数据进行ETL清洗和状态计算,本实施例中,将把接入数据分成两大Kafka集群14个主题,其中包括1个数据异常主题的Kafka集群和13个功能主题的Kafka集群。
本实施例中,这两个集群会通过三个处理方式对接入的数据进行处理:
第一,Flink实时数据入库程序,把实时数据落入HDFS和Hbase当中,为后续提供封装的实时数据提供数据支撑;
第二,Flink明细数据入库程序,会把实时的明细数据落入到Doris集群中,为后续提供明细数据的查询及统计接口提供数据支撑;
第三,通过Spark的落盘程序,把历史数据和异常数据经过Spark离线数据仓库建设程序按天、小时分区落入到Hive当中供外部查询,最终将所有数据存储到蓝光存储构建的HDFS存储仓库中。
本发明的技术方案提供更好的决策,更好的决策是CAN数据采集分析工作的首要目标。而首要目标的依赖则是数据实时准确的采集和落入。CAN数据采集分析可以为业务决策者提供他们所需的数据驱动的洞察力,以帮助企业开展竞争和业务发展。
本发明的技术方案提高生产力,CAN数据采集依赖的方案使分析师能够更快地分析更多数据,从而提高个人生产力。此外,从这些分析中获得的见解通常使组织能够在整个公司内更广泛地提高生产力。
本发明的技术方案改善客户服务,根据采集的数据的分析能够提供给车辆厂商提供整车在使用过程中所遇到的隐性问题,他们很自然地会使用这些数据来更好地为这些客户提供服务。
本发明的技术方案增加收入:当组织使用大数据来改善决策并改善客户服务时,增加收入通常是一个自然的结果
本发明的技术把CAN数据实时接入、解析、计算、存储之间建立起有效合理的连接,并且保证数据在流转过程中的时效性和准确性。
同时,如图4所示,本发明还提供一种车辆终端CAN总线数据处理装置,包括:
数据获取模块401,用于获取车辆终端的CAN总线数据;
解析模块402,用于对所述的CAN总线数据进行解析确定所述CAN总线数据中的明细数据;
存储模块403,用于将确定的明细数据按照实时数据模式及历史数据模式分别存储至分布式数据库。
所述的分布式数据库包括:Doris、Hbase、HDFS。
本实施例提供的装置还包括:
数据上传模块,用于将解析后的CAN总线数据通过kafka集群中间件上传至分布式数据库。
如图5所示,本发明实施例中,存储模块403包括:
实时数据存储单元4031,将所述明细数据按照实时数据模式存储至分布式数据库Hbase和HDFS;
历史数据存储单元4032,将所述明细数据按照历史数据模式存储至分布式数据库Doris。
本实施例还提供一种电子设备,该电子设备可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该电子设备可以参照前述方法及装置的实施例,其内容被合并于此,重复之处不再赘述。
图6为本发明实施例的电子设备600的系统构成的示意框图。如图6所示,该电子设备600可以包括中央处理器100和存储器140;存储器140耦合到中央处理器100。值得注意的是,该图是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
一实施例中,车辆终端CAN总线数据处理功能可以被集成到中央处理器100中。其中,中央处理器100可以被配置为进行如下控制:
获取车辆终端的CAN总线数据;
对所述的CAN总线数据进行解析确定所述CAN总线数据中的明细数据;
将确定的明细数据按照实时数据模式及历史数据模式分别存储至分布式数据库。
本发明实施例中,所述的分布式数据库包括:Doris、Hbase、HDFS。
本发明实施例中,所述的方法还包括:将解析后的CAN总线数据通过kafka集群中间件上传至分布式数据库。
本发明实施例中,所述的将确定的明细数据按照实时数据及历史数据分别存储至分布式数据库包括:
将所述明细数据按照实时数据模式存储至分布式数据库Hbase和HDFS;
将所述明细数据按照历史数据模式存储至分布式数据库Doris。
在另一个实施方式中,车辆终端CAN总线数据处理装置可以与中央处理器100分开配置,例如可以将车辆终端CAN总线数据处理装置配置为与中央处理器100连接的芯片,通过中央处理器的控制来实现车辆终端CAN总线数据处理功能。
如图6所示,该电子设备600还可以包括:通信模块110、输入单元120、音频处理单元130、显示器160、电源170。值得注意的是,电子设备600也并不是必须要包括图6中所示的所有部件;此外,电子设备600还可以包括图6中没有示出的部件,可以参考现有技术。
如图6所示,中央处理器100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器100接收输入并控制电子设备600的各个部件的操作。
其中,存储器140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器100可执行该存储器140存储的该程序,以实现信息存储或处理等。
输入单元120向中央处理器100提供输入。该输入单元120例如为按键或触摸输入装置。电源170用于向电子设备600提供电力。显示器160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器140还可以是某种其它类型的装置。存储器140包括缓冲存储器141(有时被称为缓冲器)。存储器140可以包括应用/功能存储部142,该应用/功能存储部142用于存储应用程序和功能程序或用于通过中央处理器100执行电子设备600的操作的流程。
存储器140还可以包括数据存储部143,该数据存储部143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器140的驱动程序存储部144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块110即为经由天线111发送和接收信号的发送机/接收机110。通信模块(发送机/接收机)110耦合到中央处理器100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)110还经由音频处理器130耦合到扬声器131和麦克风132,以经由扬声器131提供音频输出,并接收来自麦克风132的音频输入,从而实现通常的电信功能。音频处理器130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器130还耦合到中央处理器100,从而使得可以通过麦克风132能够在本机上录音,且使得可以通过扬声器131来播放本机上存储的声音。
本发明实施例还提供一种计算机可读程序,其中当在电子设备中执行所述程序时,所述程序使得计算机在所述电子设备中执行如上面实施例所述的车辆终端CAN总线数据处理方法。
本发明实施例还提供一种存储有计算机可读程序的存储介质,其中所述计算机可读程序使得计算机在电子设备中执行上面实施例所述的车辆终端CAN总线数据处理。
对本领域技术人员而言,通过前述的实施例的描述可清楚获知本发明实施例中关于车辆终端CAN总线数据处理装置及电子设备的实施方式,在此不再赘述。
以上参照附图描述了本发明的优选实施方式。这些实施方式的许多特征和优点根据该详细的说明书是清楚的,因此所附权利要求旨在覆盖这些实施方式的落入其真实精神和范围内的所有这些特征和优点。此外,由于本领域的技术人员容易想到很多修改和改变,因此不是要将本发明的实施方式限于所例示和描述的精确结构和操作,而是可以涵盖落入其范围内的所有合适修改和等同物。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (4)
1.一种车辆终端CAN总线数据处理方法,其特征在于,所述的方法包括:
获取车辆终端的CAN总线数据;
对所述的CAN总线数据进行解析确定所述CAN总线数据中的明细数据;
将确定的明细数据按照实时数据模式及历史数据模式分别存储至分布式数据库;
所述的方法还包括:
将解析后的CAN总线数据通过kafka集群中间件上传至分布式数据库;
C++解析服务的C++解析程序解析完成后上报解析数据至大数据集群的Kafka集群,通过Flink对于Kafka集群中的数据进行ETL清洗和状态计算,将把接入数据再拆分成N个Kafka集团分发数据;
解析程序将CAN总线数据由按照J1939格式的二进制原始数据按照协议解析为与各车辆零部件对应的十进制明细数据,将解析后的CAN总线明细数据通过kafka集群中间件上传至分布式数据库;
所述的分布式数据库包括:Doris、Hbase及HDFS;
所述的将确定的明细数据按照实时数据模式及历史数据模式分别存储至分布式数据库包括:
将所述明细数据按照实时数据模式存储至分布式数据库Hbase和HDFS;
将所述明细数据按照历史数据模式存储至分布式数据库Doris;
通过kafka集群中间件上传后,再通过Flink清洗工具对实时接入数据进行接入封装和处理落库,将明细数据作为用于实现实时查询的实时数据落入HDFS和Hbase中,同时将明细数据落入Doris,落入HDFS和Hbase当中的实时数据,为后续提供封装的实时数据提供数据支撑;明细数据同时落入到Doris集群中,为后续提供明细数据的查询及统计接口提供数据支撑;
通过Flink对于Kafka集群中的数据进行ETL清洗和状态计算,将接入数据分成两大Kafka集群14个主题,其中包括1个数据异常主题的Kafka集群和13个功能主题的Kafka集群;
这两个集群通过三个处理方式对接入的数据进行处理:
第一,Flink实时数据入库程序,把实时数据落入HDFS和Hbase当中,为后续提供封装的实时数据提供数据支撑;
第二,Flink明细数据入库程序,会把实时的明细数据落入到Doris集群中,为后续提供明细数据的查询及统计接口提供数据支撑;
第三,通过Spark的落盘程序,把历史数据和异常数据经过Spark离线数据仓库建设程序按天、小时分区落入到Hive当中供外部查询,最终将所有数据存储到蓝光存储构建的HDFS存储仓库中。
2.一种车辆终端CAN总线数据处理装置,其特征在于,所述的装置包括:
数据获取模块,用于获取车辆终端的CAN总线数据;
解析模块,用于对所述的CAN总线数据进行解析确定所述CAN总线数据中的明细数据;
存储模块,用于将确定的明细数据按照实时数据模式及历史数据模式分别存储至分布式数据库;
所述的装置还包括:
数据上传模块,用于将解析后的CAN总线数据通过kafka集群上传至分布式数据库;
C++解析服务的C++解析程序解析完成后上报解析数据至大数据集群的Kafka集群,通过Flink对于Kafka集群中的数据进行ETL清洗和状态计算,将把接入数据再拆分成N个Kafka集团分发数据;
解析程序将CAN总线数据由按照J1939格式的二进制原始数据按照协议解析为与各车辆零部件对应的十进制明细数据,将解析后的CAN总线明细数据通过kafka集群中间件上传至分布式数据库;
所述的分布式数据库包括:Doris、Hbase及HDFS;
所述的存储模块包括:
实时数据存储单元,将所述明细数据按照实时数据模式存储至分布式数据库Hbase和HDFS;
历史数据存储单元,将所述明细数据按照历史数据模式存储至分布式数据库Doris;
通过kafka集群中间件上传后,再通过Flink清洗工具对实时接入数据进行接入封装和处理落库,将明细数据作为用于实现实时查询的实时数据落入HDFS和Hbase中,同时将明细数据落入Doris,落入HDFS和Hbase当中的实时数据,为后续提供封装的实时数据提供数据支撑;明细数据同时落入到Doris集群中,为后续提供明细数据的查询及统计接口提供数据支撑;
通过Flink对于Kafka集群中的数据进行ETL清洗和状态计算,将接入数据分成两大Kafka集群14个主题,其中包括1个数据异常主题的Kafka集群和13个功能主题的Kafka集群;
这两个集群通过三个处理方式对接入的数据进行处理:
第一,Flink实时数据入库程序,把实时数据落入HDFS和Hbase当中,为后续提供封装的实时数据提供数据支撑;
第二,Flink明细数据入库程序,会把实时的明细数据落入到Doris集群中,为后续提供明细数据的查询及统计接口提供数据支撑;
第三,通过Spark的落盘程序,把历史数据和异常数据经过Spark离线数据仓库建设程序按天、小时分区落入到Hive当中供外部查询,最终将所有数据存储到蓝光存储构建的HDFS存储仓库中。
3.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1所述方法。
4.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011381262.9A CN112506887B (zh) | 2020-11-30 | 2020-11-30 | 车辆终端can总线数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011381262.9A CN112506887B (zh) | 2020-11-30 | 2020-11-30 | 车辆终端can总线数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112506887A CN112506887A (zh) | 2021-03-16 |
CN112506887B true CN112506887B (zh) | 2024-03-08 |
Family
ID=74969444
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011381262.9A Active CN112506887B (zh) | 2020-11-30 | 2020-11-30 | 车辆终端can总线数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112506887B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113568933A (zh) * | 2021-07-22 | 2021-10-29 | 上汽通用五菱汽车股份有限公司 | 车辆数据存储方法、车辆及可读存储介质 |
CN115277886B (zh) * | 2022-07-30 | 2023-06-27 | 重庆长安汽车股份有限公司 | 一种基于数据分发服务的车辆数据采集方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684352A (zh) * | 2018-12-29 | 2019-04-26 | 江苏满运软件科技有限公司 | 数据分析系统、方法、存储介质及电子设备 |
CN111506660A (zh) * | 2020-04-21 | 2020-08-07 | 瑞纳智能设备股份有限公司 | 一种热网实时数据仓系统 |
-
2020
- 2020-11-30 CN CN202011381262.9A patent/CN112506887B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109684352A (zh) * | 2018-12-29 | 2019-04-26 | 江苏满运软件科技有限公司 | 数据分析系统、方法、存储介质及电子设备 |
CN111506660A (zh) * | 2020-04-21 | 2020-08-07 | 瑞纳智能设备股份有限公司 | 一种热网实时数据仓系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112506887A (zh) | 2021-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10447772B2 (en) | Managed function execution for processing data streams in real time | |
CN109690524B (zh) | 分布式事件处理系统中的数据序列化 | |
US11625381B2 (en) | Recreating an OLTP table and reapplying database transactions for real-time analytics | |
US9965330B2 (en) | Maintaining throughput of a stream processing framework while increasing processing load | |
US10169433B2 (en) | Systems and methods for an SQL-driven distributed operating system | |
US8874600B2 (en) | System and method for building a cloud aware massive data analytics solution background | |
CN111209352B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN103268336A (zh) | 一种快数据和大数据结合的数据处理方法及其系统 | |
CN112506887B (zh) | 车辆终端can总线数据处理方法及装置 | |
Fernández-Rodríguez et al. | Benchmarking real-time vehicle data streaming models for a smart city | |
CN107016039B (zh) | 数据库写入的方法和数据库系统 | |
CN111177237B (zh) | 一种数据处理系统、方法及装置 | |
CN111382155A (zh) | 一种数据仓库的数据处理方法、电子设备及介质 | |
CN113282611A (zh) | 一种流数据同步的方法、装置、计算机设备及存储介质 | |
CN114820080A (zh) | 基于人群流转的用户分群方法、系统、装置及介质 | |
CN111159135A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN111126852A (zh) | 一种基于大数据建模的bi应用系统 | |
CN115033646A (zh) | 一种基于Flink&Doris构建实时数仓系统的方法 | |
CN112181678A (zh) | 业务数据的处理方法、装置和系统、存储介质、电子装置 | |
CN116126901A (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN116166191A (zh) | 湖仓一体系统 | |
Bansal et al. | Big data streaming with spark | |
Heintz et al. | Towards optimizing wide-area streaming analytics | |
Hashem et al. | A review of modeling toolbox for BigData | |
Wu et al. | RIVA: A Real-Time Information Visualization and analysis platform for social media sentiment trend |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |