某二手交易平台大数据平台从 0 到 1 演进与实践

简介:

在人口流量红利不再,获客成本越来越高的时代,精益创业、MVP 的概念已经深入人心,精细化运营也是大势所趋,而这些背后本质上都依赖数据化运营,那如何根据现有业务,快速从 0 开始打造一个契合业务的数据产品呢?本文将以某二手交易平台业务为基础,讲述整个数据平台从 0 到 1 的演进与实践,希望对大家能有所启发。

1、背景

在某二手交易平台开始大数据平台建设之前,整个数据从需求提出到研发流程再到数据报表、数据产品,也是经历过一段非常混沌的时期,而且效率和质量往往很难得到保障,主要表现为以下几个方面:

(1)可用性差

比如经常出现计算延迟、异常,数据指标也常常数据对不上,很多相似的指标不清楚具体差异在哪,即使同一个指标也可能不同的同学开发的而对不上。另外数据波动无感知,比如日志格式出错,结果第二天才发现有问题。

(2)维护成本高

成百上千的日志模块,不知从何维护,出了问题也不知道从哪里可以追溯到源头和负责人。

(3)业务快速迭代,精细化、数据化运营需求和研发资源之间的矛盾

2、目标与方案

(1)目标

数据可管理、可维护、可扩展、高可用

及时、准确、直观的呈现业务数据与问题

降低使用门槛,提升使用效率

(2)方案

数据仓库化

数据平台化

3、数据仓库建设

结构化

层次化

主题化

模型化:用户模型/事件模型
1
ETL

ETL 是整个数据仓库的核心,正如业界流传的一句话:Garbage In, Garbage Out. 脏活累活都是在这一层完成,以便为上层业务提供口径、格式、逻辑统一的数据层,提升数据质量和稳定性,如果这一层没做好,上层的统计分析与数据挖掘无异于空中楼阁。ETL常见的工作如下:

无效数据

脏数据转换

数据模型/业务逻辑预处理

高可用:依赖、重试、告警、优先级

4、数据平台化与产品化

从数据体系和平台的层次来划分可以分为标准的五层结构:采集层、传输层、存储层、计算层、应用层

随着业务的不断迭代,业务逐渐复杂、数据量也急剧膨胀后,每一层都会遭遇挑战,比如采集层,如何在高并发的情况下,保证日志能稳定落地到磁盘而不重不丢不延时?是采用开源的 Nginx+Lua 方案还是自研组件造轮子?数防止数据的无限膨胀,据仓库元数据怎么管理?如何减小维护成本?计算层的任务调度如何解决依赖关系,又如何做到分布式调度高可用?以上这些问题,早期我们大部分都采用开源的解决方案,但在后续的易用性、扩展性和维护性都遭遇了不少问题,总体成本一点都不低,因此最后我们大部分还是采用自研的解决方案(这块话题比较广,细节比较多,本文暂时不展开详述,有机会后续将会单独展开分享)。又如计算层的 OLAP 引擎我们该如何选取?比如 MR 适合大规模数据集的批处理,Hive 适合灵活的探索式即席查询,Kylin 适合多维实时统计分析,Storm 适合实时流式计算,Spark 适合内存迭代型计算,到底该选谁?可以看到的是没有所谓的银弹和通用解决方案,需要结合自身的业务场景和需求来技术选型和架构。

整体技术栈与架构如下:
2
数据产品化方面主要是对数据需求与报表的抽象,最终形成通用的自动化报表工具,比如:

业务需求抽象分类:求和、求平均、TOP K、最大最小、去重、过滤

多样性的解决方案:离线、实时、单维、多维

基于这些抽象,我们比较容易实现基于报表、统计项和日志、日志行之间的逻辑映射关系,形成通用的自助化配置报表,极大释放开发资源。
3
另外产品、运营、BOSS可能随时需要关注业务运营状态、利用数据做各种分析和业务决策,我们需要考虑到平台的移动化与跨终端,这里我们在技术选型时就考虑到了这一点,利用比较流行的响应式布局框架可以近乎 0 代价实现跨平台,而不用单独去开发 iOS 或 android 客户端。
4
5、数据指标体系化、分析框架与方法论

