反馈已提交

网络繁忙

您正在浏览的是 FineBI6.0 帮助文档,点击跳转至: FineBI5.1帮助文档

数据接入与更新

  • 文档创建者:Roxy
  • 历史版本:8
  • 最近更新:9tskIrGE 于 2024-03-19
  • 1. 概述

    数据管理部分主要是让你了解如何对已经梳理好的现有的数据接入 BI 系统,并保证数据在 BI 中的持续可用性。

    主要内容包括:

    图片12.png

    适用人群:平台管理员、IT 运维人员

    2. 数据连接管理

    • 权限管控:创建数据连接的权限仅开放给超管&次管。

    • 重复性校验:在创建数据连接之前,需检索数据连接是否已存在,不可创建两个指向(数据库地址、库名、用户等参数)完全一样的数据连接。

    • 命名规范:数据连接命名需有统一规范,可遵照例如「业务系统/数据主题_数据库类型」形式,如「BI平台运营_MySQL」、「xxERP系统交易数据_GP」;或者「业务系统/数据主题_使用部门_添加/负责人」,如「BI平台使用记录_运营部_peter」等规范进行命名。超级管理员需对数据连接命名做统一监控。

    • 固定连接名:数据连接名不能轻易修改,更改后数据库表会因为找不到数据库而报错,因此需要提前规划好数据连接名称。更改数据连接名后,SQL 数据集需要进入修改SQL页面重新选择数据连接,若数据连接名很可能要改,则尽量用 SQL 添加基础表而不是数据库db表。

    3.数据策略(直连or抽取)

    FineBI支持两种取数模式,分别是直连模式——直接使用数据库中的数据和能力进行计算,和抽取模式——数据需要抽取保存到 FineBI 的引擎中进行计算。详情可参考文档:直连数据和抽取数据的区别

    对于同一个系统来说,抽取和直连数据都可以存在,但需注意每个仪表板只能用一种模式的数据。

    • 若企业有较为专业的大数据平台,数据质量很高,或者对数据实时性的要求很高,不接受T+1数据,或者数据安全性要求很高的,不希望将数据另外存储到BI工程中,此时可以选择直连模式。

    • 此外,若企业的最大数据量超过1亿,且需要对大数据量的表进行频繁的分析,我们建议也使用直连模式,将计算下放到数据库,减少BI服务的压力。

    • 但直连版本不支持对跨数据源的数据表做联合分析(建立关联、上下合并、左右合并等),若实际业务有跨表关联的诉求,可以借由Finedatalink产品实现数据的跨库同步。

    • 抽取数据的计算,使用的是BI服务器的计算能力和资源(主要是内存),其性能相关因素主要在于服务器资源情况以及BI对于资源的使用能力;而直连的计算,是FineBI经过引擎处理,将前端的计算逻辑转化为数据库sql,然后发送给数据库进行计算,BI获取数据库返回的结果做展现,性能与数据库引擎强相关。若企业使用直连数据,需确认业务数据库能否支撑BI发送的高并发sql计算,包括在高并发下的查询速度和资源使用情况。

    4. 抽取数据更新

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

    注:详细的抽取数据性能表现,请参考本系列另一文档:https://help.fanruan.com/finebi/doc-view-1823.html

    4.1 更新类型选择

    1)数据表为维度表/数据量不大的表,可以使用全量更新。

    2)表内有「时间戳」字段可用来和「更新时间」做对比以实现增量更新,并且历史数据不会变动的,优先考虑增量更新的方式。(服务器数据集和Excel数据集除外)

    • 配置了增量更新时,增量更新的SQL不能为空。

    • 增量删除时,请勿select * ,需要仅select唯一区分的字段,例如uuid。

      4.2 更新任务调度策略

      整体的更新策略为:全局定时更新+特殊业务包定时更新+特殊单表定时更新。也就是:除少部分特殊需求(如实时性要求较高,按天更新无法满足需求,或是业务具有特殊性可另行单独设置)外,其它非数据时效性需求的抽取模式数据集更新统一采用全局更新(业务包跟随全局更新进行更新,基础数据集跟随业务包更新进行更新,自助数据集跟随父表更新进行更新)。

      • 在梳理更新策略时,可以优先设计全局更新时间(可依照中台最晚数据抽取完成时间进行灵活调整),若出现特殊情况,再配置业务包、表的定时更新。自助数据集无需配置,会跟随使用到的父表而自动更新。

      • 不做全局更新,或在全局更新基础上仍要在别的时间单独更新较多表/业务包的,应当事先查看其相关血缘表。对于相关血缘表重合较多的任务,建议放到同一时间更新,因为只要一起更新,会自动去重,不会出现重复更新的问题;相反若设置为错开一段时间更新,两个更新任务牵连的表都有同一张表的话,那这张表可能会出现重复更新的情况,浪费资源;如果多个任务的相关血缘表几乎没有重合,则建议错开更新时间,防止系统阻塞。

      • 如与数仓/中台数据更新时间有冲突,导致平台数据未能展示最新数据,管理员应当及时更新;但在更新时应当考虑数量级以及关联数据集个数,若数据集太大,或者关联过多(>50个),应当在系统空余时间点击更新。

      5.一些与系统性能有关的方案

      1)使用「全局内存控制」插件(已内置):当业务使用使内存升高达到内存预警值时,可通过BI内存监控的保护机制,主动打断导出线程。

      2)设置Excel导出限制参数:「管理系统」>「系统管理」>「常规」中,有两个参数对导出进行限制:

      • 「Excel导出数据量限制」参数默认不设置,建议配置范围:0-1000000000;

      • 「明细表导出并发线程数限制」默认值:3,建议配置范围:1-5(建议保持默认值)。


      3)若使用nginx,可配置http2:可增加浏览器请求并发数(开启http2协议会导致数据库的并发数增多,需结合数据库性能评估)。

      4)使用 FINE_CONF_ENTITY可视化配置 插件配置

      SystemOptimizationConfig.queryConditionCountRestriction 参数:可对过滤条件数量超出限制的查询直接打断,并报错:condition count out of restriction: xxxx。建议值:30(也可更小,取决于实际的过滤场景)。

      5)安装「BI联动限制」插件:当一张仪表板中多个组件发生互相联动时,三层以及以上的联动会被删除,保留最后一次受到联动的组件之前的两层联动,由此保证了仪表板性能,不会产生加载很慢的现象。

      6)限制组件查询时长:「管理系统」>「系统管理」>「常规」,有两个参数对组件查询时长进行限制:

      • 当仪表板因组件过多,组件查询时间会过长,或者仪表板中某个组件查询时间过长,导致后续 BI 请求被阻塞误认为产品宕机时,可通过这两个参数设置「直连/抽取查询超时时间」,所有实时/抽取数据查询超时之后将会中止查询,防止异常慢查询阻塞其他正常查询。

      • 建议配置范围:10-300,可根据实际业务情况和能接受的等待时长配置。

      *注:此处抽取参数限制的是polars引擎,如果要使spider引擎也生效,需要设置DistributedOptimizationConfig.spiderConfig.spider_query_timeout_open 和 DistributedOptimizationConfig.spiderConfig.spider_query_timeout_limit 参数,在并发大的情况下可以截断请求保证系统可用。


      附件列表


      主题: 管理系统
      • 有帮助
      • 没帮助
      • 只是浏览
      中文(简体)

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

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

      不再提示

      10s后关闭

      联系我们
      在线支持
      获取专业技术支持,快速帮助您解决问题
      工作日9:00-12:00,13:30-17:30在线
      页面反馈
      针对当前网页的建议、问题反馈
      售前咨询
      采购需求/获取报价/预约演示
      或拨打: 400-811-8890 转1
      qr
      热线电话
      咨询/故障救援热线:400-811-8890转2
      总裁办24H投诉:17312781526
      提交页面反馈
      仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持