简介:这是淘特在阿里巴巴参与的第二个双11大促,大促期间累计超过上千万消费者在此买到心仪的商品,数百万家商家因为淘特而变得不同,未来,淘特也将会继续更好的服务于下沉市场,让惠民走近千万家。

2021年11月11日23:59:59,阿里巴巴淘特(淘宝特价版)的第二个双11完美落下帷幕。在双11大促期间,淘特历经多个大促爆发高峰,丰富的权限玩法,各类高性价比货品,大促期间累计超上千万人在淘特买到质美价廉的商品。本次双11大促中,淘特无论是流量、买家还是订单数都创下新的记录,交出了完美答卷,这也意味着,阿里巴巴在下沉市场开始斩露头角。

业务简介与面临的问题

淘特(原淘宝特价版)定位为消费者带来低价且有质量的源头好货,目前仍然处于用户快速增长的阶段,其中三方线上广告投放具有规模效应大,行业成熟度高等特点,是平台用户引流的重要渠道。

在淘特为期30多天的双促期间(双10,双11),市场竞争尤为激烈,渠道投放策略的及时优化调整是保障获量与控本的重要手段。同时针对下沉用户偏好简单的玩法独特区域性货盘的特点,平台需要创新研发各类简单易于理解的营销玩法,和相应的站内流量分发机制,促使更多的用户可以边玩边买。

由于本次大促具有时间长与高爆发两个特点,在这个过程中,我们面临这这么几个问题:

  1. 流量低价获客:线上广告创意规模大,但拉新拉活效果成本参差不齐。但因为不同时间波段流量差异大,如何通过探索式分析,快速定位问题广告或者挖掘新机会,为大促提供持续稳定的高质量流量成为了优化师们进行投放优化的首要问题。
  2. 极简营销玩法:大促新上各类营销玩法,营销玩法的效果需要实时监控。如何实时多维分析,帮助业务进行实现不同场景的不同效果分析,最终反哺业务实现大促交易目标。
  3. 货商高效汰换:货品是电商的核心,超长大促周期下,会场同学需要进行会场货品调优,行业同学需要通过货品类目进行供给调整,还有风控、商家管理等多个角色,均需要通过对单商单品的精准强控。其中如何通过实时聚合排序,及时对低效能货品的汰换,避免流量与转化效率的错配。

解决方案

围绕淘特双10&双11,基于上述在流量投放优化、营销玩法多维分析,品商实时排序等面临的业务问题下,我们构建了一套基于实时数仓Hologres的统一数据服务系统,从流量、玩法、货品全方面监控数据,支持业务在大促期间的精细化运营诉求。

下面分别从三方面内容讲述淘特在这一领域的实践。

优化投放持续低价获客

场景介绍和特点:广告投放场景偏探索分析,具有查询频率中,查询复杂程度高,对延迟容忍度相对较高等特点。分析师需要从一纵一横两个视角进行投放优化,一横即可以从广告创意到广告组、计划、账户、代理、媒体等不同颗粒度。一纵即从展示、点击、消耗的前链路数据到激活、新登、唤端、下单、支付等后链路数据。再叠加时间维度进行分析与优化。

实现方案:考虑到上卷与下钻维度非常多,且查询不固定,无法采用预计算模式,因此我们选择围绕最细颗粒度广告创意进行加工,将各类维度属性冗余成标签,前后链路的效果作为指标,存储在Hologres上,将分析师在投放中心上的优化的查询逻辑转变为基于明细数据的再筛选、聚合、加工的方案。

挑战与优化:探索式灵活分析,复杂查询,对Hologres都会产生较大的性能压力,我们主要考虑了存储优化选择分布列索引优化三种种优化方式。

  1. 在存储方式上,由于外投中心的使用场景是以范围查询、单表聚合为主,所以选用列存的存储方式。
  2. 此外由于分布列将文件组分成不同shard,然后优先在各shard内执行join和group by操作,所以选用了常用的关联键和聚合维度account_id, campaign_id, adgroup_id, agent, creative_id。
  3. 在索引优化上,根据不同索引方式我们选用了不同的字段作为key来优化查询速度。首先是选用了creative_id作为聚簇列,适用于范围查询和筛选所用字段。使用比特编码索引在聚簇后进一步进行文件内位图索引,适用于等值查询条件,所以选择了creative_id, account_id, campaign_id, adgroup_id, agent等常用于等值查询的字段。最后是分段键,该索引是用于标识文件边界,常用的是非空时间戳,这里我们选择用的是stat_date。

通过上述系列优化使得最终98%以上的通过投放平台过来的探索式分析查询可以在3s内完成。

业务收益:该数据产品在目标三方广告投放运营、产品中覆盖度100%,运营通过该平台快速高效的定位并解决包括异常掉量、消耗过高等问题计划数日均几十+,使得投放侧的优化效率整体提升50%以上。同时还帮助运营能够快速的找到增量价值渠道等。

权益玩法促用户成交转化

场景介绍和特点:营销玩法投放在包含新人、互动、裂变等不同的场域中,玩法的引导效果还与货盘强相关,交叉模式以及看数用数指标相对固定,且相对比较高频。

实现方案:我们在实时计算Blink中通过直接产出CUBE表,写入Hologres中,基于该CUBE表搭建数据报表。

业务收益:大促期间通过效果数据针对玩法进行了10+优化,如通过玩法X场域,为跨店满减会场新增购物车入口,快速满足用户的凑单需求;官方补贴的氛围链路透传提升转化率等,帮助行业顺利完成目标。

商品商家汰换高效分发流量

场景介绍与特点:运营小二为了能够在大促期间对商品与商家进行监控与汰换,就需要有细颗粒的查询监控,同时由于商品会关注在活动中的各个会场的特色指标表现,且部分活动存在跨多天的情况,所以多日累积的数据也是运营决策的重要参考。

实现方案:我们选择在实时计算Blink引擎中,完成对最细颗粒度的商品-人的计算,并将相关活动指标打横,写入Hologres。在报表层,根据运营的筛选条件进行跨天的汇总到商品、商家粒度的聚合排序。单个分区日志数据商品-人达到了2亿左右数据规模,通过索引、分布列等的优化基本可以满足单表的各类查询。

挑战与优化:实时离线的数据存在一定GAP,在多日的周期下,差异累积放大,导致影响业务的决策判断,另一方面大促期间人力开发资源紧张,如果用离线数据进行覆盖,成本额外增加一倍。在此背景下,引入了流批一体的技术方案,使用Hologres进行统一存储与计算,并且通过Blink Batch实现了实时离线共用同一套代码,计算逻辑统一,大幅度降低了重复开发与后续运维成本。

业务收益:品/商多维度实时排行覆盖行业运营、会场运营小二,通过选品汰换在几百家会场帮助消费者买到心仪商品,并针对挖掘出的潜力商家,及时的给予流量扶持,整体大促期间超过几百万商家完成动销。

业务总结

这是实时数仓Hologres首次走进淘特的双11大促,在大促期间,Hologers在流量洪峰的压力下,以99.8%响应支撑力多个促销活动的顺利开展。数据同学只需要加工最明细数据,便能通过Hologres构建灵活多维的查询应用,整体的研发效率提升在40%以上(单场景平均5人日下降至3人日),同时部分原本需要由在线Blink作业的数据计算,转变为了查询时再计算的模式,整体计算资源预计有20%左右的减少

这是淘特在阿里巴巴参与的第二个双11大促,大促期间累计超过上千万消费者在此买到心仪的商品,数百万家商家因为淘特而变得不同,未来,淘特也将会继续更好的服务于下沉市场,让惠民走近千万家。

原文链接

本文为阿里云原创内容,未经允许不得转载。

