一、普通实时计算和实时数仓的比较

  普通实时计算优先考虑时效性,从数据采集经过计算直接得到结果,时效性更好,但是中间结果没有沉淀下来,当面临大量实时计算的时候,计算的复用性差,开发成本大大提高;

  实时数仓是基于数仓理论对数据分层,提高数据的复用率;

 

二、实时数仓分层

  ods:原始数据,业务

  dwd:数据对象进行分流,比如页面访问,订单等

  dim:维度数据

  dwm:对部分数据进一步加工,可以和维表进行关联,形成宽表,依旧是明细数据

  dws:将某个主题与多个事实数据轻度聚合,形成主题宽表

  ads:把clickhouse数据根据可视化需求筛选聚合

 

三、离线计算和实时计算的比较

  离线计算:计算前已知所有数据,输入数据不会变化,计算量大,时间长,根据前一日的数据生成报表,对时效性不敏感。

  实时计算:输入数据以序列化的方式一个个输入并行处理,开始的时候并不需要知道所有的输入数据,量小计算时间短,所查当下给出结果侧重当日数据的实时监控,逻辑相对离线更为简单,统计指标也少一些,更注重时效与用户的交互性。

 

四、实时需求种类

  1.日常统计报表,分析图包含当日部分

  针对企业运营管理,仅靠离线,时效性无法满足,计算当日,分钟级,秒级的数据,便于企业快速的反应与调整。所以实时数据往往与离线数据合并展示在BI,统计平台中。常规的数据大屏

  2.数据预警

  风控预警,营销提示,以便快速采取应对措施,检测到用户的行为对于某些商品具有较强的购买意愿,那么可以把这些“商机”推送给客服部门,让客服进行主动的跟进。

  3.实时推荐

  实时推荐就是根据用户的自身属性结合当前的访问行为,经过实时的推荐算法计算,从而将用户可能喜欢的商品、新闻、视频等推送给用户。