SQLServer 的多表查询,每个表百万条数据,增量不多,要求实时变化或者 5 分钟刷新一次,有啥好的解决方案吗?
ES 适合做吗?(公司有 ES 集群,大数据框架我只接触过 es )
1
zoharSoul 2021-03-31 14:28:11 +08:00
es 可以的,
实际上百万级我觉得 sql 数据库也完全能抗住... 毕竟数据量少 |
2
TimePPT 2021-03-31 14:30:54 +08:00 via Android
试试统计可以试试 flink
|
4
3country OP @zoharSoul sql 涉及各种计算,年度统计的时候很慢,报表太多,不想优化 SQL,想找一种统计方案(具体情况我不太清楚,领导给的信息比较少)
|
6
bthulu 2021-03-31 14:47:03 +08:00
才百万数据, 全部塞内存里就行了
|
7
TimePPT 2021-03-31 14:49:58 +08:00
@3country 接入难度一般,官方文档还算全。实时维表统计比较方便。现在也流行这么玩。可以搜下「 flink 批流一体」,有不少大厂的经验介绍。
|
10
imn1 2021-03-31 15:08:31 +08:00
@3country #9
你还是去问清楚详细需求吧,一般大周期(季、半年、年)的统计都是专门做报告的,实时的统计更多用于监测“异常”和分析变化趋向,年报数据每几分钟变一次是很奇怪的 —— 报告不可信 至于用什么,那不是我擅长的 |
11
flighter 2021-03-31 15:35:59 +08:00
百万级 数据库就可以,ES 完全无压力
|
12
kiracyan 2021-03-31 15:40:51 +08:00
百万很小量级了
|
13
qq1340691923 2021-03-31 17:29:52 +08:00 via iPhone
我就是用的 es,一个索引十几亿条数据无压力
|
14
luoqeng 2021-03-31 17:34:22 +08:00
flink
|
15
ksedz 2021-03-31 17:37:42 +08:00 1
没有关键词查询需求的话建议 Clickhouse,简单粗暴,性能强劲
|
16
daweibao 2021-03-31 17:38:53 +08:00
15 楼的方案可以考虑
|
17
jenlors 2021-03-31 21:30:04 +08:00
ClickHouse +1
|
18
xuanbg 2021-03-31 22:44:58 +08:00
分级汇总。简单的说就是今年之前的数据是不变的,可以按需求汇总之后存起来。然后今年 1 、2 月份的数据也是不变了,也可以按月 /日汇总后存起来。剩下的也就是查当月数据罢了。或者干脆连当月的数据也按天汇总存起来,竟只需查询当日数据就够了。
|
19
Alexf4 2021-04-01 09:25:11 +08:00
Clickhouse +2,而且还可以帮你涉及下新的领域?
|
20
wushigejiajia01 2021-04-01 09:58:06 +08:00
巧了,我最近就在搞报表开发,大多是百万数据表,千万表目前有一张(但是这张表涉及的统计不多)
------------------------------------------------- 针对报表开发,我们单独弄了个库,把原始数据同步过来专门用于报表开发,在同步的过程中会把一些必要的字段进行冗余,连缓存都没用 现在那些百万表的关联查询,数据库完全能扛得住,适当的加些索引,当下一点问题都没有 -------------------------------------------------- 当然你要问有没有隐患,那肯定有,过些年这些报表肯定越跑越慢,到时候肯定要优化,到时候分表、缓存之类的搞起来,基本上也能解决了,现阶段就不是我需要考虑的了,工期就这么多 |
21
tairan2006 2021-04-01 11:23:24 +08:00
百万级直接用关系型数据库都能扛得住…
搞聚合查询不算是 es 专长,可以考虑 clickhouse 或者 greenplum,甚至 flink |
22
shanghai1943 2021-04-01 17:32:19 +08:00
|
23
leeg810312 2021-04-01 20:58:51 +08:00 via Android
年报统计 5 分钟刷一次?定这技术需求的人是不是从来没有做过 OLAP ?月报年报根本不可能是实时报表,都是定期任务,明细数据输入截止后执行一晚上,第二天就能看所有报表了,即使单表上千万也足够。上亿数据就得用大数据计算框架,Spark/Flink 等都可以,但这得准备很多硬件资源
|
24
Alexf4 2021-04-02 09:18:34 +08:00
@shanghai1943 clickhouse 做 OLAP 比较合适,高并发这个要求得看具体场景,很多大厂还是有 clickhouse 的实践经验的。
|
25
3country OP @leeg810312 公司应该是想做实时数据分析,这方面用什么框架?
|
26
leeg810312 2021-04-03 08:30:20 +08:00 via Android 1
@3country Spark/Flink 都可以做实时流式计算,需要配合 Kafka,场景是类似用户行为分析(商用),交通流量分析(公共服务)这样,短时间窗口内快速计算较多数据(例如 10 秒 1000 下单的分析),几秒出结果。报表属于离线计算,针对每次几千万数亿或更多的数据量,可能要 10 几分钟甚至几小时才出结果。建议厘清实际技术需求做些调研。
|
27
3country OP @leeg810312 好的,谢谢老哥解惑
|