实时数仓Hologres首次走进阿里淘特双11的更多相关文章

  1. 更强大的实时数仓构建能力!分析型数据库PostgreSQL 6.0新特性解读

    阿里云 AnalyticDB for PostgreSQL 为采用MPP架构的分布式集群数据库,完备支持SQL 2003,部分兼容Oracle语法,支持PL/SQL存储过程,触发器,支持标准数据库事务 ...

  2. flink实时数仓从入门到实战

    第一章.flink实时数仓入门 一.依赖 <!--Licensed to the Apache Software Foundation (ASF) under oneor more contri ...

  3. 大数据之Hudi + Kylin的准实时数仓实现

    问题导读:1.数据库.数据仓库如何理解?2.数据湖有什么用途?解决什么问题?3.数据仓库的加载链路如何实现?4.Hudi新一代数据湖项目有什么优势? 在近期的 Apache Kylin × Apach ...

  4. 【实时数仓】Day01-数据采集层:数仓分层、实时需求、架构分析、日志数据采集(采集到指定topic和落盘)、业务数据采集(MySQL-kafka)、Nginx反向代理、Maxwell、Canel

    一.数仓分层介绍 1.实时计算与实时数仓 实时计算实时性高,但无中间结果,导致复用性差 实时数仓基于数据仓库,对数据处理规划.分层,目的是提高数据的复用性 2.电商数仓的分层 ODS:原始日志数据和业 ...

  5. HBase实战 | 知乎实时数仓架构演进

    https://mp.weixin.qq.com/s/hx-q13QteNvtXRpNsE5Y0A 作者 | 知乎数据工程团队编辑 | VincentAI 前线导读:“数据智能” (Data Inte ...

  6. 美团点评基于 Flink 的实时数仓建设实践

    https://mp.weixin.qq.com/s?__biz=MjM5NjQ5MTI5OA==&mid=2651749037&idx=1&sn=4a448647b3dae5 ...

  7. 基于 Flink 的实时数仓生产实践

    数据仓库的建设是“数据智能”必不可少的一环,也是大规模数据应用中必然面临的挑战.在智能商业中,数据的结果代表了用户反馈.获取数据的及时性尤为重要.快速获取数据反馈能够帮助公司更快地做出决策,更好地进行 ...

  8. (转)用Flink取代Spark Streaming!知乎实时数仓架构演进

    转:https://mp.weixin.qq.com/s/e8lsGyl8oVtfg6HhXyIe4A AI 前线导读:“数据智能” (Data Intelligence) 有一个必须且基础的环节,就 ...

  9. 基于Flink构建全场景实时数仓

    目录: 一. 实时计算初期 二. 实时数仓建设 三. Lambda架构的实时数仓 四. Kappa架构的实时数仓 五. 流批结合的实时数仓 实时计算初期 虽然实时计算在最近几年才火起来,但是在早期也有 ...

  10. 实时数仓(二):DWD层-数据处理

    目录 实时数仓(二):DWD层-数据处理 1.数据源 2.用户行为日志 2.1开发环境搭建 1)包结构 2)pom.xml 3)MykafkaUtil.java 4)log4j.properties ...

随机推荐

  1. Ubuntu(Linux) PyQt5 QtUIFile 转换为 PythonModule (pyuic.py/pyuic脚本)

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...

  2. API和String字符串介绍

    API 1.如何使用Java已经写好的东西(方法,类) API(Application programming interface):应用程序编程接口 简单理解:API就是别人已经写好了的东西,我们不 ...

  3. 用了两周开源堡垒机OneTerm,我有一些建议

    上一篇文章分享了一款简洁且强大的开源堡垒机OneTerm,功能完善,代码简单,GO语言开发,用来学习很合适,拿来自用也没问题.堡垒机该有的核心功能基本都有了,方便与自有系统集成,我使用了两周,功能上没 ...

  4. SpringBoot使用org.springframework.util监控java代码执行耗时时长

    public class StopWatchTask { public static void main(String[] args){ //创建一个计时器 StopWatch stopWatch = ...

  5. KingabseES例程之巧用QueryMapping解决查询硬解析问题

    什么是QueryMapping KingbaseES Query Mapping 是一种查询映射功能.有过SQL优化经历的人都知道,对于有些SQL性能问题,可能需要涉及到SQL层面的修改,这不仅麻烦, ...

  6. #最大密度子图,0/1分数规划#UVA1389 Hard Life

    题目 \(n\) 个点,\(m\) 条边的一个无向图,问导出子图的边数除以点数的最大值 分析 考虑二分这个答案,也就是0/1分数规划之后转换成 \(E-mid*V>0\) 这个问题虽然可以精确到 ...

  7. #直径#CF804D Expected diameter of a tree

    题目 给一片森林,\(q\) 个询问,每个询问两个点, 问将这两个点所在的集合连接起来组成的新集合,它的最远两点的距离的期望值是多少. 分析 首先将以每个点为根的最大深度求出来,然后对于两棵树, 只有 ...

  8. #差分约束,SPFA#洛谷 1993 小 K 的农场

    题目 分析 对于描述1,也就是\((a,b,-c)\),\(b\)比\(a\)至多多\(-c\) 对于描述2,也就是\((b,a,c)\),\(a\)比\(b\)至多多\(c\) 对于描述3,也就是\ ...

  9. Matplotlib绘图设置---图形剖析和构建

    图形剖析和构建 Matplotlib的目标对象是用Python对象表示任意图形元素.Figure对象可以看作盛放图形元素的包围盒,其他的Matplotlib对象(Axes.Title.Grid.Spi ...

  10. 使用pillow制作长图

    这是来自一个妹子的需求,需要将多张图片拼接成一张长图 我是使用pillow这个库来实现的,下面的简单的代码,操作比较简单,代码还有优化的空间 def test(dirpath): ims = [Ima ...