【热点】谷歌的数据埋点技术与框架

简介:
    当一个行业中有一家企业开始开发手机应用,就会带动一批企业跟风。就像上汽开始做车享家,带动了长城的哈弗商城、东风的车巴巴等一批自营平台。自四大国有银行做手机App了,各种城商行、农商行、股份银行都开始开发移动端应用。
    效果究竟好不好呢,其实大家看看豌豆荚的下载量基本就心里有数了,这是统计用户量的好方法,那如何统计活跃用户量呢,服务端会有每日的会话数,再进阶的,例如对于每一个页面的停留时间、用户跳转习惯等就需要通过埋点技术了。千万不要小看这些数据,它们直接决定了不同页面的广告定价以及用户的特征聚类。
    以谷歌的埋点分析框架为例,在Firebase平台有一些预定义常用的事件及数据模型。在通过应用集成推送到前端各设备之后将收集到的事件回传个Firebase,再通过谷歌的Tag manager做事件归类并打标签,后续可以调用谷歌自己的分析工具Google Analytics做客群或页面分析,或将归类后的事件直接输出给Google Ads,使其对某一类特定标签(比如中产家庭的家庭主妇)进行定向广告输出。

1

    最近有幸参加了阿里的一次分享会,了解到淘宝网的页面上有无数个埋点帮助后台做客群分析。
  ![2](https://yqfile.alicdn.com/7ef14e178a8632eb3e6d273fb9b66ad1024c8af9.png)
    相对而言,阿里的技术总是先从自身平台出发,最终能走向市场化的产品并不多。谷歌就不一样,从社区扶持一些已经相当有用户基础的技术,然后根据业务场景做成客制化产品。Firebase有以下几大特点:
  1. 用户体验好:Firebase有良好的界面, 完善的文档体系,谷歌的人员也会竭力倾听开发者的诉求;
  2. 价格优势:Firebase的基础版是免费的,后续根据用户的增长,可选择付费计划,线性有计划地增加数据库的投入。小编着实讨厌那种不知会用户,当用户达到一定数据量的时候,自动开始收费的无良厂家。
    3
  3. 部署和维护省时省力,下面小编会简单就这点进行实践论述。
    部署Firebase需要在本地安装通用的开发工具,例如VS Code或Node JS,然后就可以进入Firebase的网页控制台,创建一个Firebase的项目了。
    4

    由于是搭建在谷歌云平台上,因此服务的扩展也非常简单,通过按键操作就可以实现与Cloud Vision和谷歌的集成。
    通过firebase  init hosting命令就可以在本地创建出Firebase的物理框架。首先,firebase.json文件定义了项目的文件结构。

    5

     firebaserc文件是定义该项目的脚本文件;public文件夹下就是整个应用程序了,跟传统开发类似,需要先定义加载的模块以及SDK

    6

    通过以下脚本就可以实现与谷歌的集成身份验证:
  4. googleLogin() {
    const provider = new firebase.auth.GoogleAuthProvider();

    firebase.auth().sighInWithPopup(provider)

    .then(result => {
        const user = result.user;
        document.write('Hello ${user.displayName}');
        console.log(user)
    })
    .catch(console.log)

    }

    用户登录完成后,查看后台数据就可以看到用户的登录信息及在线状态。

    7

    在服务端管理界面可以通过各种方式与用户进行互动了。

    8

    在数据库界面就可以定义输入的标签,这里每个标签都可以在随后的tagmanager中用来做统计用。

    9

    Firebase的发布就更加简单了,通过firebase serve和firebase deploy就可以完成现有数据模型的公网发布。
    Tag Manager可以对Firebase定义的标签进行实时统计汇总,并定义后续工作流。例如当某样商品的数量超过某一数值,就将其店主列入网红店主名单。

    10

    根据企业体量的不同,Tag Manager也提供了不同的标签解决方案,这里小编简单罗列下供读者朋友参考。

    11

相关文章
|
11月前
|
消息中间件 分布式计算 大数据
大数据-166 Apache Kylin Cube 流式构建 整体流程详细记录
大数据-166 Apache Kylin Cube 流式构建 整体流程详细记录
201 5
|
测试技术 iOS开发 MacOS
JUnit单元测试报错NoClassDefFoundError: org/junit/platform/launcher/core/LauncherFactory
因为 JUnit 5 = JUnit Platform + JUnit Jupiter + JUnit Vintage JUnit Platform是提供了运行(测试框架)环境的平台 JUnit Jupiter 是新的Junit5(子项目提供了一个基于平台测试运行Jupiter的测试引擎) JUnit Vintage提供了Junit3/4的测试引擎(向前兼容) 所以这里报错的原因应该是:缺少对应依赖()。
1165 0
JUnit单元测试报错NoClassDefFoundError: org/junit/platform/launcher/core/LauncherFactory
|
11月前
|
SQL 消息中间件 大数据
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
大数据-159 Apache Kylin 构建Cube 准备和测试数据(一)
261 1
|
JSON API 网络架构
gRPC 与 REST 的比较分析:哪种 API 适合您的开发需求?
gRPC, 由 Google 推出的开源远程过程调用(RPC)框架, 使两个应用程序间的方法调用变得简单,支持结构化数据的交换。通过采用 Protocol Buffers (Protobuf) ——一种与语言无关的接口定义语言,gRPC 体现了许多现代网络通信技术的优势
gRPC 与 REST 的比较分析:哪种 API 适合您的开发需求?
|
11月前
|
SQL 存储 监控
大数据-161 Apache Kylin 构建Cube 按照日期、区域、产品、渠道 与 Cube 优化
大数据-161 Apache Kylin 构建Cube 按照日期、区域、产品、渠道 与 Cube 优化
188 0
|
数据采集 存储 Java
Flume Agent 的内部原理分析:深入探讨 Flume 的架构与实现机制
【8月更文挑战第24天】Apache Flume是一款专为大规模日志数据的收集、聚合及传输而设计的分布式、可靠且高可用系统。本文深入解析Flume Agent的核心机制并提供实际配置与使用示例。Flume Agent由三大组件构成:Source(数据源)、Channel(数据缓存)与Sink(数据目的地)。工作流程包括数据采集、暂存及传输。通过示例配置文件和Java代码片段展示了如何设置这些组件以实现日志数据的有效管理。Flume的强大功能与灵活性使其成为大数据处理及实时数据分析领域的优选工具。
364 1
|
SQL 人工智能 关系型数据库
SQL Chat:从SQL到SPEAKL的数据库操作新纪元​
SQL Chat:从SQL到SPEAKL的数据库操作新纪元​
388 0
|
消息中间件 数据采集 移动开发
数仓建模—埋点设计与管理
开始之前我们先看一下我们为什么要收集埋点数据,埋点都可以做什么,埋点主要用于记录用户行为,几乎是应用必不可少的功能.埋点的作用包括但不限于
1269 0
数仓建模—埋点设计与管理
|
消息中间件 SQL 监控
ETL的灵魂:调度系统
ETL的灵魂:调度系统
2873 1
|
消息中间件 缓存 Dubbo
java线程池ThreadPoolExecutor八种拒绝策略浅析
java线程池ThreadPoolExecutor八种拒绝策略浅析
429 0