关于关系型数据库(如SQL)用于实时时间序列分析的优劣及适用性疑问
结合我在关系型数据库和InfluxDB这类时序数据库上的实操经验,我来梳理下对这个问题的看法:
关系型数据库与时序数据库的场景适用性分析
关系型数据库针对大数据的局限性:
- 面对大规模大数据负载时,扩展性表现不足
- 实现
memcaching来优化性能的过程相对复杂 - 分析前需要额外对数据执行
unnest和flatten操作,增加了预处理成本
结构化数据场景下的优势:
尽管存在上述缺陷,但我依然认为在部分结构化数据场景中,关系型数据库的适用性要优于InfluxDB这类时序数据库。关系型数据库成熟的结构化查询模型和生态,在处理复杂关联查询、结构化数据操作时往往更直观可靠。查询延迟与时序分析的适配性:
我并不认同“查询延迟会导致关系型数据库不适用于时序分析”这一观点。通过合理的索引策略、查询调优以及缓存层优化,关系型数据库完全能够满足很多时序分析场景下的延迟要求。尚未解决的疑问:
目前我还没有找到针对上述权衡点的权威解答或详细分析。
内容的提问来源于stack exchange,提问作者Shahin Vakilinia




