暂无图片
对于特定业务场景,应该选择什么数据库?
我来答
分享
Fish
2024-06-18
对于特定业务场景,应该选择什么数据库?

业务场景:
每秒都会记录车载设备的数据并进行入库(每秒1条数据),也就是1天1个设备就产生数据:1*3600*24*1=86400条数据。
如果1天10w个设备就产生数据:1*3600*24*100000=8640000000=86.4亿。

问题:
1、对于10w个设备每天都产生这么大量的数据的业务场景,请问应该选择什么数据库?
2、物联网公司每天也产生大量数据,他们的数据库架构是啥样的,能否分享一下大概的大数据架构模型?
3、大量数据存储在数据库中后,后续每天还会通过查询当天或最近几天的数据用于展示。

对于以上问题,还请各位大佬给一点经验介绍和建议。谢谢!

我来答
添加附件
收藏
分享
问题补充
3条回答
默认
最新
小鲁菜
暂无图片

对于这种涉及大数据量和实时性要求的物联网(IoT)业务场景,选择合适的数据库系统至关重要。以下是针对你提出的问题的一些建议:

1. **数据库选择**:
- **时序数据库 (Time-Series Database)**:考虑到你的数据是连续的时间序列数据,时序数据库(如 InfluxDB, OpenTSDB, TimescaleDB 等)是非常适合的选择。它们专门设计用于高效存储和查询时间戳相关的数据,并且可以处理大规模的数据写入。
- **分布式数据库**:为了处理10万个设备的数据,你需要一个能够水平扩展的数据库,如 Apache Cassandra 或 Amazon DynamoDB,这些数据库在分布式环境下性能出色,能应对高并发写入。
- **NoSQL 数据库**:MongoDB 或 Cassandra 也能提供很好的性能,特别是对于非结构化或半结构化数据。

2. **物联网公司的数据库架构**:
- 通常,物联网公司的大数据架构会包含多个层次:
- **边缘计算层**:在设备端或附近的网关进行数据预处理和过滤,减少发送到云端的数据量。
- **数据摄入层**:使用消息队列(如 Apache Kafka 或 RabbitMQ)接收并缓冲来自设备的数据,确保高可用性和容错性。
- **存储层**:采用上述提到的时序数据库或分布式数据库,存储大量实时数据。
- **处理和分析层**:利用批处理工具(如 Apache Spark)和流处理工具(如 Apache Flink 或 Apache Storm)进行实时分析和聚合。
- **服务层**:提供 API 接口,让其他系统可以访问和使用这些数据。
- **可视化层**:通过 BI 工具(如 Tableau 或 Grafana)展示数据。

3. **查询和展示**:
- 对于查询最近几天的数据,你需要确保数据库支持高效的范围查询。时序数据库通常具备这种能力,可以快速返回一定时间范围内的数据。
- 使用缓存(如 Redis 或 Memcached)来存储最近查询的结果,提高查询性能。
- 分布式数据库的查询通常需要考虑分区策略,确保数据的合理分布以加速查询。

总体而言,选择数据库时应综合考虑数据类型、写入和查询模式、可扩展性、成本等因素。在实施时,也需要关注数据安全、备份和恢复策略。随着业务的发展,可能需要不断调整和优化数据库架构。

暂无图片 评论
暂无图片 有用 3
打赏 0
刘晓华

TDengine时序数据库,很符合你的需求

暂无图片 评论
暂无图片 有用 0
打赏 0
吾亦可往
  1. 对于 10 万个设备每天产生如此大量数据的场景,可以考虑使用一些分布式数据库,如 HBase、Cassandra 等。这些数据库能够处理大规模的分布式数据存储和高并发读写操作。

  2. 物联网公司的数据库架构通常是一个复杂的体系,一般包括以下几个主要部分:

    • 数据采集层:负责从各种设备收集数据。
    • 数据存储层:可能包括多种数据库,如用于实时处理的内存数据库、用于大规模数据存储的分布式数据库等。
    • 数据处理层:如流处理引擎、数据仓库等,用于对数据进行清洗、转换、分析等操作。
    • 数据应用层:用于将处理后的数据提供给各种应用和展示。
  3. 对于大量数据存储后的查询需求,可以采取以下措施:

    • 合理设计索引:根据查询条件设计合适的索引,提高查询效率。
    • 数据分区:可以按时间或其他维度进行分区,便于快速定位和查询特定时间段的数据。
    • 使用缓存:将常用查询结果缓存起来,减少对数据库的查询压力。
    • 采用分布式查询框架:能够并行处理查询请求,提高查询速度。


此外,还需要考虑数据备份与恢复策略、数据安全、系统扩展性等方面的问题,以确保整个系统的稳定和高效运行。同时,不同的业务场景和需求可能需要针对性地调整和优化架构设计。

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