1
leeyuzhe 2019-05-20 12:27:11 +08:00 via Android
时序数据库了解一下
|
2
wizzer 2019-05-20 12:32:19 +08:00
1、业务拆分,实时数据只是在需要查看的时候才显示,比如 10 分钟内的实时数据可以放 redis ;
2、历史数据,根据需要,每隔多长时间存 mongodb 去,而不是 10s 一次的保存; 3、统计数据,可以实时统计出来的数据、或通过历史数据统计出的数据,放 mysql 里去,按月分表等; 4、队列肯定是要加的,并发转队列,慢慢处理生成以上数据; |
3
MoHen9 2019-05-20 12:37:19 +08:00 via Android
一楼是正解,但是数据量一上去就必须得大数据了。
|
4
snappyone 2019-05-20 12:42:30 +08:00
时序数据库+1
|
5
David1119 2019-05-20 12:44:57 +08:00
timescaleDB
|
6
looseChen 2019-05-20 12:45:07 +08:00 via iPhone
influxdb
|
8
goodryb 2019-05-20 12:56:26 +08:00
云计算 IOT 平台了解一下,一条龙服务
|
9
Essaim OP 先说下另外一个想法,如果一段路线看做一个单位,并且绝对不会用这些数据来查询,那么是否可以直接把这段路程的所有数据打包成一个 json 字符串,然后存储到一个字段里面去,这样的话就可以忽略数据条数带来的影响了.但是相应的,是否会影响数据的使用?如果以后有什么新需求,需要对数据做统计的话.
然后现在去了解一下时序数据库,统一谢过楼上各位. |
10
Essaim OP @goodryb 我先吐槽下公司决策层,虽然这些东西涉及到物联网,但是他们似乎根本没想往这方面发展,所以需求都是,数据保存一段时间后删除.
采集这么多数据,然后后面还不用,还得出这么多钱,他们肯定不愿意了. |
11
goodryb 2019-05-20 13:11:42 +08:00
@Essaim #10 你们公司有架构师吗,有的话这个问题应该是他来考虑的,如果没有,根据需求,给出 2-3 个解决方案和所需要的资源,提交老板审批即可。
|
12
Essaim OP @goodryb 没有!后端目前就两人,我的上级以前还是搞安卓开发的,没有任何后端经验,在我两个月前进来后公司才开始做互联网项目.
ps:我也不明白公司为什么不找个大牛招个半年开发经验的过来,我现在都特别想溜了. |
13
Essaim OP @goodryb 明白了,谢了,我看下几个方案,稍微评估下交给上级去.最难受的是上级还请陪产假了,公司后端目前就我一个.Orz
|
16
youngce 2019-05-20 13:37:32 +08:00
influxdb+1
|
17
opengps 2019-05-20 13:38:25 +08:00
咱可以沟通一下,我做了 6 年多的汽车位置平台
|
18
opengps 2019-05-20 13:39:32 +08:00
我第一版设计的 sqlserver,单数据库单表,实际应用达到了 15 亿行数据毫无压力,设计峰值每秒 3000,实际才用到 100 多点
|
19
Vkery 2019-05-20 13:41:19 +08:00
cassandra
|
20
liprais 2019-05-20 13:42:58 +08:00
keep 以前存跑步轨迹的时候,是把 gps 坐标放到一个 json 数组里面,然后把这个数组 base64 之后用 zip 压缩这个字符串,然后放到 hbase 里.
做分析的时候简直噩梦一样 |
21
largecat 2019-05-20 14:05:52 +08:00 via Android
找半年经验的,对 boss 威胁小,
哈哈 |
23
janxin 2019-05-20 14:22:00 +08:00
influxdb 了解一下
|
27
opengps 2019-05-20 14:34:31 +08:00
更正 18 楼数据,iops 指标,闲时 100 多,忙时 500 左右,并发 tcp 在线连接数 20 万
|
28
ponymaggie 2019-05-20 14:46:48 +08:00
openTDB 可以看看
|
29
youngce 2019-05-20 14:47:55 +08:00
@opengps 我想请教一下,在大概 15 亿行数据后, 假如需要调取某辆,某一天的某个时间段的轨迹数据,大概需要耗费多少时间?
|
30
kim01 2019-05-20 14:52:51 +08:00 1
车联网行业做 GPS 定位的同仁路过,不好评价!!!
|
31
cszchen 2019-05-20 14:52:51 +08:00 via Android
行车轨迹一般要纠偏,也就是 gps 数据会有误差,一般采用地图 api 接口,自己搞会有点难度。
|
32
tmac6740 2019-05-20 14:53:42 +08:00 via iPhone
之前做过 把位置数据绘制一张图片 存起来
|
33
opengps 2019-05-20 14:56:17 +08:00
@youngce 很快,跟单表性能相差很小,因为做了表分区 https://www.opengps.cn/Blog/View.aspx?id=284
|
35
goodleixiao 2019-05-20 15:00:52 +08:00
HBase 是一个开源的非关系型分布式数据库( NoSQL ),它参考了谷歌的 BigTable 建模,实现的编程语言为 Java。
|
37
opengps 2019-05-20 16:07:28 +08:00 via Android
@youngce 实际应用更建议分库分表,因为数据库文件到了一定量,由于存储太大会不方便扩展,我当时是到了 700G,然后把轨迹部分单独换作 nosql 类型处理,现在则又走回 mysql 的老路,选用阿里云 drds 了
|
38
wplct 2019-05-20 18:44:52 +08:00
先出方案和成本,调研也是做事情的基本
老板不会怪罪你的 |
39
rockyou12 2019-05-20 20:00:43 +08:00
别用关系库,虽然上面有人做过方案但是和专门的时序数据库没得比。哪怕在时序数据库里,influxdb 这种自己实现底层存储的都强国 opentsdb 这种依赖 hbase 的好几倍。
我之前在做服务器监控的时候顺带研究过这块,最开始用的 elasticsearch 做采集,一天的数据有 20g,后来换成了 promethus 一天就 500m 都没有。由于关系库不会像专门的时序数据库这样有很多优化与压缩,所以至少存储上你会很快遇到压力。 promethus 和 infuxdb 有很多设计上的相似,所以可以期望 infuxdb 至少在存储上也有这样大的优势。而且有大量 benchmark 都说明了综合看 infuxdb 是性能最好的了,唯一缺点就是集群要收费。 |
40
izoabr 2019-05-20 20:45:58 +08:00
postgres 的 gis 了解一下
|
41
killadm 2019-05-20 21:14:39 +08:00 via Android
influxdb+1
|
42
Raynard 2019-05-20 21:27:21 +08:00
地图偏移会经常变吗?
|
43
smdbh 2019-05-20 21:27:59 +08:00 via iPhone
内存保存不下的,就用硬盘啊
|
44
opengps 2019-05-20 21:49:40 +08:00
@Raynard 几乎不会,都是固定的坐标系了。(可以参考 https://www.opengps.cn/Map/offset/offset.aspx )
比如大部分国内地图都采用的国测局 gcj02,百度是自己又做了一次加密的 bd09ll 国内要出版上限的地图服务,必须至少使用 gcj02 坐标系 |
45
byteli 2019-05-20 23:25:49 +08:00
楼上的大家 influxdb 有单机瓶颈吧,集群收费
|
46
midoks 2019-05-20 23:34:31 +08:00 via iPhone
肯定是大数据的相关软件呀 hadoop,spark...
|
47
ryomahan 2019-05-20 23:42:45 +08:00
为啥没看到有用 MongoDB 的,我(同楼主工作经验半年)目前在做一个车联网项目,研究了一下选用了 MongoDB,目前还在做开发,性能方面确实没怎么考虑,不过我结合了阿里云给出的自家 MongoDB 和 时序数据库的介绍,感觉两者差别不大(本人非专业数据库工作人员),有人愿意给我们这些小白科普一下 MongoDB 与 InfluxDB 在读写方面差距在哪吗?关系型数据库暂时不想考虑,貌似得优化不少东西吧。
|
48
janxin 2019-05-21 06:27:55 +08:00 via iPhone
|
49
lbxl2345 2019-05-21 14:48:58 +08:00
我在阿里云做物联网平台,楼主有空加个微信交流下~ hunter19901016
|