本人为数据开发新手。工作内容需要给分析师提供线上实时的计算和统计工作,但是目前业务数据使用的是 mysql ,虽然大部分情况我这里是使用从库,但过于复杂和大量数据的统计使用 mysql 依然不合适。目前有一部分任务可以放在离线大数据平台如 hive 等做,但是还是有一部分需要线上实时的计算(需要和业务主库延迟在毫秒级)的任务需要。实时计算 mysql 的单表数量大多是 10 亿内,会在各表之间关联做逻辑,大概 100 张表
最近调研了一下 doris ,也看了很多文档,但是不知道 doris 在这方面是不是合适,是不是既可以满足在线其它系统实时调用的快速计算,又可以定制批量计算任务?。希望有经验的大佬分享一下。
另外还有一些问题
1
David1119 2023-09-23 15:14:52 +08:00
合适,flink+doris 轻松搞定,如果不需要开窗口或者状态计算,doris 就够
|
2
notvalid 2023-09-23 15:34:26 +08:00
我司用 StarRocks (和 Drois 同源)做流批一体,既可以满足实时计算需求,也可以满足批处理需求。
|
3
mightybruce 2023-09-23 22:08:29 +08:00
其他方案有 clickhouse, clickhouse 可以直接支持连入 mysql ,并导入
|
4
FYFX 2023-09-24 15:19:33 +08:00
给分析师没啥问题, doris 即席查询挺好的, 多表关联你根据实际情况设置好数据分布问题应该也还好
给其它系统调用的话可能会有问题的, 我以前碰到过并发量超 100+大查询把整个 doris 集群拖垮的情况,不过看现在 doris 官方的 readme 好像这方面性能也挺好了, 10000QPS TP99<=150ms , 你要用的话建议做好压测吧。。。 |
5
yellowmarlboro OP @David1119 谢谢你的回答。但是这个地方我有一个问题,如果我是用 flink 的 CDC 去做数据的实时同步到 doris ,并且不在 flink 上加任何状态计算或其他任务,这个延时是可控的吗,这两者之间是否有影响,能否达到毫秒级?这样我也可以在后续根据延迟时间去判断是否在 flink 上增加任务。可以的话我想先 flink+doris ,不用再去找或者自己实现 CDC 。
|
6
yellowmarlboro OP @notvalid 只是听说 StarRocks 时从 doris fork 来的,不知道最大的区别在哪里?
|
7
yellowmarlboro OP @mightybruce clickhouse 的话我担心多表 join 查询会撑不住
|
8
yellowmarlboro OP @FYFX 谢谢你的回答。并发超过 100 的大查询的情况应该不多,就只是基础数据量比较大,可能单表都是 10 亿级以下的,同时还要多表 join 。还有个问题想咨询。关于存储数据的磁盘占用情况,网上看到 Mysql 到 doris 会减少多少百分比的存储,但是没有找到一个确切的实例,请问你在实际中有关注过吗?
|
9
FYFX 2023-09-28 10:30:57 +08:00
@yellowmarlboro #8 这个没有关注过, 而且感觉意义不太大,doris 是列存的的确数据会有压缩, 但是当时我们 doris 本身是多副本的, 实际总的磁盘占用量应该是超过 mysql 的
|