业务上有需求,每天每台设备 6000 数据量,预设设备数量最多 10 万。 以前用过 2 年 Oracle,但是没什么学习资料的,只是用用。 MySQL 倒是水平还可以,但是这么大的数据量以前也没玩过。 这些数据都得留着,属于原始数据,还得处理成业务数据。 问下大佬们怎么选数据库,包括选了之后性能和扩展性如何
![]() | 1 masterclock 2021-04-27 13:28:33 +08:00 ![]() https://db-engines.com/en/ranking/time+series+dbms 时间序列数据库,根据工具链、场景等选 influxdb 、timescaledb 、druid 等 |
2 Yelp 2021-04-27 13:41:50 +08:00 ![]() TimescaleDB 一把梭 |
![]() | 4 solaya 2021-04-27 14:02:33 +08:00 HBase |
5 Mithril 2021-04-27 14:13:21 +08:00 死数据不需要数据库啊,直接存文件就行了。处理成了业务数据再往数据库里存。 如果需要作为时序数据分析的话,就用时序数据库。influx,druid 或者 ES 都有这功能。 如果不需要那就直接 SQL 。 |
![]() | 6 NoBugDie 2021-04-27 14:24:06 +08:00 via Android influxdb 单机版存储目前你说的这个问题不大 不过扩展性确实成问题 |
![]() | 7 rapperx2 2021-04-27 14:31:07 +08:00 和我们公司的业务很像,我们也是做的 IOT,如果感兴趣的话可以+V 交流 base64: eGRzMTk5OXhkcw== |
![]() | 8 corningsun 2021-04-27 14:47:48 +08:00 一天 6 亿,这个写入量就很夸张了。 关系数据库、ES 之类的成本太高了。 建议直接写文件,然后 Logstash 之类的统一采集后归并到 Hive 库,再用大数据那一套处理成业务数据就好了。 |
![]() | 9 masterclock 2021-04-27 15:01:01 +08:00 timescaledb 就是 pg,没啥好优化的,存就是了 |
![]() | 10 Curtion 2021-04-27 15:09:11 +08:00 https://github.com/taosdata/TDengine 这是国产的时序数据库,经常看见推广 |
11 chionetw5 2021-04-27 15:18:42 +08:00 clickhouse 怎么样,和 mysql 差不多语法 |
![]() | 12 F281M6Dh8DXpD1g2 2021-04-27 15:22:33 +08:00 这个数据量甲骨文建好索引轻轻松松了 |
13 Michaelssss 2021-04-27 15:22:46 +08:00 你自己重新实现数据库的存储部分就好了。。。撸一遍就知道不同数据库之间的区别在哪 |
![]() | 14 est 2021-04-27 15:24:36 +08:00 timescaledb 用了很多年了 |
![]() | 15 SlipStupig 2021-04-27 16:13:26 +08:00 ![]() 这种源数据最好就是原始采集不要做任何处理否则随着业务变化或者业务结合,数据容易造成数据载荷丢失、业务僵化,算力扩展困难,直接存到 HDFS 里面无论从经济、生态和灵活性考虑。下游业务抽取数据可以通过 Hadoop 和 kafka 结合,可以并行支撑多个业务线,做一些历史报表也很容易。 |
16 flyingfz 2021-04-27 16:37:44 +08:00 |
![]() | 17 timethinker 2021-04-27 16:58:01 +08:00 这种是日志型数据,即追加写的方式记录全量数据,所以要用到日志型数据库 /消息队列,后续消费可以进行批量处理或者流处理,产生派生数据(即基于记录的全量日志数据衍生出来作为分析目的数据模型)。 就像楼上各位说的,可选的工具很多,如果是需要实时分析的,我个人可能会使用 kafka,然后用各种消费者去生成派生数据,可以根据规模对消息进行分区,这样做是为了将写入和计算并行处理,提高整体处理的吞吐量。 |
![]() | 18 clf 2021-04-27 17:13:54 +08:00 时序数据库,然后消息队列作为中间件。 |
![]() | 19 ychost 2021-04-27 17:28:39 +08:00 influxDB 很适合你,配合 Grafana 可配置出漂亮的图表 |
![]() | 20 beginor 2021-04-27 22:37:48 +08:00 via Android timescaledb +1 |
![]() | 21 peakmonkey 2021-06-19 11:00:14 +08:00 可以试试: https://memfiredb.com ,之前我们做智能工厂的项目,采集的是生产机台的数据,大概每 5 秒 400 多个点的数据,工厂三班倒,几乎不咋停,连续用了 3 个多月,没啥问题。输出图表以及配置物联网网关用的是 ThingsBoard 。 顺手分享一下刚才推荐的那个数据库的邀请码: q6xZnV q6xzJG q6wTN4 |