求友们帮助,大量 GPS 轨迹数据利用 MongoDB 数据库如何存储呢(SpringBoot+ MongoDB)

查看 83|回复 4
作者:Allenxup   
有大约 500 辆车 每辆车绑定 1 台 GPS 有线设备,每天大概运行 16 小时 运动状态下每 10 秒上报 1 条 gps 数据,静止状态下每 5 分钟上报 1 条。数据对接的是第三方 GPS 平台。
需求 1:需要实时同步轨迹数据到自己 MongoDB 库中,目前第三方可进行推送数据,我方只需要提供 http 接收接口。
现在问题是只要数据接收接口挂了,就无法接收到数据了,要如何保证数据不丢失呢
需求 2:在大量 GPS 数据情况下如何利用 MongoDB 如何存储呢,需要实现的功能:轨迹查询、区域查车、查询所有车辆当前位置。表结构改怎么设计比较合理呢?

gps, MongoDB, 数据, 轨迹

opengps   
这也不多,我曾经在关系型里都能存到几十亿条,你这非关系型问题更不大了
有一点需要调整:查询最新位置没必要进入历史表,用缓存或者单独一个表去更新存储最新即可。
serafin   
最多平均每秒 50 条,极端情况每 10 秒同时来 500 条。用 .txt 都行吧。MongoDB 随便怎么都行吧。问题是 http 协议不适合干这个吧。这个体量 http 也不是不行。
lzd123   
针对需求 1 ,建议搞个网关服务用于专门对接数据,可高可用设计;
数据流: http 接口-》网关服务:接收到轨迹数据简单处理-〉消息中间件(如 mq )-》相关服务再消费入库
Allenxup
OP
  
@opengps 感谢您的解答。你的意思是 MongoDB 一个集合存所有的设备轨迹数据嘛?如果达到几十亿条查询轨迹速度咋样,
最新位置存表里那不是要频繁更新吗
您需要登录后才可以回帖 登录 | 立即注册

返回顶部