数据指标和维度成千上万,如何基于业务去展开分析,又如何去量化运营效果,评估业务,其实是需要建立一套科学的分析框架和指标体系的,否则只会迷失在数据的海洋里,或者盲人摸象得出错误的结论,以某二手交易平台的业务体系为例,咱们可以看下某二手交易平台的数据指标体系:
5
另外基于此我们设计了一些常用的数据模型与分析框架,供业务方快速的分析决策,评估效果,比如留存、漏斗模型,精益创业里的 AARRR 分析框架,基于用户事件模型,我们还实现了自助化的漏斗、留存分析工具,供业务方自助化的配置任意想关注的路径漏斗或行为留存。
6
6、整个数据平台及其体系化的重难点

漏斗透传机制:这个属于日志埋点问题,如果不解决,一些通用的数据模型如漏斗分析就无法进行,因此我们设计了一套 Session 级别的透传机制,确保用户每个页面或动作的访问能够被串联分析,追溯来源入口,精细化分析改善现有产品和有针对性的运营。

数据治理:数据质量的体系化建设,数据仓库、实时监控是两个不错的解决方案。

业务级别的元数据管理:将元数据细化到业务层次,降低业务方的使用门槛,提升决策效率。

数据生命周期管理:哪些是热数据哪些是冷数据,核心和非核心,长期和短期,防止数据的无限膨胀,带来繁重的存储、维护成本和计算资源的浪费。

大数据场景下的实时多维分析:比如大数据场景下的实时去重计算,我们会依据不同的场景,选取不同的方案,如bitmap、分布式缓存、基数估计等等,在计算代价和时效性、准确性三方面去做 tradeoff。

7、总结:如何根据现有业务,快速从 0 开始打造一个契合业务的数据产品?

走进业务

抽象业务诉求

换位思考,走在需求的前面

站在巨人的肩膀上

万变不离其宗的方法论

相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
2月前
|
数据采集 监控 算法
利用大数据和API优化电商决策:商品性能分析实践
在数据驱动的电子商务时代,大数据分析已成为企业提升运营效率、增强市场竞争力的关键工具。通过精确收集和分析商品性能数据,企业能够洞察市场趋势,实现库存优化,提升顾客满意度,并显著增加销售额。本文将探讨如何通过API收集商品数据,并将这些数据转化为对电商平台有价值的洞察。
|
2月前
|
存储 数据可视化 数据管理
基于阿里云服务的数据平台架构实践
本文主要介绍基于阿里云大数据组件服务,对企业进行大数据平台建设的架构实践。
714 2
|
4月前
|
存储 SQL 分布式计算
开源大数据比对平台设计与实践—dataCompare
开源大数据比对平台设计与实践—dataCompare
68 0
|
4月前
|
SQL 存储 大数据
某互联网大厂亿级大数据服务平台的建设和实践
某互联网大厂亿级大数据服务平台的建设和实践
68 0
|
4月前
|
SQL 大数据 关系型数据库
开源大数据比对平台(dataCompare)新版本发布
开源大数据比对平台(dataCompare)新版本发布
69 0
|
4月前
|
SQL 存储 分布式计算
从0到1介绍一下开源大数据比对平台dataCompare
从0到1介绍一下开源大数据比对平台dataCompare
115 0
|
1月前
|
存储 数据处理 Apache
万字长文 | 泰康人寿基于 Apache Hudi 构建湖仓一体平台的应用实践
万字长文 | 泰康人寿基于 Apache Hudi 构建湖仓一体平台的应用实践
72 0
|
2月前
|
监控 物联网 大数据
智慧工地管理平台系统源码基于物联网、云计算、大数据等技术
智慧工地平台APP通过对施工过程人机料法环的全面感知、互联互通、智能协同,提高施工现场的生产效率、管理水平和决策能力,实现施工管理的数字化、智能化、精益化。
53 0
|
3月前
|
SQL 分布式计算 HIVE
开源湖仓一体平台(二):Arctic(上篇)
开源湖仓一体平台(二):Arctic(上篇)
开源湖仓一体平台(二):Arctic(上篇)
|
3月前
|
SQL 消息中间件 分布式计算
开源湖仓一体平台(一):LakeSoul
开源湖仓一体平台(一):LakeSoul