CN104767534B - 一种误差可控的车辆轨迹点压缩存储方法及系统 - Google Patents
一种误差可控的车辆轨迹点压缩存储方法及系统 Download PDFInfo
- Publication number
- CN104767534B CN104767534B CN201410837156.5A CN201410837156A CN104767534B CN 104767534 B CN104767534 B CN 104767534B CN 201410837156 A CN201410837156 A CN 201410837156A CN 104767534 B CN104767534 B CN 104767534B
- Authority
- CN
- China
- Prior art keywords
- tracing point
- point
- tracing
- compression
- index
- 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
Landscapes
- Time Recorders, Dirve Recorders, Access Control (AREA)
- Navigation (AREA)
Abstract
本发明提供了一种误差可控的车辆轨迹点压缩存储方法及系统,所述方法包括接收新轨迹点、加载旧轨迹点,对轨迹点能否合并进行判断,以及完成可合并轨迹点的合并,其中对轨迹点能否合并进行判断包括:遍历新旧两个轨迹点的对应指标项;判断所述对应指标项是否相同,若指标不同则步骤结束,若指标相同则判断是否存在下一指标;若下一指标存在,则继续遍历新旧两个轨迹点的对应指标项,若下一指标不存在,则进行轨迹点的合并,所述轨迹点的合并包括以下步骤:申请一个轨迹点结构;复制轨迹点所有指标值;更新轨迹点时间覆盖范围。本方案降低数据库的存储空间,节约存储成本,降低了资金投入、存储IO和系统设计难度,与此同时,针对不同车辆轨迹点进行误差判定,避免了由于指标误差导致轨迹点判断过程中无法合并压缩的问题。
Description
技术领域
本发明涉及数据压缩领域,尤其涉及一种误差可控的车辆轨迹点压缩存储方法及系统。
背景技术
车务通业务是使用支持卫星定位、基站定位的手持终端(含手机)或安装在车辆上的车载终端,基于中国移动通信网络,面向集团客户提供的车辆/人员位置监控与调度服务。车务通系统所采集的车辆轨迹点除了包含某辆车在某一时刻的经纬度信息之外,还能够记录该车行驶的方向、里程、速度、油量、引擎等信息。轨迹点是车辆位置应用的基础,在综合分析轨迹点相关参数的基础上,能够形成实时定位、轨迹回放、区域报警、超速报警等众多应用,具有广泛的应用价值。轨迹点要求采集时间精度高,时间间隔越小,越能精确还原车辆行驶轨迹,车务通系统当前采用每辆车每隔30秒上报一个轨迹点,每辆车一天将产生2*60*24=2880个轨迹点。随着客户车辆的增加,车务通系统将承担越来越繁重的轨迹点采集、存储、分析的工作。轨迹点由车载终端产生并发送到位置采集系统,位置采集系统收到轨迹点后,将其存储到数据库中。位置应用系统在运行时,从数据库中检索符合条件的轨迹点,再依次进行分析总结,最终得出结果。
现有轨迹点存储技术存在以下缺陷:每辆车每天产生2880个轨迹点,以30万辆车估算,每天将产生2880*300000=864000000个轨迹点,平均每秒产生10000个轨迹点,对存储IO、存储空间、应用分析都提出非常高的要求:
存储IO,数据量的增大要求更快的存储IO,需要使用更高级的存储设备,增加了资金投入;存储空间,每个轨迹点约300字节,则每天将产生864000000*300B≈241GB的数据,一年365天将产生约86TB的数据。如此庞大的存储量对存储空间也是一大挑战;统计分析,轨迹点是统计分析的基础,各项应用都需要遍历轨迹点,以便完成相应的分析功能。在短时间内要完成如此巨大的数据量,对软件开发人员也提出了更高的要求。
现有技术中,申请号CN201410390129.8号专利公开了一种用于北斗车载系统的定位数据压缩方法和系统,所述方法包括将所述N条定位数据依次转化为N条包含定位状态、纬度、经度、地面速度和地面方位的预处理定位数据,并利用预设的块计数器,记录所述N值;对所述N条包含定位状态、纬度、经度、地面速度和地面方位的N条预处理定位数据进行半字节压缩处理,得到N条第一压缩定位数据;将存储的第一条定位数据的语句标识头、世界标准时间、纬度半球、经度半球、日期和所述预设的块计数器记录的N值增加到所述N条第一压缩定位数据的第一条压缩定位数据的前端,和剩下的N-1条第一压缩定位数据一起组成第二压缩定位数据。其并不能解决由于大量数据导致的对存储IO、存储空间、应用分析带来的压力,也没有给出任何有关压缩过程中误差的规避方案。
发明内容
针对背景技术中出现的问题,本发明提出一种误差可控的车辆轨迹点压缩存储方法,包括接收新轨迹点、加载旧轨迹点,所述方法进一步包括对轨迹点能否合并进行判断,以及完成可合并轨迹点的合并,其中对轨迹点能否合并进行判断包括以下步骤:
遍历新旧两个轨迹点的对应指标项;
判断所述对应指标项是否相同,若指标不同则步骤结束,若指标相同则判断是否存在下一指标;
若下一指标存在,则继续遍历新旧两个轨迹点的对应指标项,若下一指标不存在,则进行轨迹点的合并,所述轨迹点的合并包括以下步骤:
申请一个轨迹点结构;
复制轨迹点所有指标值;
更新轨迹点时间覆盖范围。
优选的是,所述轨迹点划分为至少一个存储域,所述指标项的同类指标内容保存在一个存储域中。
在上述任一方案中优选的是,所述存储域包括当前方位、行驶状态、引擎状态中至少一种。
在上述任一方案中优选的是,所述当前方位包括经度、纬度、海拔中至少一种。
在上述任一方案中优选的是,所述行驶状态包括速度、方向中至少一种。
在上述任一方案中优选的是,所述引擎状态包括发动机开闭、水温、油量中至少一种。
在上述任一方案中优选的是,所述对轨迹点能否合并进行的判断的步骤中进一步包括:针对误差判定模块进行判断。
在上述任一方案中优选的是,所述误差判定模块包括车辆开闭模块、位置漂移模块、速度漂移模块、方向漂移模块中至少一种。
在上述任一方案中优选的是,所述车辆开闭模块取轨迹点的发动机开闭指标项,若发动机开启,则轨迹点不进行压缩;若发动机关闭,则进行后续的模块判定。
在上述任一方案中优选的是,所述位置漂移模块取轨迹点的经度、纬度指标,若经度差、纬度差小于预设值,则认定为定位漂移,轨迹点可进行压缩,进行后续模块判定;否则轨迹点不进行压缩。
在上述任一方案中优选的是,所述速度漂移模块取速度指标,若速度小于预设值,则认为是速度漂移,轨迹点可进行压缩,进行后续模块判定;否则轨迹点不进行压缩。
在上述任一方案中优选的是,所述方向漂移模块取方向指标。
在上述任一方案中优选的是,所述方法使用模块化的链式结构保存判定逻辑规则,所述误差判定模块数量、顺序根据不同车辆轨迹点进行相应调整。
本发明还提供给了一种误差可控的车辆轨迹点压缩存储系统,用于对轨迹点能否合并进行判断,以及完成可合并轨迹点的合并,所述系统包括:
轨迹点遍历单元,用于遍历新旧两个轨迹点的对应指标项;
轨迹点指标判断单元,用于判断所述对应指标项是否相同,若指标不同则步骤结束,若指标相同则判断是否存在下一指标,此时,若下一指标存在,则继续遍历新旧两个轨迹点的对应指标项,若下一指标不存在,则进行轨迹点的合并;
轨迹点合并单元,用于申请一个轨迹点结构,复制轨迹点所有指标值,更新轨迹点时间覆盖范围。
优选的是,所述轨迹点划分为至少一个存储域,所述指标项的同类指标内容保存在一个存储域中。
在上述任一方案中优选的是,所述存储域包括当前方位、行驶状态、引擎状态中至少一种。
在上述任一方案中优选的是,所述当前方位包括经度、纬度、海拔中至少一种。
在上述任一方案中优选的是,所述行驶状态包括速度、方向中至少一种。
在上述任一方案中优选的是,所述引擎状态包括发动机开闭、水温、油量中至少一种。
在上述任一方案中优选的是,所述轨迹点指标判断模块进一步包括:误差判定单元,用于针对不同轨迹点进行误差判断。
在上述任一方案中优选的是,所述误差判定单元包括车辆开闭单元、位置漂移单元、速度漂移单元、方向漂移单元中至少一种。
在上述任一方案中优选的是,所述车辆开闭单元取轨迹点的发动机开闭指标项,若发动机开启,则轨迹点不进行压缩;若发动机关闭,则进行后续的单元判定。
在上述任一方案中优选的是,所述位置漂移单元取轨迹点的经度、纬度指标,若经度差、纬度差小于预设值,则认定为定位漂移,轨迹点可进行压缩,进行后续模块判定;否则轨迹点不进行压缩。
在上述任一方案中优选的是,所述速度漂移单元取速度指标,若速度小于预设值,则认为是速度漂移,轨迹点可进行压缩,进行后续模块判定;否则轨迹点不进行压缩。
在上述任一方案中优选的是,所述方向漂移单元取方向指标。
在上述任一方案中优选的是,所述系统使用单元化的链式结构保存判定逻辑规则,所述误差判定单元数量、顺序根据不同车辆轨迹点进行相应调整。
本发明提供的技术方案降低数据库的存储空间,节约存储成本,降低了资金投入、存储IO和系统设计难度,与此同时,针对不同车辆轨迹点进行误差判定,避免了由于指标误差导致轨迹点判断过程中无法合并压缩的问题。方案着眼于车辆位置应用的特点,重点关注活跃轨迹点,将绝大多数静止轨迹点进行合并处理,有效节省了存储空间,提高了存储利用率。压缩过程简单快速,对性能无影响,并且直接读取不需要“解压”,大大减轻了后期数据统计分析的编写复杂度。通过对实际采集的车辆轨迹点进行分析,实际接收车辆上报轨迹点约249万个,压缩后输出轨迹点约24.9万个,压缩后节约了90%的存储空间。一年可节约86TB*90%=77TB的存储空间,从一定程度上减轻了存储系统的压力,降低了存储IO,提升了系统整体性能和运行效率。
附图说明
图1是按照本发明的车辆轨迹点压缩存储方法的一优选实施例的流程图。
图2是按照本发明的轨迹点存储结构示意图。
图3是按照本发明的车辆在关闭状态下使用位置漂移模块判定指标是否存在误差的流程图。
图4是按照本发明的车辆在关闭状态下使用速度漂移模块判定指标是否存在误差的流程图。
图5是按照本发明的车辆在关闭状态下使用方向漂移模块判定指标是否存在误差的流程图。
图6是按照本发明的多个判定模块共同完成判定指标是否存在误差的流程图。
具体实施方式
下面参照附图结合示例性的实施例对本发明进行详细描述。
实施例1:
如图1所示,为车辆轨迹点压缩存储一优选实施例的流程图,包括接收新轨迹点、加载旧轨迹点,所述方法进一步包括对轨迹点能否合并进行判断,以及完成可合并轨迹点的合并,其中对轨迹点能否合并进行判断包括以下步骤:
遍历新旧两个轨迹点的对应指标项;
判断所述对应指标项是否相同,若指标不同则步骤结束,若指标相同则判断是否存在下一指标;
若下一指标存在,则继续遍历新旧两个轨迹点的对应指标项,若下一指标不存在,则进行轨迹点的合并,所述轨迹点的合并包括以下步骤:
申请一个轨迹点结构;
复制所有指标值;
更新时间覆盖范围。
所述轨迹点划分为至少一个存储域,所述指标项的同类指标内容保存在一个存储域中。所述存储域包括当前方位、行驶状态、引擎状态中至少一种。所述当前方位包括经度、纬度、海拔中至少一种。所述行驶状态包括速度、方向中至少一种。所述引擎状态包括发动机开闭、水温、油量中至少一种。
通过对大量轨迹点进行研究,发现以下特征能够被利用到压缩处理中:
行业特性应用,对于一般的车辆位置应用,更多关注车辆的行驶状态,比如:速度、方向、方位、轨迹等指标;但对于一些工程车辆,比如挖掘机,可能更多注重车辆的工况指标:油量、水温、作业时间等。可以看出,各行各业对于车辆位置应用的需求不一,造成轨迹点指标数据有取有舍,随着行业应用多样化的增加,指标数量也会随之增加,完全存储这些指标会浪费较大空间,需要对轨迹点的存储结构进行优化设计;
车辆停车轨迹点,车辆大多数时间处于停车状态,以保险行业出险勘察车辆数据进行统计,平均每天行车时间不超过3小时。在车辆停止时,轨迹点依然会定时上报,此时轨迹点指标值一般会保持不变,由此为轨迹点的合并压缩提供了可能。
通过上述分析,本方案从两个方面对轨迹点进行压缩处理:
一方面对轨迹点的存储结构进行优化调整,将指标项进行分类,属性相似的归为一类,同类指标项保存在同一个存储域中。一个轨迹点被划分为多个存储域,如图2所示,包含三个存储域:当前方位:包含经度、纬度、海拔等指标项;运行状态:包含速度、方向等指标项;引擎状态:包含开关、水温、油量等指标项。每个存储域独立存储,无数据时不占用存储空间,如挖掘机只使用当前位置和引擎状态,不使用行驶状态,因此节省了这一部分存储空间,达到了压缩的目的。第二方面通过合并相邻的轨迹点,使得多个轨迹点变为一个,从而达到压缩的目的。
本实施例所述方案压缩方法思路清晰,通过同时取得新旧两个轨迹点,并依次将对应指标项进行对比,若完全相同,则符合合并条件,进行合并。合并过程的关键是更新时间覆盖范围,如此便能判断该轨迹点是合并生成的,覆盖某个时间段,而不是时间点。同时,本方案着眼于车辆位置应用的特点,重点关注活跃轨迹点,将绝大多数静止轨迹点进行合并处理,有效节省了存储空间,提高了存储利用率。压缩过程简单快速,对性能无影响,并且直接读取不需要“解压”,大大减轻了后期数据统计分析的编写复杂度。通过对实际采集的车辆轨迹点进行分析,实际接收车辆上报轨迹点约249万个,压缩后输出轨迹点约24.9万个,压缩后节约了90%的存储空间。一年可节约86TB*90%=77TB的存储空间,从一定程度上减轻了存储系统的压力,降低了存储IO,提升了系统整体性能和运行效率。
实施例2:
由于在实际数据压缩过程中车载终端经常会产生误差,导致采集到的轨迹点持续变化,大量的轨迹点无法被合并,误差通常由车载终端的定位精度、定位信号强弱、天气和电磁干扰等因素有关。以车辆在关闭状态为例,经常会出现位置漂移、速度漂移、方向漂移等典型误差,如图3所示,本实施例给出了在车辆关闭状态下,使用位置漂移模块判定指标是否存在误差的技术方案。若判定过程中由于指标存在误差,即可合并的轨迹点由于误差的存在没有合并,则进行轨迹点合并,若判定结果得到并非为误差所致,则过程结束。其中,所述位置漂移:定位坐标点产生漂移,在一个小范围内不断飘动,与定位精度不足有关。
本实施中通过算法减少误差,车辆关闭状态下,如果前后两个轨迹点的距离之差小于10米(可根据不同情况进行设定),则认为是漂移现象,将后一个轨迹点合并到前一个轨迹点。若大于10米,则认为车辆被动行驶(比如被拖行),不进行压缩,并标记该点为可疑轨迹点。
由于定位获取的是经纬度,因此要将距离换算为经纬度,以便快速比较。考虑到优化运算性能,假设地球是一个完美的球体,并且10米的误差解释为10*10米的矩形区域内,而不是直线距离10米。已知如下实测数据:
子午线长度为20016千米,覆盖纬度180度;
赤道周长40076千米,覆盖经度360度;
若要达到10*10米的精度范围,则解析度为:
纬度解析度=180度/20016000米*10米≈0.00009度
经度解析度=360度/40076000米*10米≈0.00009度
若前后两个轨迹点的经度差和纬度差均小于0.00009度,则认为是位置漂移点,将两点进行合并压缩处理。
本实施例所述方法逻辑简洁清晰,通过对前后两个轨迹点相关指标进行比较,即可决定是否需要压缩,对性能没有影响。并且由于压缩后仍遵循原数据结构,所以根本不需要“解压”过程,各类分析应用直接读取,非常适合轨迹点“一次写入,多次读取”的应用形式。
实施例3:
如图4所示,本实施例给出了在车辆关闭状态下,使用速度漂移模块判定指标是否存在误差的技术方案。若判定过程中由于指标存在误差,即可合并的轨迹点由于误差的存在没有合并,则进行轨迹点合并,若判定结果得到并非为误差所致,则过程结束。其中,所述速度漂移:速度瞬间大于零,然后又恢复到零,某些车载终端的当前速度是根据定位坐标推算出来,而不是通过车载电脑获取,所以一旦位置漂移较大,速度也随之增大。
如果车载设备读取的是行车电脑的速度值,则不认为是速度漂移。如果是通过定位计算的值,若仍以10米为误差范围,30秒上报一个轨迹点,则允许的速度漂移限度为:
速度限度=10米/30秒=(10/1000)千米/(30/3600)小时=1.2千米/小时
若车辆关闭状态下轨迹点速度值小于1.2千米/小时,则认为是速度漂移点,可以合并前后两个轨迹点。
本实施例所述方法逻辑简洁清晰,通过对前后两个轨迹点相关指标进行比较,即可决定是否需要压缩,对性能没有影响。并且由于压缩后仍遵循原数据结构,所以根本不需要“解压”过程,各类分析应用直接读取,非常适合轨迹点“一次写入,多次读取”的应用形式。
实施例4:
如图5所示,本实施例给出了在车辆关闭状态下,使用方向漂移模块判定指标是否存在误差的技术方案。若判定过程中由于指标存在误差,即可合并的轨迹点由于误差的存在没有合并,则进行轨迹点合并,若判定结果得到并非为误差所致,则过程结束。其中,所述方向漂移:车头方向不断旋转,观察到车辆自己在原地打转。
本实施例所述方法逻辑简洁清晰,通过对前后两个轨迹点相关指标进行比较,即可决定是否需要压缩,对性能没有影响。并且由于压缩后仍遵循原数据结构,所以根本不需要“解压”过程,各类分析应用直接读取,非常适合轨迹点“一次写入,多次读取”的应用形式。
实施例5:
如图6所示,本实施例给出了根据多个判定模块共同完成判定指标是否存在误差的判定过程。所述车辆开闭的判定取轨迹点的发动机开闭指标项,若发动机开启,则轨迹点不进行压缩;若发动机关闭,则进行后续的模块判定。所述位置漂移的判定取轨迹点的经度、纬度指标,若经度差、纬度差小于预设值,则认定为定位漂移,轨迹点可进行压缩,进行后续模块判定;否则轨迹点不进行压缩。
所述速度漂移的判定取速度指标,若速度小于预设值,则认为是速度漂移,轨迹点可进行压缩,进行后续模块判定;否则轨迹点不进行压缩。所述方向漂移模块取方向指标。
本实施例中,如实施例2、3得出的数据,位置误差设置为10*10米,经度差与纬度差均小于0.00009度,则认为是定位漂移,返回“是”可压缩,否则,返回“否”;当速度小于1.2千米/时认为是速度漂移,此时可压缩该轨迹点,返回“是”,否则,返回“否”;其中大多数应用不关注车辆关闭状态下的方向,此时可以返回“是”不参与决策。
本实施例公开的技术方案使用模块化的链式结构保存判定逻辑规则,并且根据不同车辆不同轨迹点可以增减判定模块和调整判定模块顺序,通过在原压缩算法基础上,扩展判定架构,将判定条件模块化,其中所述模块是一种可插拔结构,单独研发能够方便的添加至上述流程方法中。
实施例6
本实施例公开了一种误差可控的车辆轨迹点压缩存储系统,用于对轨迹点能否合并进行判断,以及完成可合并轨迹点的合并,所述系统包括:
轨迹点遍历单元,用于遍历新旧两个轨迹点的对应指标项;
轨迹点指标判断单元,用于判断所述对应指标项是否相同,若指标不同则步骤结束,若指标相同则判断是否存在下一指标,此时,若下一指标存在,则继续遍历新旧两个轨迹点的对应指标项,若下一指标不存在,则进行轨迹点的合并;
轨迹点合并单元,用于申请一个轨迹点结构,复制轨迹点所有指标值,更新轨迹点时间覆盖范围。
所述轨迹点划分为至少一个存储域,所述指标项的同类指标内容保存在一个存储域中。所述存储域包括当前方位、行驶状态、引擎状态中至少一种。所述当前方位包括经度、纬度、海拔中至少一种。所述行驶状态包括速度、方向中至少一种。所述引擎状态包括发动机开闭、水温、油量中至少一种。所述轨迹点指标判断单元进一步包括:误差判定单元,用于针对不同轨迹点进行误差判断。所述误差判定单元包括车辆开闭单元、位置漂移单元、速度漂移单元、方向漂移单元中至少一种。所述车辆开闭单元取轨迹点的发动机开闭指标项,若发动机开启,则轨迹点不进行压缩;若发动机关闭,则进行后续的单元判定。所述位置漂移单元取轨迹点的经度、纬度指标,若经度差、纬度差小于预设值,则认定为定位漂移,轨迹点可进行压缩,进行后续单元判定;否则轨迹点不进行压缩。所述速度漂移单元取速度指标,若速度小于预设值,则认为是速度漂移,轨迹点可进行压缩,进行后续单元判定;否则轨迹点不进行压缩。所述方向漂移单元取方向指标。
所述系统使用单元化的链式结构保存判定逻辑规则,所述误差判定单元数量、顺序根据不同车辆轨迹点进行相应调整。
本实施例公开的技术方案通过同时取得新旧两个轨迹点,并依次将对应指标项进行对比,若完全相同,则符合合并条件,进行合并。合并过程的关键是更新时间覆盖范围,如此便能判断该轨迹点是合并生成的,覆盖某个时间段,而不是时间点。同时,本方案着眼于车辆位置应用的特点,重点关注活跃轨迹点,将绝大多数静止轨迹点进行合并处理,有效节省了存储空间,提高了存储利用率。压缩过程简单快速,对性能无影响,并且直接读取不需要“解压”,大大减轻了后期数据统计分析的编写复杂度。通过对实际采集的车辆轨迹点进行分析,实际接收车辆上报轨迹点约249万个,压缩后输出轨迹点约24.9万个,压缩后节约了90%的存储空间。一年可节约86TB*90%=77TB的存储空间,从一定程度上减轻了存储系统的压力,降低了存储IO,提升了系统整体性能和运行效率。
实施例7:
本实施例作为对前述实施例的补充,在轨迹点压缩存储之前需要优化其轨迹点插入的方案,本实施例对轨迹点插入性能优化方法进行详细描述。
所述插入方法包括以下步骤:
步骤a,信息采集模块初始化,使用数据库队列1作为当前数据库队列;
步骤b,车辆上报轨迹点,所述信息采集模块将所述轨迹点缓存在内存队列中;
步骤c,所述内存队列中的数据定期刷新至当前数据库队列中;
步骤d,当前数据库队列中的数据定期刷新至轨迹点数据表中;
步骤e,使用数据库队列2作为当前数据库队列,执行步骤b、c、d。
所述步骤b进一步包括:车辆再次上报一个轨迹点,信息采集模块将其缓存在内存队列中。所述步骤c、d中根据定时器和/或阈值参数设定的数值完成所述数据的定期刷新。所述数据刷新为异步刷新。完成所述定期刷新后,使用truncate语句清空队列。所述阈值参数包括队列长度。所述方法使用大容量数据拷贝接口完成轨迹点数据批量插入。所述方法无需为轨迹点数据建立索引。所述方法进一步优化为先使用大容量数据拷贝接口批量插入到一个无索引数据表中,再由无索引数据表批量复制到有索引数据表中。所述数据库队列数量至少为2。所述轨迹点进行短暂积累后进行批量处理。
实施例8:
根据实施例7,本实施例提供了轨迹点插入性能优化的系统,所述系统包括以下模块:
信息采集模块,用于初始化时加载数据库队列,以及缓存车辆上报的轨迹点至内存队列中;
内存数据刷新模块,用于定期刷新内存中数据至到当前数据库队列中;
数据库数据刷新模块,用于定期刷新数据库数据至轨迹点数据表中,所述数据库队列包括数据库队列1和数据库队列2,所述内存数据刷新模块和数据库数据刷新模块根据定时器和/或阈值参数设定的数值完成定期刷新,所述数据库队列1和数据库队列2交替使用。所述数据库数据刷新模块进一步用于通过使用truncate语句清空数据队列。所述阈值参数包括队列长度。所述系统使用大容量数据拷贝接口完成轨迹点数据批量插入。所述系统无需为轨迹点数据建立索引。所述系统进一步优化为先使用大容量数据拷贝接口批量插入到一个无索引数据表中,再由无索引数据表批量复制到有索引数据表中。所述数据库队列数量至少为2。所述系统采用异步处理机制,在系统等待时执行其它任务。所述轨迹点进行短暂积累后进行批量处理。
实施例9:
本实施例提供了一种数据库模型,所述数据库中的数据库队列至少包括数据库队列1、数据库队列2,所述数据库队列接收内存队列发送的数据,并将所述数据定期复制到数据表中。所述数据库队列1和数据库队列2交替使用,完成轨迹点数据的插入。
实施例10:
本实施例提供了一种信息采集器,用于车辆轨迹点插入,所述信息采集器选择数据库队列,将车辆轨迹点缓存至所述选择的队列中。所述选择的数据库队列至少包括数据库队列1和数据库队列2。
为了更好地理解本发明,以上结合具体实施例对本发明作了详细说明。但是,显然可对本发明进行不同的变型和改型而不超出权利要求限定的本发明更宽的精神和范围。因此,以上实施例具有示例性而没有限制的含义。
Claims (26)
1.一种误差可控的车辆轨迹点压缩存储方法,包括接收新轨迹点、加载旧轨迹点,其特征在于,所述方法进一步包括对轨迹点能否合并进行判断,以及完成可合并轨迹点的合并,其中对轨迹点能否合并进行判断包括以下步骤:
遍历新旧两个轨迹点的对应指标项;
判断所述对应指标项是否相同,若指标不同则步骤结束,若指标相同则判断是否存在下一指标;
若下一指标存在,则继续遍历新旧两个轨迹点的对应指标项,若下一指标不存在,则进行轨迹点的合并,所述轨迹点的合并是指将多个轨迹点压缩成一个轨迹点,所述轨迹点的合并包括以下步骤:
申请一个轨迹点结构;
复制轨迹点所有指标值;
更新轨迹点时间覆盖范围。
2.根据权利要求1所述的车辆轨迹点压缩存储方法,其特征在于,所述轨迹点划分为至少一个存储域,所述指标项的同类指标内容保存在一个存储域中。
3.根据权利要求2所述的车辆轨迹点压缩存储方法,其特征在于,所述存储域包括当前方位、行驶状态、引擎状态中至少一种。
4.根据权利要求3所述的车辆轨迹点压缩存储方法,其特征在于,所述当前方位包括经度、纬度、海拔中至少一种。
5.根据权利要求3所述的车辆轨迹点压缩存储方法,其特征在于,所述行驶状态包括速度、方向中至少一种。
6.根据权利要求3所述的车辆轨迹点压缩存储方法,其特征在于,所述引擎状态包括发动机开闭、水温、油量中至少一种。
7.根据权利要求1所述的车辆轨迹点压缩存储方法,其特征在于,所述对轨迹点能否合并进行的判断的步骤中进一步包括:通过误差判定模块完成进一步减小轨迹点合并过程中出现误差的判定步骤。
8.根据权利要求7所述的车辆轨迹点压缩存储方法,其特征在于,所述误差判定模块包括车辆开闭模块、位置漂移模块、速度漂移模块、方向漂移模块中至少一种。
9.根据权利要求8所述的车辆轨迹点压缩存储方法,其特征在于,所述车辆开闭模块取轨迹点的发动机开闭指标项,若发动机开启,则轨迹点不进行压缩;若发动机关闭,则进行后续的模块判定。
10.根据权利要求8所述的车辆轨迹点压缩存储方法,其特征在于,所述位置漂移模块取轨迹点的经度、纬度指标,若经度差、纬度差小于预设值,则认定为定位漂移,轨迹点可进行压缩,进行后续模块判定;否则轨迹点不进行压缩。
11.根据权利要求8所述的车辆轨迹点压缩存储方法,其特征在于,所述速度漂移模块取速度指标,若速度小于预设值,则认为是速度漂移,轨迹点可进行压缩,进行后续模块判定;否则轨迹点不进行压缩。
12.根据权利要求8所述的车辆轨迹点压缩存储方法,其特征在于,所述方向漂移模块取方向指标。
13.根据权利要求7所述的车辆轨迹点压缩存储方法,其特征在于,所述方法使用模块化的链式结构保存判定逻辑规则,所述误差判定模块数量、顺序根据不同车辆轨迹点进行相应调整。
14.一种误差可控的车辆轨迹点压缩存储系统,用于对轨迹点能否合并进行判断,以及完成可合并轨迹点的合并,其特征在于,所述系统包括:
轨迹点遍历单元,用于遍历新旧两个轨迹点的对应指标项;
轨迹点指标判断单元,用于判断所述对应指标项是否相同,若指标不同则步骤结束,若指标相同则判断是否存在下一指标,此时,若下一指标存在,则继续遍历新旧两个轨迹点的对应指标项,若下一指标不存在,则进行轨迹点的合并;
轨迹点合并单元,所述轨迹点合并是指将多个轨迹点压缩成一个轨迹点,用于申请一个轨迹点结构,复制轨迹点所有指标值,更新轨迹点时间覆盖范围。
15.根据权利要求14所述的车辆轨迹点压缩存储系统,其特征在于,所述轨迹点划分为至少一个存储域,所述指标项的同类指标内容保存在一个存储域中。
16.根据权利要求15所述的车辆轨迹点压缩存储系统,其特征在于,所述存储域包括当前方位、行驶状态、引擎状态中至少一种。
17.根据权利要求16所述的车辆轨迹点压缩存储系统,其特征在于,所述当前方位包括经度、纬度、海拔中至少一种。
18.根据权利要求16所述的车辆轨迹点压缩存储系统,其特征在于,所述行驶状态包括速度、方向中至少一种。
19.根据权利要求16所述的车辆轨迹点压缩存储系统,其特征在于,所述引擎状态包括发动机开闭、水温、油量中至少一种。
20.根据权利要求14所述的车辆轨迹点压缩存储系统,其特征在于,所述轨迹点指标判断单元进一步包括:误差判定单元,用于针对不同轨迹点进行误差判断。
21.根据权利要求20所述的车辆轨迹点压缩存储系统,其特征在于,所述误差判定单元包括车辆开闭单元、位置漂移单元、速度漂移单元、方向漂移单元中至少一种。
22.根据权利要求21所述的车辆轨迹点压缩存储系统,其特征在于,所述车辆开闭单元取轨迹点的发动机开闭指标项,若发动机开启,则轨迹点不进行压缩;若发动机关闭,则进行后续的单元判定。
23.根据权利要求21所述的车辆轨迹点压缩存储系统,其特征在于,所述位置漂移单元取轨迹点的经度、纬度指标,若经度差、纬度差小于预设值,则认定为定位漂移,轨迹点可进行压缩,进行后续模块判定;否则轨迹点不进行压缩。
24.根据权利要求21所述的车辆轨迹点压缩存储系统,其特征在于,所述速度漂移单元取速度指标,若速度小于预设值,则认为是速度漂移,轨迹点可进行压缩,进行后续模块判定;否则轨迹点不进行压缩。
25.根据权利要求21所述的车辆轨迹点压缩存储系统,其特征在于,所述方向漂移单元取方向指标。
26.根据权利要求20所述的车辆轨迹点压缩存储系统,其特征在于,所述系统使用单元化的链式结构保存判定逻辑规则,所述误差判定单元数量、顺序根据不同车辆轨迹点进行相应调整。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410837156.5A CN104767534B (zh) | 2014-12-30 | 2014-12-30 | 一种误差可控的车辆轨迹点压缩存储方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410837156.5A CN104767534B (zh) | 2014-12-30 | 2014-12-30 | 一种误差可控的车辆轨迹点压缩存储方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104767534A CN104767534A (zh) | 2015-07-08 |
CN104767534B true CN104767534B (zh) | 2017-07-25 |
Family
ID=53649187
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410837156.5A Active CN104767534B (zh) | 2014-12-30 | 2014-12-30 | 一种误差可控的车辆轨迹点压缩存储方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104767534B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106705976A (zh) * | 2016-12-06 | 2017-05-24 | 北京中交兴路信息科技有限公司 | 一种路网匹配方法及装置 |
CN109033141B (zh) * | 2018-06-08 | 2022-07-29 | 苏州大学 | 一种基于轨迹字典的时空轨迹压缩方法 |
CN109408501B (zh) * | 2018-11-07 | 2020-12-29 | 北京锐安科技有限公司 | 一种位置数据的处理方法、装置、服务器及存储介质 |
CN112988759B (zh) * | 2021-04-27 | 2022-07-08 | 北京京安佳新技术有限公司 | 一种时空轨迹数据压缩的处理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101726292A (zh) * | 2008-10-20 | 2010-06-09 | 上海海事大学 | 一种提高电子海图客户端上船舶运动轨迹显示速度的方法 |
CN102607553A (zh) * | 2012-03-06 | 2012-07-25 | 北京建筑工程学院 | 一种基于出行轨迹数据的行程识别方法 |
CN102646070A (zh) * | 2012-02-29 | 2012-08-22 | 武汉大学 | 一种基于区域的时空轨迹数据存储方法 |
CN103795417A (zh) * | 2014-01-22 | 2014-05-14 | 复旦大学 | 一种最大误差可控的轨迹数据压缩方法 |
-
2014
- 2014-12-30 CN CN201410837156.5A patent/CN104767534B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101726292A (zh) * | 2008-10-20 | 2010-06-09 | 上海海事大学 | 一种提高电子海图客户端上船舶运动轨迹显示速度的方法 |
CN102646070A (zh) * | 2012-02-29 | 2012-08-22 | 武汉大学 | 一种基于区域的时空轨迹数据存储方法 |
CN102607553A (zh) * | 2012-03-06 | 2012-07-25 | 北京建筑工程学院 | 一种基于出行轨迹数据的行程识别方法 |
CN103795417A (zh) * | 2014-01-22 | 2014-05-14 | 复旦大学 | 一种最大误差可控的轨迹数据压缩方法 |
Non-Patent Citations (1)
Title |
---|
城市出行者轨迹数据时空挖掘方法研究;仇培元;《中国优秀硕士学位论文全文数据库》;20130215(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104767534A (zh) | 2015-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Yu et al. | Prediction of bus travel time using random forests based on near neighbors | |
CN112700072B (zh) | 交通状况预测方法、电子设备和存储介质 | |
Greenberg | An analysis of traffic flow | |
CN102496280B (zh) | 一种路况信息实时获取方法 | |
CN104767534B (zh) | 一种误差可控的车辆轨迹点压缩存储方法及系统 | |
CN105550789A (zh) | 一种公交出行客流的预测方法 | |
CN109754594A (zh) | 一种路况信息获取方法及其设备、存储介质、终端 | |
CN104408203A (zh) | 一种预测移动对象轨迹终点的方法 | |
Alfaseeh et al. | Greenhouse gas emission prediction on road network using deep sequence learning | |
CN105513337A (zh) | 一种客流量的预测方法及装置 | |
CN110738855B (zh) | 一种数据稀疏时间段的道路交通流状况预测方法 | |
CN102610092A (zh) | 基于rbf神经网络城市道路速度预测方法 | |
WO2021115320A1 (zh) | 交通评估方法和系统 | |
CN106447137A (zh) | 一种基于信息融合和马尔可夫模型的交通客流预测方法 | |
CN114969263A (zh) | 一种城市交通知识图谱的构建方法、构建装置及应用 | |
CN109493449A (zh) | 一种基于货车gps轨迹数据和高速交易数据的货车载货状态估计方法 | |
Duchrow et al. | Towards electric mobility data mining | |
Lee | Freeway travel time forecast using artifical neural networks with cluster method | |
CN102629253A (zh) | 为商业智能系统数据仓库创建gps数据库的方法及系统 | |
CN109145175A (zh) | 基于stacking集成学习算法的时空数据预测方法 | |
Liu et al. | Traffic flow forecasting analysis based on two methods | |
Buroni et al. | A tutorial on network-wide multi-horizon traffic forecasting with deep learning. | |
Xiong et al. | A three-stage framework for motorway travel time prediction | |
Reich et al. | Bus journey simulation to develop public transport predictive algorithms | |
Loubesi et al. | Road trafficking description and short term travel time forecasting, with a classification method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: 050021 No. 220 Tsing Yuen Street, Shijiazhuang, Hebei Patentee after: China Mobile System Integration Co., Ltd Address before: 050021 No. 220 Tsing Yuen Street, Shijiazhuang, Hebei Patentee before: CHINA MOBILE QUANTONG SYSTEM INTEGRATION Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |