电脑办公文员精品班培训内容:
1、办公自动化(windows\word\excel\ppt)
2、办公提升部分:Word专项训练、Excel专项训练、PPT专项训练
3、平面设计软件:PS、AI
4、网页设计软件:DW、FW
5、就业指导:心态与服务、商务礼仪、毕业设计、行业分析、面试技巧、实习工作等
培训目标:零基础学习达到综合能力突出的高级文秘人员职位要求;
认证证书:全国《信息化办公应用师》《创意设计师》《网页设计师》、教育部《办公文秘》
可免费试听,满意再报名,咨询:干老师,手机:137-6487-7732,qq:2290425711,v信:ffeduhaha,上海多个校区可以就近安排学习,详情可致电!
数据处理中的准确性问题
1 前言
所有与数据有关的应用,不论是基础的数据统计,更复杂的数据多维分析,还是个性化推荐、用户画像等更加深入的应用,对于数据准确性都是有较高的诉求的。数据的准确性,直接影响数据应用终的呈现效果,也从而影响基于数据的商业决策和产品智能效果。
神策分析作为新一代的用户行为分析产品,很多客户使用我们来替代上一代的流量统计产品,或作为自有数据系统的补充和延伸。在这种情况下,客户对于数据准确性自然会有不同系统之间进行对比的要求,例如,对比神策分析与上一代流量统计产品在关键指标上的差异,对比神策分析与自有数据系统的数据细节差异等。
在协助客户进行这些数据对比的时候,我们也对数据处理过程中的准确性问题有了更加系统的认识,并且在整体的产品和系统设计上也做了很多相应的处理,在这里一并分享给大家,希望能够对大家有所启发。需要特别说明的是,数据伪造、窃取等问题,在数据采集中的安全与隐私(见官网博客)这篇文章里面已有讨论,本文暂时不做深入展开。
数据处理五个步骤
对于大部分数据应用来说,数据处理都可以划分为如下五个步骤:
在这五个步骤中的每一步,都会面临数据准确性的问题,并且神策分析也相应地进行了针对性的处理和应对,下面结合我们之前的一些实际的应对案例,进行详细介绍。
2.1 采集环节的准确性问题与应对
数据采集这个环节,一般而言,会是准确性常出问题的环节之一。我们在实际服务客户,进行数据校验和对比的过程中,也积累了相当多的经验,在这里共享给大家。
在这个环节,准确性问题会有两大类:
一类是与人有关的因素。例如,由于粗心或某种原因,在部分页面没有嵌入 SDK,遗漏了对某个关键操作的采集,或者在某个关键的代码埋点处采集错了某个重要的属性。整体上,一般软件开发过程中可能有的人为错误,在这里都有可能出现。
另一类则是与人无关的,纯粹技术性的因素,下面是一些非常典型的问题,与大家分享:
在 iOS、安卓 App 上进行客户端数据采集时,为了不影响用户体验,通常都是在客户端本地做好缓存、压缩、加密等,然后在网络良好的时候会尝试异步发送数据,这也决定了这些数据的时间只能以客户端时间为准,并且有可能事件发送时间与事件发生时间有较大间隔。除此之外,少部分用户的手机有可能连时间都不准确,这些都会造成后采集的数据不准确。
在 iOS 和安卓 App 上进行新用户激活的判断时,常见的方案是在本地 ROM 上存储一个标记文件或者类似的方案,用于标记这个设备上是否是首次激活本 App。但是,一旦用户卸载然后重装这个 App,这个标记也会随之失效,从而导致首次激活判断错误。
在 H5/Web 界面上进行客户端采集数据时,都是以 JS SDK 的方式进行的,如果碰到部分异常流量无法触发 JS,则 JS SDK 是采集不到这些用户行为的,在这种情况下,如果和 Nginx 日志等进行对比,则数据也无法一致。
部分第三方统计分析工具由于技术限制,对于除预置属性以外的其余自定义属性有较多限制,例如自定义属性只能有有限个,自定义属性的取值也只能是有限个等,这样其实客观上导致了数据采集能力有限,没有办法采集到所需要的数据,从而影响数据的准确性。例如,某个漫画类的 App 想采集每一个漫画页面的阅读量,把漫画名称作为一个自定义属性,但是,在实际使用某免费的第三方流量统计工具时,却发现这个自定义属性多只能有 10 万个取值,而漫画名称又远远不止 10 万个,从而导致采集的数据并不准确。
对于采集环节这些人为的或者非人为的数据异常的因素,基于我们以往处理这方面问题的经验,我们在产品和服务层面,提供了以下方案进行处理:
产品实现了多项目机制,专门为客户提供用于测试与沙盒的“测试项目”,来完成数据采集的开发和调试,并且在上线之后,可以将测试项目的元数据同步到正式项目。
为每一个数据采集 SDK 与数据采集工具,都提供了专门的 Debug 模式,与“测试项目”和“导入数据实施查看”功能相配合,在开发过程中,就可以直观地看到采集的数据,从而很方便地对数据采集的结果进行调试。
产品提供了独特的“埋点管理”功能,对于各种不同端的 SDK、采集工具部署的埋点,都进行实时的监控与管理,直观地看到数据采集的进度和数据异常。
对于客户端 SDK 采集的数据,在架构上做了大的努力进行优化,保证对于之前就发生并且被采集到却由于网络原因近才接收到的数据,也能够准确地按照行为发生的时间进行回溯,从而准确地接收数据,并终准确地还原用户行为。而对于上一代的统计分析产品而言,由于它们本身的架构设计与统计口径,导致它们无法很好地回溯这些之前采集的数据,所以在进行对比时,会有数据差异。
对于客户端本身时间错误的问题,我们也一直在尝试在 SDK 中增加对采集的事件时间进行对时的功能。目前初步的思路是在每次成功的数据发送请求后,都根据服务端返回的准确时间,对采集的数据中的事件发生时间进行相应得修正。
对于卸载重装 App 导致首次激活判断错误的问题,我们建议客户采用不会随着卸载重装改变的设备 ID 或者用户注册 ID 作为用户标识,并且将这个判断逻辑移到服务端,从而解决了这个问题。
对于异常流量不会触发 JS 导致 JS SDK 无法抓取到数据的问题,我们应该意识到,这些连 JS 都不会触发的流量不会是正常用户的访问,对于这些数据,在绝大部分情况下,不采集反而是更好的一种方案。除此之外,对于部分反而会触发 JS 从而被采集到的 spider 等类型的机器流量,我们也根据 UserAgent 等特征做了相应的标识。
神策分析在数据采集能力上,支持多上万个的自定义属性,每一个自定义属性都支持六种类型,并且在取值上没有任何限制,从而让使用者能够采集。