IOTA架构下的数据采集

码途逸风
• 阅读 2862

IOTA架构下的数据采集

导读

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

在之前文章中介绍过易观提出的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架构下的数据采集
当然对于很多大数据架构中,数据采集端各不相同,这也是我们在支持大量用户后的一个分享。

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

IOTA架构下的数据采集

点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
美凌格栋栋酱 美凌格栋栋酱
7个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
待兔 待兔
1年前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
梦
4年前
微信小程序new Date()转换时间异常问题
微信小程序苹果手机页面上显示时间异常,安卓机正常问题image(https://imghelloworld.osscnbeijing.aliyuncs.com/imgs/b691e1230e2f15efbd81fe11ef734d4f.png)错误代码vardate'2021030617:00:00'vardateT
Wesley13 Wesley13
3年前
Organic polysilazane IOTA 9118
!(http://www.siliconeoil.net/productimg/20170417113345.jpg)(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.siliconeoil.net%2Fproductorganicpolysilazaneiota911
Stella981 Stella981
3年前
Android So动态加载 优雅实现与原理分析
背景:漫品Android客户端集成适配转换功能(基于目标识别(So库35M)和人脸识别库(5M)),导致apk体积50M左右,为优化客户端体验,决定实现So文件动态加载.!(https://oscimg.oschina.net/oscnet/00d1ff90e4b34869664fef59e3ec3fdd20b.png)点击上方“蓝字”关注我
Wesley13 Wesley13
3年前
go语言学习
iotaiota,特殊常量,可以认为是一个可以被编译器修改的常量。iota在const关键字出现时将被重置为0(const内部的第一行之前),const中每新增一行常量声明将使iota计数一次(iota可理解为const语句块中的行索引)。iota可以被用作枚举值:const(a
Stella981 Stella981
3年前
IOTA price analysis
 !(https://oscimg.oschina.net/oscnet/d5b725f94149b131b770038fdb8f2c22f74.png)Iotacoin(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fciticoins.com%2Fiota%2F)char
Stella981 Stella981
3年前
Docker 部署SpringBoot项目不香吗?
  公众号改版后文章乱序推荐,希望你可以点击上方“Java进阶架构师”,点击右上角,将我们设为★“星标”!这样才不会错过每日进阶架构文章呀。  !(http://dingyue.ws.126.net/2020/0920/b00fbfc7j00qgy5xy002kd200qo00hsg00it00cj.jpg)  2
Wesley13 Wesley13
3年前
IOTA架构下的数据采集
!(https://oscimg.oschina.net/oscnet/up8a9d22568bf3799937776d063b2635bf708.JPEG)导读IOTA架构是基于IOTA和AI时代背景下的大数据架构模式,其整体技术结构的核心是贯穿于整体业务始终的数据模型,具有提高整体的预算效率的作用。IOTA架构这一概念由易观首次提出,并
码途逸风
码途逸风
Lv1
墙里秋千墙外道。墙外行人,墙里佳人笑。笑渐不闻声渐悄,多情却被无情恼。
文章
5
粉丝
0
获赞
0