1
zhenjiachen 2023-10-18 10:50:00 +08:00
同求架构,我们现在是把数据多的同步到 clickhouse ,然后查询相对 mysql 快很多,但是领导需求千奇百怪,每次改代码都好麻烦。
|
2
Fooooo0 2023-10-18 11:08:15 +08:00
Google 一下 "OLAP 实时统计 数据库",目前比较热门的是 clickhouse 和 Doris 。
当然你说的要解决一些复杂多维度的查询可能需要引入 ETL 预处理或者一些 BI 工具,单纯数据库解决不了这个问题。 |
3
luoyou1014 2023-10-18 12:00:06 +08:00
简单点的话,直接用 mysql 中的 json 字段,这样就不用多表联查了,缺点是 json 的联合索引仅支持一个 json 字段,可以考虑采用虚拟字段来支持多个 json 索引
|
4
realpg 2023-10-18 12:02:16 +08:00 1
数据量多大?有一亿行么?
我这 mysql 8700 万行不分表 没觉得数据量大性能差 |
5
ISO8859 2023-10-18 12:04:02 +08:00
为什么不用 ES 呢
|
6
realpg 2023-10-18 12:06:29 +08:00
没打完就发出去了
你这种需求,不需要换技术栈 而是需要统计常见维度,做非实时调度查询系统,放在冷库里有调度的专门跑这些查询 冷库里去掉各种字符串字段,各种字段能数值化就数值化 比如你说的: 0-18 岁、患者来源 xxx 、距上次检查超过半年且近视度数大于多少且没有买 xxx 商品 业务部门显然是要筛用户进行推广或者营销,这种都是低响应要求的。 不会因为 0.5 秒没出结果客户就跑了,行政开销远高于系统开销 多进行总结,预提报告数据,同时后台不断学习,创建预设维度自动跑,同时调度响应各种筛选维度 |
7
superchijinpeng 2023-10-18 12:31:05 +08:00
CK Starrocks
|
8
bjzhush 2023-10-18 12:36:39 +08:00
如果说做数据统计和聚合,我之前的项目用的是 apache kylin ,还不错
这玩意没法查出具体某一条数据,但是拿来做数据统计非常合适,有兴趣可以了解一下 |
9
SD10 2023-10-18 12:51:50 +08:00 via iPhone
先搞清楚是做 OLAP 还是 OLTP ,解决方案不一样的。
|
10
MaxFang 2023-10-18 13:32:22 +08:00
报表业务不要直接使用业务表,使用业务表就导致 join 漫天飞。
需要合理的规划表维度,从业务表抽取数据到报表,ETL 这类的。 |