IOTA架构之下的数据采集

电子说

1.3w人已加入

描述

来源:ST社区

IOTA架构是基于IOTA和AI时代背景下的大数据架构模式,其整体技术结构的核心是贯穿于整体业务始终的数据模型,具有提高整体的预算效率的作用。IOTA架构这一概念由易观首次提出,并将其应用于最新研发的精细化运营工具中。

在之前文章中介绍过易观提出的IOTA架构,相信很多同学已经对整体有了一个了解。本文将介绍IOTA架构下的数据采集。

在IOTA架构下,在当下终端设备计算能力普通较强的情况下,SDK不仅承载着以往的基础功能,并且被赋予了边缘计算的角色。例如在设备端就开始做数据完整性和有效性的校验、将用户行为转化成为统一的数据模型,然后传送给服务端。

一个稳定的数据采集端需要有如下功能,存储、回数、控制、保护。

存储:数据存储,校验当前存储数据合法性,及防止数据被第三方串改。

回数:数据上报,加密上报数据,防止被第三方截取,保证不受HOOK等影响,防止DNS污染等。

控制:控制发送策略,可以指定3G/4G/wifi 环境上传,可以调整上报时间频次、本地数据缓存规则全部可动态调整。

保护:有自保护机制。不要影响用户的正常使用,减少因逆向导致的数据异常

显而易见,普通的采集端都具有这些功能。作为IOTA架构下的采集端进行了哪些优化呢?如下:

统一模型: 在IOTA架构下从数据采集到数据接收以及数据处理都是用一套数据模型。例如对于用户行为分析时会用到的模型中,我们可以抽象出以下几个基本要素: 发生行为主体 (who),行为发生的时间(when), 行为的发生地点(where),发送的事件(what)。在IOTA架构下也统称为Common Data Model。

聚合:同样的数据进行边缘聚合计算,如某些用户访问路径可以直接由采集端来完成,生成对应类似漏斗的事件。一般这个计算是服务器下发策略来动态控制的,当然也可以随时做出调整,值得注意的是这是不可以逆的运算,并且这种模式只适用于适合间隔发送模式的数据。

校验:数据的完整和有效性可以放到采集端处理,确保SDK给server的数据不是被修改的,产生的数据是合理的,这就要求采集端加入防作弊的功能。 这是一个成熟产品长期需要投入的项目,大部分公司的风控做的也有一部分这样的工作。典型的案例如防止Xposed拦截,防止反编译,防止二次打包。

实时:数据实时上报给服务器,这样才能让用户感觉到零延迟,实时计算。如12306购票,要立即的进行查看结果,不能等得到次日才看到结果。同样的带来另一个问题,个人高频上报、用户高峰期大量用户上报需要进行区分,两者对收数服务器而言是一样的,那这个时候就需要收数服务器和采集端进行通讯,动态控制。

高可控:高可控是对数据采集最基础,也是最重要的一个要求。不然面对攻击,服务器无法实时监控,动态调整,立即处理,可能会导致服务器的短时间无法正常工作(如数据处理延迟,严重的乃至宕机)。

当然对于很多大数据架构中,数据采集端各不相同,这也是我们在支持大量用户后的一个分享。

总的来说,IOTA架构下的数据采集有如下特点:采用统一的数据模型,支持边缘计算、支持与服务器端动态交互的控制策略。这些已经在易观的数据产品中广泛使用,也欢迎大家试用易观方舟、易观千帆。

审核编辑 黄昊宇

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分