关系型数据库和NoSQL数据库的选型,往往需要考虑几个指标:
数据量
并发量
实时性
一致性要求
读写分布和类型
安全性
运维成本
常见软件系统数据库选型参考如下:
内部使用的管理型系统
如运营系统,数据量少,并发量小,首选考虑关系型
大流量系统
如电商单品页,后台考虑选关系型,前台考虑选内存型
日志型系统
原始数据考虑选列式,日志搜索考虑选倒排索引
搜索型系统
例如站内搜索,非通用搜索,如商品搜索,后台考虑选关系型,前台考虑选倒排索引
事务型系统
如库存,交易,记账,考虑选关系型型+缓存+一致性型协议
离线计算
如大量数据分析,考虑选列式或者关系型也可以
实时计算
如实时监控,可以考虑选内存型或者列式数据库
设计实践中,要基于需求、业务驱动架构,无论选用RDB/NoSQL/DRDB,一定是以需求为导向,最终数据存储方案必然是各种权衡的综合性设计
参考自:https://juejin.im/post/5b6d62ddf265da0f491bd200
网友评论