我想把现有 ERP 系统的查询功能进行优化
目前的情况是有 4 张主表, 每张表大概有 1500w 条数据 ,每天大概增加 3w 条数据, 每张表都有 100 多个字段,其中不乏有 varchar(200)这种字符串.
查询时 4 张表还会进行 join,算上其他表总的关联表大概有 10 张左右.并且查询条件也比较多变,聚合索引难以覆盖所有场景,但一般会基于一个时间段再搭配其他三四个灵活的字段进行查询.
目前的想法是把这几张表的数据进行聚合,筛选出比较重要的字段(大概有 70 个)单独存放到一个数据库中 , 以下是我的一些需求
- 首要的是查询效率高,能满足多变的组合查询条件
- 不是冷数据,有低频更新的需求 每秒三十次左右
- 格式较为固定 , 很少添加或者修改字段
- 由于已经是聚合后的数据所以不需要 join 操作
- 无事务要求
- 基本上只做即时查询 ,没有对数据进行二次挖掘和处理
目前是把数据放到了 MongoDB ,加上索引后大概占了 20GB 左右,查询效率一般, 所以想知道对于我这种场景有没有比 MongoDB 更合适的数据库, PostgreSQL ClickHouse Cassandra ?
