告别 Kafka,拥抱 Databend:构建高效低成本的用户行为分析体系
用户行为数据埋点指标是数据仓库中不可或缺的重要数据源之一,同时也是企业最宝贵的资产之一。通常情况下,用户行为数据分析包含两大数据源:用户行为分析日志和上游关系型数据库(如 MySQL)。基于这些数据,企业可以进行用户增长分析、用户行为研究,甚至通过用户行为分析精准排查用户问题。
用户行为数据分析的挑战
用户行为数据分析的特点决定了要构建一套可扩展、灵活且低成本的分析架构并非易事,具体表现在以下几个方面:
- 高流量和大容量:用户行为数据的产生量非常大,对存储和分析能力要求高;
- 兼顾多种分析需求:既需支持 BI 报表的静态展示,也需满足灵活的 Adhoc 查询;
- 多样化 数据格式:用户行为数据通常包含结构化数据与半结构化数据(如 JSON);
- 实时性要求:需要对用户行为快速响应,实现及时反馈。
由于这些复杂性,大多数初创企业和中小型公司通常会选择通用埋点系统(如 Google Analytics、Mixpanel)作为用户行为分析的起点。这些系统只需在网站中插入 JSON 代码,或在 APP 中嵌入 SDK,即可自动采集并上传埋点数据,生成访问量、停留时间、转化漏斗等指标。
然而,通用埋点系统虽然简单易用,但在实际使用中存在以下不足:
- 数据 明细 的缺失。 通用埋点系统往往不会提供用户具体的访问明细日志,只能在 UI 中查询预设的报表;
- 自定义查询能力不足。 通用埋点系统的查询模式并非标准 SQL 查询接口,当数据科学家希望构建复杂的 adhoc 查询时,由于缺少 SQL 能力,难以支持复杂的自定义查询;
- 成本快速上升。 通用埋点系统一般采用阶梯计费模式,往往到了一个阶梯时,费用会翻倍。随着企业流量的持续增长,如果要查询更大范围的用户行为数据时,成本会迅速增加。
自建用户行为分析体系的复杂性
为了应对通用埋点系统的局限性,不少企业在业务增长到一定阶段后,往往都会选择自建一套用户行为埋点数据分析体系。通常情况下,传统自建架构多基于 Hadoop 大数据生态,典型实现流程如下:
- 在客户端(APP、网站)中埋入 SDK,采集用户行为日志 activity logs;
- 使用 Activity gateway 埋点指标网关,收集客户端发来的日志,并将日志转到 Kafka 消息总线;
- 利用 Kafka 将日志 logs 落到 Hive 或 Spark 等计算引擎;
- 通过 ETL 工具将数据导入数据仓库,生成用户行为分析报表。
虽然这一架构在功能上能够满足需求,但其复杂性和维护成本极高:
- Kafka 需要依赖 Zookeeper ,还需要配备 SSD 硬盘保障性能。
- 从 Kafka 到 Data Warehouse 需要 kafka-connect ;
- Spark 要运行在 YARN 上,ETL 需要 Airflow 管理;
- 当 Hive 存储达到上限,可能还需要将 MySQL 换成 TiDB 等分布式数据库。
这种架构不仅需要大量的技术团队投入,还极大增加了运维负担。而在企业不断追求降本增效的背景下,传统 Hadoop 架构已不再适合需要简单、高效的业务场景。
新选择:基于 Databend Cloud 的轻量化用户行为分析
随着技术的演进,企业在设计用户行为数据埋点架构时有了新的选择。Databend Cloud 凭借简洁的架构和灵活性,提供了一种高效且低成本的用户行为分析解决方案。
-
Databend Cloud 的架构特性
- 100% 面向对象存储,完全存储计算分离,显著降低存储成本;
- Rust 编写的 Query 引擎性能高,价格低廉。在计算资源闲置时自动休眠,不产生额外费用;
- 支持 100% ANSI SQL ,支持半结构化数据分析(JSON 和自定义 UDF)。当用户有一些比较复杂的 JSON,可以用内置的 JSON 分析能力或自定义的 UDF,分析半结构化数据;
- 内置 Task 调度驱动 ETL,完全无状态,自动弹性伸缩。
- 典型架构实现
企业可以通过以下流程快速搭建用户行为数据分析体系:
- 日志采集与存储:不再需要 Kafka,用户直接将埋点日志通过 vector 以 ndjson 格式落到 S3。
- 数据摄入与处理:在 Databend Cloud 中创建一个 copy task 任务,自动把日志拉出来,落到 S3。很多时候,S3 在 Databend Cloud 中可以当做一个 stage,落到 stage 里面的东西就可以被 Databend Cloud 自动吸进来,然后在 Databend Cloud 中进行处理,再从 S3 转出去。
- 查询与报表分析:通过自动休眠的 Warehouse 运行 BI 报表/即席查询,休眠时不产生任何费用。
通过上述方式,Databend Cloud 能够以最简化的方式实现企业对高效用户行为分析的需求。
案例:Databend Cloud 在用户行为分析的应用实践
某互联网应用公司有一个典型的用户行为分析场景,在做架构选型时选择了 Databend Cloud 进行用户行为数据分析体系的搭建。在使用 Databend Cloud 后,该用户放弃了 Kafka,直接用 Databend Cloud 建了一个 stage ,把用户行为日志落在 S3 中,再用 task 导进 Databend Cloud 中。最终,该公司仅用一个下午便完成了 POC,从复杂的 Hadoop 架构切换到 Databend Cloud,极大简化了运维和操作成本。
用户所需要的准备工作非常简单。首先,准备两个 Warehouse,一个用于 Task 摄入数据,一个用于 BI 报表查询。一般来说,摄入数据的时候可以用一个规格小点的 Warehouse,查询的 Warehouse 规格高一点,因为查询不会一直查,可以节省更多成本。
然后点击 connect 获得一个连接串,这个连接串可以放在 BI 报表用于查询。Databend 提供了各种语言的 Driver。
接下来的准备工作只有三步,一是建表,其中的字段与 NDJSON 格式的日志一致。然后创建一个 stage,将存放用户行为日志的 S3 目录录进来,然后再创建一个 task ,每一分钟或者十秒钟执行一次。它会自动把 stage 里的文件导进来,然后自动把它清理掉。准备工作完成后,就可以源源不断地把用户行为日志录进来。
架构对比与收益
通过对比通用埋点系统、传统 Hadoop 架构和 Databend Cloud,Databend Cloud 的优势显而易见:
- 架构简洁性:摆脱了复杂的大数据生态,无需 Kafka、Airflow 等组件。
- 成本优化:利用对象存储和弹性计算实现低成本的存储与分析。
- 灵活性与性能:支持高性能 SQL 查询,满足多样化的业务场景。
此外,Databend Cloud 提供了快照机制,支持数据的时点回溯(Timetravel),确保数据安全性和可恢复性。
在构建用户行为数据埋点系统时,除了存储、计算方面的成本,维护成本也是架构选型的重要因子。Databend Cloud 通过对象存储与计算分离的架构革新,彻底改变了传统用户行为数据分析体系的复杂性。企业可以轻松搭建一套高性能、低成本的埋点分析架构,实现从数据采集到分析的全流程优化。这一方案无疑为企业在降本增效的同时释放了数据的最大价值。
关于 Databend
Databend 是一款开源、弹性、低成本,基于对象存储也可以做实时分析的新式数仓。期待您的关注,一起探索云原生数仓解决方案,打造新一代开源 Data Cloud。
👨💻 Databend Cloud:databend.cn
📖 Databend 文档:docs.databend.cn/
💻 Wechat:Databend
✨ GitHub:github.com/databendlab...

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
TinyEngine低代码引擎2.0新特性介绍
自从TinyEngine开源以来,众多开发者已经将TinyEngine应用于生产环境,见证了其在实际项目中的表现。然而,随着项目的持续迭代和用户群体的不断扩大,我们发现用户在深度定制方面会遇到一些阻碍,其中最核心的问题集中在:源码二次开发管理问题以及定制化能力不够强大,想要深度定制必须修改源码,而当开发者们在TinyEngine的源码中融入了大量的定制业务逻辑,这又使得直接合并TinyEngine自身的新功能变得异常困难,常常引发代码冲突和错误。 为了解决用户的这些痛点问题,TinyEngine团队投入了大量的时间,对TinyEngine的架构进行了优化和调整。这次的调整不仅提升了其核心性能,还精心打磨了一系列创新功能,旨在为开发者提供更流畅、更高效的开发体验。 TinyEngine2.0新特性介绍 优化的开发体验:包引入与CLI工具 TinyEngine 2.0 版本的一大亮点是将源码开发变成了包引入的模式,并且与之相结合的提供了CLI工具,彻底改变了用户二次开发的方式。告别传统克隆源码模式,一键生成低代码平台项目。这里提供了@opentiny/tiny-engine-cli这个强大...
- 下一篇
阿里云通义万相推出图像编辑模型ACE,可实现一键P图
近日,阿里云通义万相团队推出全新的图像编辑模型ACE,只需说一句话就能生成图片和修改图片,可应用于风格化写真、分镜制作、室内设计等场景。该模型已面向全球开发者开源,其局部风格化功能已上线通义APP。 图像编辑是图像生成模型的重要辅助功能,此前业界常用的方案是将LoRA、ControlNets 和 T2I 模型组合,从而实现图像编辑能力。但该方案流程相对复杂,且使用门槛较高,大多用户无法直接体验。与传统图像编辑模型不同,ACE模型可同时支持文生图和图像编辑,用户输入口语化指令,可完成可控视觉编辑、元素编辑、区域重绘编辑、分层编辑等任务,仅用对话的方式就能实现PS的功能,例如输入文字即可一键除水印、修改证件照背景等,极大地提高了编辑效率。 上传一张照片即可对图中特定对象的风格化处理 公开论文显示,该团队提出了Long-context Condition Unit模块(LCU),能支持通用编辑任务所需的各种多模态条件输入,并且搭建了全面的编辑成对数据构造链路和指令集生成链路,最终达到精准、高质量的图像指令编辑效果。测试结果显示,ACE模型在MagicBrush的单轮/多轮编辑的多项指标和EM...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库