[系统设计] 广告系统的统计数据该怎么设计? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zealinux
V2EX    Big Data

[系统设计] 广告系统的统计数据该怎么设计?

  •  
  •   zealinux 2020-02-21 16:39:46 +08:00 6195 次点击
    这是一个创建于 2114 天前的主题,其中的信息可能已经有所发展或是发生改变。

    广告系统会跟踪一些数据(类似 log ),这些数据专门用来做统计的。

    但是由于以后可能量比较大,不想着存数据库( MySQL )。

    现在一般是怎么好做法?


    比如,现在想到的比较笨的方法:

    系统会有频繁跟踪数据传过来, 那么我就在 DB 里 [跟踪日志表] 里新建一条记录。

    然后定时每 10 分钟汇总一些。记录在 [分小时统计表] 里。 然后再定时从 [分小时统计表] 算出总量存放 [总量表] 的。

    现在是 3 张表。

    A - 跟踪记录表 B - 分小时统计表 C - 每个广告的统计总量表 

    感觉这种方法不好, A 表应该算是非主业务的,不应该与业务表们放在一起。 A 表也会越来越庞大。(大表做统计的话,可能会把 MySQL 搞崩溃掉) 其余两个表是由于 A 来算出来的。

    应该会有更好的解决方法,求教

    第 1 条附言    2020-02-22 08:39:04 +08:00
    有人说用 ELK 来做,这种方式是否合适?

    ( track 数据发送到 ELK 里,结果再回写到 MySQL )
    5 条回复    2021-02-28 21:52:52 +08:00
    F281M6Dh8DXpD1g2
        1
    F281M6Dh8DXpD1g2  
       2020-02-21 16:42:54 +08:00
    日志隔一段时间汇总之后存 s3,统计用 hive 或者 spark
    或者日志直接写 kafka,后面跑个 spark streaming 写成 parquet 或者 orc,然后用 spark 或者 hive 做统计
    统计结果写 mysql 完事
    cabing
        2
    cabing  
       2020-02-21 16:47:55 +08:00
    广告数据分很多种。

    比如结算日志,访问记录。

    楼上说的包括历史数据 hive,实时 spark 或者 flink,mysql 只存结果
    zealinux
        3
    zealinux  
    OP
       2020-02-22 08:37:22 +08:00
    有人说,可以 ELK 来做?不知是否合适?
    awanganddong
        4
    awanganddong  
       2020-07-11 15:56:46 +08:00
    现在也在做该相关场景的业务,隐约感觉这种日志流,其实最需要的数据,不超过 7 天,也就是对底层数据进行抽取,然后汇总到上层表,然后底层数据进行定期归档就可以。


    这里边一个点,就是对热点数据的不停机归档。
    还有一个点,就是对数据的聚合。
    fucUup
        5
    fucUup  
       2021-02-28 21:52:52 +08:00
    clickhouse 我兄弟开发的
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1819 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 16:13 PVG 00:13 LAX 08:13 JFK 11:13
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86