yuan101010
V2EX  ›  数据库

报表流水聚合数据的数据库技术选型

  •  1
     
  •   yuan101010 · Sep 27, 2021 · 3571 views
    This topic created in 1863 days ago, the information mentioned may be changed or developed.

    公司要做一个监控项目,会有很多流水数据(每天 50w 的样子),根据流水数据的各个维度(人数,金额)等字段做不同时间粒度的报表(时间粒度不定,有可能是天、周、月、年),同一个维度在相同的时间粒度内做数据聚合( count,sum ),然后展示报表,昨天想了下用 mysql 可能不是那么好做,又调研了下其他的数据库暂时没有找到合适的解决方案,大佬们有合适的数据库方案推荐吗?( Java )

    Supplement 1  ·  Sep 27, 2021
    有大佬用过 influxDB 或者 prometheus 吗?能搞定么
    23 replies  •  2021-09-28 20:28:13 +08:00
    zoharSoul
    zoharSoul
    Sep 27, 2021
    1
    离线+实时
    实时只算 1,2 天的就可以, es/solr 啥的都行
    labulaka521
    labulaka521
    Sep 27, 2021
    2
    olap
    推荐 clickhouse
    QGLNepal
    QGLNepal
    Sep 27, 2021
    3
    mongo 也可以,aggregate 指令挺好用的
    yuan101010
    yuan101010
    OP
    Sep 27, 2021
    4
    @labulaka521 感谢大佬,我去调研下,clickhouse 可以方便实时的时间聚合吗
    F281M6Dh8DXpD1g2
    F281M6Dh8DXpD1g2
    Sep 27, 2021 via iPhone
    5
    就这点数据量 mysql 就行
    wxdiy
    wxdiy
    Sep 27, 2021
    6
    直接 mysql 就行了。数据量挺小的。定时计算把 sql 写好就行了
    fiypig
    fiypig
    Sep 27, 2021 via iPhone
    7
    直接 mysql 就可以了
    labulaka521
    labulaka521
    Sep 27, 2021
    8
    @yuan101010 可以,就是写性能有点差,写入的话最好批量写入,clickhouse.tech 可以看看官网的文档
    bk201
    bk201
    Sep 27, 2021
    9
    感觉不就是 etl 工作吗?
    BiChengfei
    BiChengfei
    Sep 27, 2021
    10
    如果数据量以后没有增长,就 MySQL,如果需要 KPI,就选最吊的
    原始数据放一张表,称为源表,这张表指定表空间,空间给大点
    然后通过定时任务或其他手段,对源表数据进行分类处理,得到天、周、月、年等统计数据,查询时直接从分类表中查
    masterclock
    masterclock
    Sep 27, 2021
    11
    Influxdb 很合适,但是没有原生的集群方案
    Timescaledb 基于 pg,很合适

    druid,clickhouse 等功能也满足,更重量级
    David1119
    David1119
    Sep 27, 2021
    12
    flink 啊,mysql 数据聚合一下,再存 mysql 就好了,批流一体实时性也好
    ETiV
    ETiV
    Sep 27, 2021❤️3
    13
    0. 不要自己写代码
    1. 数据库用你熟悉的。比如 MySQL 的话,每条数据再加一个字段:日期—YYYYMMDD,同时给它做一个索引
    2. 报表用 metabase (其他 BI 工具都行),目标就是:你只需要写 SQL 就行了,不要自己写界面
    3. 了解一下 with XXX as (select ...), YYY as (select ...) select * from XXX left join YYY 这种写法

    然后你就无敌了~
    yuan101010
    yuan101010
    OP
    Sep 27, 2021
    14
    @BiChengfei 数据量就是差不多每天 50w 的流水数据,还不少的
    leafre
    leafre
    Sep 27, 2021
    15
    一天 50w,一年将近两亿,mysql 这数据量索引性能稍差,但也不是不能用,想要极致性能上 es
    azkaban
    azkaban
    Sep 27, 2021
    16
    flink 打成宽表,往 druid,ck 里灌就行了
    james2013
    james2013
    Sep 27, 2021
    17
    直接用 mysql 也没有问题,按月份分表,搞个定时任务,每天 00:10 统计前一天的记录
    nl101531
    nl101531
    Sep 27, 2021 via iPhone
    18
    mysql 就足够了,每天 50w 后,第二天产生结果表数据,然后清理历史数据。
    securityCoding
    securityCoding
    Sep 27, 2021
    19
    clickhouse 挺好用
    cxsz
    cxsz
    Sep 27, 2021
    20
    我司用 Influxdb,存传感器数据,按时间提取展示图表很方便
    sunmacarenas
    sunmacarenas
    Sep 28, 2021 via Android
    21
    不差钱就 SAP HANA
    mingl0280
    mingl0280
    Sep 28, 2021 via Android
    22
    MSSQL + PowerBI,国外现在用这个挺多的
    RangerWolf
    RangerWolf
    Sep 28, 2021
    23
    推荐 clickhouse 快到让你上瘾 但是应用逻辑跟 mysql 会有不一样的地方 需要调研
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2689 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 71ms · UTC 14:27 · PVG 22:27 · LAX 06:27 · JFK 09:27
    ♥ Do have faith in what you're doing.