反馈已提交

网络繁忙

您好,只有最新版本的6.X支持在线编辑修改,如果想创建/编辑文档,请移步到 *最新版本*

数据更新方案

  • 文档创建者:Roxy
  • 历史版本:10
  • 最近更新:帆软BI项目管家 于 2022-09-26
  • 1. 概述

    1.1 应用场景

    梳理好数据在 BI 中的存放结构后,就可以将数据库中的数据接入 BI (添加数据库表添加SQL数据),存放在对应的位置。

    如果你使用的是 抽取版本,还需要进行数据更新 后才能保证数据的时效性和可用性。

    此时,由于 BI 系统中数据表繁多且数据量大,关联、引用等复杂,更新时间势必很长,如果没有好的数据更新方案,就会出现数据时效性不足,更新缓慢、系统性能差等问题。

    因此作为管理员该如何设计 BI 系统的更新方案就非常重要。

    1.2 预期效果

    希望数据更新能保证数据正常使用,系统性能稳定、数据更新速度较快,资源消耗相对较少;避免因为错误设置带来的问题和风险。

    • 形成全局定时更新、特殊业务包定时更新、特殊单表定时更新的更新体系;

    • 父表更新后子表也会跟着更新,不需要再手动设置;

    • 更新顺序为:1)基础表更新  2)数据处理用户在普通业务包创建的处理性质自助数据集更新 3)关联缓存更新 4)其他自助数据集更新

    1.3 实现思路

    • 对于BI 项目经理(管理员)通过设置数据更新,保证业务数据的时效性(例如始终确保BI数据是使用时间前一天的数据)。

    • 对于其他 BI 编辑用户,也需要评估更新数据表的范围,以此更好的使用 BI。

    2. 数据更新类型说明

    • 更新种类:根据表的数据量大小,确定更新种类是全量或是增量更新。建议维度表采用全量更新、事实表采用增量更新。

    • 更新频次:临时更新是需要手动点击按钮进行更新;定时更新可设置更新时间和频率,适合设置基础表和宽表在夜间更新。

    • 更新细粒度:分为单表、业务包、全局更新,通过上一层对下一层进行控制,实现更新粒度的控制。例如:全局更新是对所有业务包更新、业务包更新是对业务包下所有单表进行更新。可对业务包、单表设置不跟随上一级更新,此时全局更新时一些特殊业务包/单表不跟随全局更新而更新。

    使用推荐:

    • 在修改单个自助数据集后时适合用单表手动更新,而一些特殊的单表如数据库的前日数据在早上7点才更新完毕,适合设置定时单表更新,而不是跟随业务包或者全局更新。

    • 而业务包更新和全局更新由于更新耗时较长,适合在无人使用BI的时间,如下班后、夜间进行更新,从而最小程度上影响使用用户。

    3. 全局更新方案

    3.1 梳理基础表更新需求

    梳理基础表(数据库表SQL 表)的更新需求。

    最重要的是获取表更新频率和时间:根据大部分数据表的更新频率和时间可确定全局更新的时间;

    根据数据量去判断表更新种类:对于数据量不大的表可使用「全局更新」;数据量较大的事实表适合使用「增量更新」。

    可以创建如下的数据表进行需求梳理:

    分组业务包名称表名称表类型数据量源数据更新完毕时间更新频率&时间更新种类

    分组1

    业务包1

    表1

     SQL/DB/Excel

    1kw

     晚12点

    每天1次,12点30后

    全量







    每天1次

    增量







    不更新








    3.2 设置全局定时更新

    取大多数表的更新频率&时间作为全局更新的更新频率&时间,在「全局更新」下设置「定时更新」任务。

    设置定时全局更新任务:更新时间&频率,结束时间通常选无期限,如下图所示:

    3.3 设置单表增量更新

    此时全局定时更新的设置: 全局更新对所有业务包更新、业务包更新对业务包下有所单表更新。从而完成对所有数据表的定时更新,但是对于跟随业务包更新的数据表,会有一部分由于数据量比较大,需要设置为增量更新,也就是只更新新增的数据。

    因此需要对每一个增量更新的单表,设置为业务包更新时,首次全量,此后增量更新,如下图所示:

    3.4 设置特殊业务包的业务包定时更新

    特殊业务包指的是更新频率&时间与其他表/业务包差异过大,不跟随全局更新一起更新的业务包,例如凌晨6点更新的业务包、每周更新一次的业务包、不更新的业务包。

    注:若无特殊业务包可跳过此步骤。

    查找特殊更新频率&时间的业务包,设置业务包更新为:全局更新时不更新,并对业务包设置定时更新任务。

    例如业务包1只需要每周六的4点后更新数据,一年后数据停用就不需要更新,点击「业务包更新」设置为全局更新时不更新,并根据业务包的更新时间&频率、设置定时更新任务的名称、开始时间、执行频率、结束时间等属性,设置结果如下图所示:

    3.5 设置特殊表的单表定时更新

    特殊表指的是更新频率&时间与其他表/业务包差异过大,不跟随全局更新一起更新的数据表,例如凌晨6点更新的数据表、每周更新一次的表、不更新的数据表。

    查找特殊更新频率&时间的单表,设置单表更新为:业务包更新时不更新,并对该单表设置定时更新任务(若数据量较大可设置增量更新)。

    注:若无特殊业务包可跳过此步骤。

    例如由于某数据表早晨7点才更新昨日数据,因此属于更新频率和时间与其他表差异较大的特殊表,需要单独设置单表定时更新,且由于表的数据量比较大,因此设置为增量更新。

    修改特殊单表的跟随业务包更新设置为「首次全量,此后不更新」,根据此单表的更新频率&时间和更新种类,对单表添加定时更新任务,设置单表更新的任务名称、更新方式(全量/增量)、开始时间、执行频率、结束时间,如下图所示:

    并输入增量更新语句,如下图所示:

    4. 用户手动更新方案

    • 根据需要手动更新的表的范围,来选择手动更新的细粒度,是进行单表更新还是业务包更新;

    • 评估表更新时间表的关联更新;

    • 评估表影响范围;

    • 根据评估选择更新时间及范围。

    注:尽量避免白天(BI系统有使用用户时)进行手动全局更新或业务包更新。

    5. 注意事项

    • 尽量避免在白天更新原始数据和基础数据,若出现表白天无故更新且无人操作的情况,请检查自动更新设置中的时间设定是否存在问题。

    • 更新时将相近时间的任务合并,放在一起更新,减少自助数据集重复更新。

    • 避免出现大量的单表且更新时间比较长的定时更新,尽量使用「全局更新」,可设置一天一次。

    附件列表


    主题: 管理员指南
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览

    售前咨询电话

    400-811-8890转1

    在线技术支持

    请前往「服务平台」,选择「在线支持」

    热线电话:400-811-8890转2

    在线QQ(将在2023.01.03关停):800049425

    总裁办24H投诉

    热线电话:173-1278-1526

    文 档反 馈

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