1w 并发写数据库,毫秒级响应,支持接入 IOT 设备,要求容灾、备份,支持通过调整软件和加设备动态扩容,系统图形化配置管理,实时系统监控等,这的技术要求大概需要什么样的团队?

2020-04-19 11:51:21 +08:00
 tuine
看到一个标书的描述,感觉大厂才能搞的样子~
7838 次点击
所在节点    程序员
61 条回复
xuanbg
2020-04-19 20:27:30 +08:00
数据库要支持 1 万并发写还是很费钱的……别的都是小 case
sioncheng
2020-04-19 20:30:34 +08:00
如果项目支持 1w+的 iot 设备在线,且每个 iot 设备提交数据的量>=1/s,那么可以说整个系统是需要按照 1 万 qps 来设计的;同时,又有健壮性和弹性要求;小规模团队还是用各种云服务比较靠谱。
opengps
2020-04-19 21:21:40 +08:00
https://www.opengps.cn/blog/view.asps?id=687&from=v2ex
我刚刚啰嗦了一篇博文,欢迎大家点评下
@find 来看看,指导下
woscaizi
2020-04-19 21:21:57 +08:00
设备的实时状态全部存 redis,同时通过 kafka 将历史数据写数据库,数据库做集群,做分库分表。大概的思路是这样。时序数据库没有实际用过,或许用它会更加简单。扩容的话可以直接上 haproxy,后面加机器就 ok 。
opengps
2020-04-19 21:24:01 +08:00
更正地址,手打的出错了
https://www.opengps.cn/blog/view.aspx?id=687&from=v2ex
我刚刚啰嗦了一篇博文,欢迎大家点评下
Sasasu
2020-04-19 22:01:24 +08:00
传感器数量基本固定,采集周期固定,要求低延迟。不知道中间串联消息队列并联缓存究竟是什么想法,造网站么...

市面上有现成的时序数据库:1 亿次写入 6 块钱,一小时 60 元,一天 1440 元。数据免费存一年。
GKLuke
2020-04-19 22:04:39 +08:00
标书啊,3 楼正解。
甲方爸爸写商务,乙方儿子写技术
noparking188
2020-04-19 22:19:00 +08:00
@woscaizi 熟悉的配方,我们公司目前就这样,原始数据先缓存 redis,然后调中间件接口入 kafka,排队消耗存到 mysql
AtmoicG
2020-04-19 22:21:31 +08:00
这种 IOT 的不需要关系型数据库吧?直接 opentsdb,1 万不是随便写啊。
encro
2020-04-19 22:31:39 +08:00
物联网设备 1 万并发,是指一万个连接,这个问题不大吧。

一个城市的交通一个行政区的交通摄像头,同时写入数据,分别写到不同的磁盘,这个难度也不大吧。

所以脱离业务场景,去谈这些都是扯淡。

普通物联网: 一个 mqtt+一个队列+时序数据库+磁盘阵列+分流。

物联网 1 万并发,难度不如一个 500rps 的电商。
naizhao
2020-04-19 23:24:53 +08:00
为什么会觉得很难? bdb 每个 CPU 核心每秒写入可以到 1000 万,随便写。有时候老旧的东西未必就比新东西差
nicebird
2020-04-19 23:39:26 +08:00
1w 很容易搞吧
outoftimeerror
2020-04-19 23:41:12 +08:00
做过类似的物联网项目:f5->netty->kafka->(hbase/redis)
wivwiv
2020-04-20 08:53:31 +08:00
动态扩容好搞,缩容难搞;大部分有现成方案了,组合组合,其他手撸。
bzzhou
2020-04-20 09:36:09 +08:00
如果是非互联网大厂、非专业的数据库团队;那么 99.9%是拿一个开源的系统给你搭建一套;容灾、备份、动态扩容这些都不在话下。

而且 IOT 场景,数据库应该是选择时序数据库,现在主流的解决方案支持这个并发应该没啥问题。
Marmot
2020-04-20 09:59:51 +08:00
我怎么感觉这是我做过的项目....
surfire91
2020-04-20 10:46:33 +08:00
1w 并发 和 1w QPS 是两个概念吧
piao5109
2020-04-20 12:17:53 +08:00
说到 iot 就直接时序数据库。真的做过具体项目吗?

只提 1w 并发写数据库其实意义不大。计算机对于顺序写入的数据是很高效的。与什么数据库关系不大。传感器数据也不复杂,仅仅是写,用 mysql 也问题不大。只是 iot 除了写传感器数据之外,还有很多业务逻辑,会有事物需求和有复杂的查询报表需求。所以可以考虑 sql +nosql 数据库一起来。


其实这个需求难度都不在数据库。现在的互联网技术,处理这些数据库的压力都有成熟方案。
难度在于:
1 、接入设备管理。要保证接入、安全、产品售后维护等。会有一定的工作量。
2 、devops 。大概甲方希望做到图形化运维,点点按钮可以做到动态扩缩容之类的,那这也有工作量和难度。
3 、业务逻辑。比如按照区域、职级等做权限管理。

加上开发、调试、运维工具。这种需求还是需要 10 个人的团队的。

楼上说一个人可以搞定的几个兄弟,你打算自己慢慢搞啊,就算你能做到,就算企业也接受,甲方等得起?
tuine
2020-04-20 14:44:52 +08:00
@piao5109 赞同,目前没有 devops,作为后端开发真的是搞不来,确实涉及到很多业务逻辑,所以 IoT 数据和业务数据肯定要分开处理( pgsql+cassandra )。初步接触物联网相关开发,还没有架构师 devops~~ 😌
RubyJack
2020-04-20 14:55:14 +08:00
选 tidb 直接就全搞定了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/663933

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX