--1-3

*本文由观远数据产品技术大神-小刚投稿。

一直以来,BI平台的数据如何保证及时有效地更新,是很多用户关心的问题。通常情况下,对于T+1或其他定期性的数据分析,大多数BI平台,包括观远数据,都会采用定时任务的方式来触发数据更新。这边以观远数据为例,简单进行说明。

场景一:
某电商ERP平台需要从业务系统直接抽取数据至BI平台。
由于电商ERP平台白天业务交易繁忙,我们一般会采取凌晨一两点定时 进行前一天增量数据的抽取。

场景二:
某便利店客户自建了数仓,需要在每天数据处理完导入数仓后发起BI平台的数据更新。
由于BI平台的数据更新必须等数仓中数据更新完成了以后才能发起,所以必须要选择一个比较合适的数据更新时间点。比如数仓数据更新完成时间是每天7点,那么我们可以把BI平台的数据更新时间选在每天7点10分。

数据仓库(DataWarehouse),一般缩写成DW、DWH。数据仓库是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策。
——来自智库百科

一、定时的数据更新存在弊端

有时候数仓的数据更新并不是每天都能准时完成的。比如,在品牌周年庆、双十一等大型营销活动举办的时候,数据量有可能会暴增,那么原本每天7点就能完成的数据导入工作,可能就需要多延长半个小时甚至更长。

而BI平台的数据更新如果还是在7点10分准时发起,那很有可能拿到的数据是不完整的。更有甚者,如果客户的ETL系统出现了问题,导致数仓数据根本就没有更新,或者数仓数据导入本身就需要人工完成的,完成时间上将存在很大不确定性。一旦这类情况发生,必须要用户去手动点击触发各个数据集的数据更新,非常麻烦且容易遗漏。

二、全新数据更新方式——“URL外部触发更新”

为了解决这个问题,观远平台首先提供了多时间点的自动数据更新(一天四次),尽可能保证用户在数仓数据更新后,能尽快同步到BI平台。

在此基础上,观远平台又开创性地提供了“URL外部触发更新”的全新数据更新方式,可允许用户调用指定接口,将BI平台数据更新完美融合到企业自身的数据处理流程中去,进一步满足用户对于数据及时性的渴求。

--1-3

我们知道,为了保证用户体验和不给服务器、数仓造成太大的计算压力,不管是抽取数据还是直连数据库,BI系统基本都会有一定的缓存机制。缓存的存在,不但可以有效降低数据库查询的次数,减少服务器冗余计算,也同时给终端用户带来快速的数据获取体验。

但由于BI系统总是主动地进行数据更新,而无法从外界获知当前缓存是否该失效了,因此在数据的及时有效性方面总是存在缺憾。特别是在数据时效性较强的使用场景下,这常常是以往的数据更新方式一直被客户诟病的地方。

如今有了观远数据这个外部触发数据更新的功能,用户就可以在数据集详情页“数据更新”一栏中,获取一个用来更新当前数据集的一个URL,并把该URL的调用集成到现有的数据处理流程中去。

这样一来,数据仓库的数据导入流程就变成:在相关数据导入完成后,调用该URL、触发BI平台的更新。这样做的好处是,当且仅当数仓数据完成了正常更新后,就能及时触发BI平台的数据更新,既保证了数据更新的及时性,也保证了数据的有效性。

三、调用Web端的数据更新 VS 调用URL的数据更新

有些高级玩家可能要问,我也可以通过调用Web端的数据更新接口来触发数据集更新啊,这两者有什么区别?

当然有区别!如果通过Web端的数据更新接口来触发数据集更新,势必是需要先进行用户登录获取有效token的,那么如果把这整个流程都整合在数据处理流程里面,一来步骤比较繁琐,调用也比较麻烦,二来账户的安全性得不到保障(因为账户可能会明文显示在脚本里)。

而在URL触发更新里面,细心的用户可以发现,URL里面其实已经带了一个token,而这个token仅对当前数据集更新操作有效,再加之这个URL只有数据集所有者和管理员才能获取到,且可随时关闭或重置,极大程度上保障了用户的账户及数据安全。

总结

观远数据URL触发更新的内容我们就介绍到这里,作为一种更敏捷的数据触发更新机制,它将为企业构建更及时、更安全的数据自动化更新全流程,帮助企业快速获取最新数据变化,为运营决策提供前提支持。

同时,除了URL触发更新之外,观远产品与传统BI相比,另有许多创新之处。也正是凭借这一系列的新一代BI产品特性,观远才越来越多地吸引到一批又一批的重量级客户与观远一起踏上合作之路。未来,观远数据也将以持续深化用户体验为己任,保持互联网产品式的迭代速度,为大家带来更好的智能BI产品。