乐趣区

关于大数据:可视化神器背后的奥秘

本文由百度智能云资深研发工程师——张军在百度开发者沙龙线上分享的演讲内容整顿而成。本次分享将介绍BI 剖析背地的技术架构与流程,及可视化图表的智能举荐策略,帮忙大家深刻了解智能化可视化 BI 的技术与实际。

文:张军
视频回放:https://developer.baidu.com/l…

本次分享的主题是:智能化可视化 BI 与大屏揭秘。内容次要分为以下 4 个方面:

  • 产品介绍
  • 可视化剖析技术
  • 智能图表举荐
  • 智能语音交互

01 初识 Sugar BI

百度大数据体系产品架构全景图

百度智能云大数据产品架构全景图共三层:
底层 通过湖仓数据基础设施(包含湖仓引擎和治理开发)为企业提供数据存储、数据处理、数据开发等能力;
中层 的数据价值开掘平台,充分利用百度智能大数据技术,实现企业数据资产价值最大化;
顶层 :即基于底层和中层的技术,帮忙各行各业落地大数据利用落地。
Sugar BI 作为数据价值开掘平台之一,
它是作为数据与用户最间接接触的一个连贯。

疾速搭建专业化 BI 剖析平台

设计指标 :让用户在 5 分钟之内就能搭建业余的场景化的 BI 剖析平台
搭建流程 :增加数据源→创立数据模型→可视化成果制作(包含报表制作 & 大屏制作)
这样简略的步骤让用户非常容易就能搭建一个可视化平台。在这个过程中利用了百度可视化开源组件 Apach Echarts,通过拖拽图表组件及数据字段的形式,在 5 分钟之内就能够搭建数据可视化页面并进行简单的数据分析操作。

对接多种数据源


在数据源层面,Sugar BI 能够对接的数据源包含:

  • 开放性的数据库:MySQL、SQL Sever、PostgreSQL、Oracle 等。
  • 大数据的数据源:国产麒麟(Kylin)等。
  • 其余场景中常常会用到的大数据的组件:Hive、Spark、Impala、Presto 等。
    该平台还能够反对 Excel/Csv 数据的上传,同时还反对对接已有的 API 并且容许用户动态的输出 Json 代码来做成果展现。最初还开发内网隧道的性能,能够让内网中数据源的数据通过内网隧道的形式间接对接到云上 Sugar 的产品中。对于不同的数据源,比方 MySQL 和 SQLserver,还反对两种数据源的跨源穿插剖析。

零代码 + 拖拽式制作报表

  • 在产品报表的主编辑页面,所有的组件都是拖拽式的。
  • 应用拖拽字段的形式进行数据绑定、全界面化的增加和批改图表组件,简略易用。
  • 丰盛的图表配置项,能够让用户零门槛上手。
  • 挪动端报表布局主动适配,能够让用户随时随地多端查看 SugarBI 产品。
  • 帮忙真正懂业务的人实现剖析。

大屏展现


在大屏页面中通过内置数十种大屏模板,Sugar 将百度外部业余的 UE/UI 设计资源赋能给客户,模板包含政务、教育、批发、金融、制作等各行业,整套设计涵盖挪动端与 PC 端。客户只需简略批改,即可应用。

02 可视化技术剖析

Sugar BI 架构——有 AI 特色的可视化 +BI 剖析平台


SugarBI 在设计的定位是做一个有 AI 特色的可视化剖析平台。其中次要突出的三个特点别离是 AI、BI 和可视化。SugarBI 的整体架构图都是围绕这三大特点来构建的,它将 AI、BI、可视化这样的三个能力进行交融,最终应用容器化的技术进行打包和部署。

BI 能力:数据模型 + 灵便交互 + 数据计算


BI 能力方面,Sugar 反对对接丰盛的数据源品种,包含 excel、各种关系型数据库 mysql、oracle 等、以及大数据数仓 Doris、clickhouse 等,一共超过 30 种数据源,目前在国内是最全,并且反对了 达梦、人大金仓、南大通用、华为 GaussDB 等国产数据库

数据模型:能够单表、多表 join,反对视图以及用户自定义的 SQL 视图,并可能对字段进行主动的维度和度量的划分。

BI 引擎:以在数据模型的技术下来解析用户的交互、进行过滤条件和数据筛选,最终生成可能在数据库上运行的查问语句,包含反对数据的筛选,下钻,联动,还能够反对和 URL 的参数来做联动。

计算引擎:包含表计算,穿插计算、数据格式化,并且在数据层面也能做监控预警和留存剖析这样的一些比拟深层次的计算。

数据模型


市面上其余数据可视化的平台的毛病是须要用户去写 SQL 语句,而后将 SQL 语句查问的后果绑定到图标上,这对非技术的人员十分不敌对,因为须要用户懂 SQL 语句的书写,而且在开发的过程中须要重复的批改 SQL 语句,这样会导致效率升高。

而在 Suger BI 产品中,借鉴了 BI 的做法,将 BI 与可视化大屏的进行交融。用户是 能够抉择写 SQL 语句,也能够通过数据建模将数据通过拖拽的形式绑定到可视化图表上,所以 Sugar 产品的定位就是一个产品满足两个产品的需要。

总结起来,Sugar 数据模型有以下的劣势:

  • 能够做到用户不须要写任何的 SQL 语句。
  • 能够依据不同的数据源抹平其中不同数据库之间 SQL 语句的差别。
  • 能够在获取数据表字段的时候会主动造成维度和度量的差异,还会主动取辨认天文字段。维度和度量的辨认策略是依据字段的数据类型,而天文字段是依据字段的名称和数据内容来辨别。并且在过程中能够反对手动去调整,能够将度量转化为维度,也能够将维度转化为度量。
  • 能够对度量进行惯例的聚合操作,其中包含 Sum,Average,Max,Min,等。

讲师在分享过程中,以“销售订单数据的展现“为例,演示了建设数据模型、数据可视化等操作。具体步骤可通过:https://developer.baidu.com/l… 回顾。

数据雪花模型


在 Sugar 中多表的 Join 应用的是雪花模型,能够主动的依据字段来抉择 Join 的形式。应用最近独特先人寻找法来解决查问的字段来自多个不同表的问题。

数据筛选

  • 满足超简单场景的 Where 筛选


在简单场景下做 SQL 的 Where 筛选,就是要对数据进行过滤,对于左边非常复杂的 Where 筛选,Sugar 设计了右边的性能可能满足用户非常复杂的交互场景。

  • 聚合查问后的 Having 筛选


Sugar 还反对聚合查问后的 Having 筛选,例如场景是查问年度总销售额大于 13 万的城市,对应到 SQL 语句的 Having 场景,是对数据聚合后再做一个筛选。

过滤组件


交互式的数据筛选其中分为页面整体的过滤组件和单个图表的过滤组件。

SQL 查问层面的数据计算

特点:最终都转化为 SQL 语句,在数据库层面进行计算。具体可做的计算操作包含:

  • 数据格式转换
  • 日期工夫的聚合计算
  • 计算字段
  • 分桶分组

二次计算

二次计算是指在 SQL 查问后果后的再次计算,该计算产生在内存中。具体包含:

  • 数据值映射
  • 穿插透视表
  • 共计、均值
  • 表计算、疾速表计算

性能优化

Sugar 在性能优化方面做了如下尝试:

  • 数据缓存:能够利用 Redis,确保同一个 SQL 只执行一次。
  • 针对不同数据源的非凡优化,如 Clickhouse 的留存计算 Retention
  • 异步多线程的表计算

03 智能图表举荐

智能图表目标

  • 依据数据主动举荐最适宜的图表类型
  • 图表类型的切换
  • 作为智能语音交互的根底

智能图表流程


智能图表首先是对系统外部 100 多种的图表进行形象,从图表中提取特色。而后在图表举荐模块将图表的特色与以后用户输出的特色做一个匹配,之后举荐的图表有一个列表,并对列表中对每一个图表进行打分,最初进行排名将得分最高的图表举荐给用户。

举荐策略


图表举荐策略设计,是针对每一个图标设计的,有两个规定:
第一个强制规定,是必须要满足的
第二个是可选规定,是有这个规定就能够加分。
举荐策略是硬性条件和加分条件的组合,强制规定之间做乘法,可选规定之间做加法,而后在每一个规定外面都会设计相应的权重。

规定设计

强制规定只有一个,就是为了确保用户须要剖析的每个字段都能在被举荐的图表中有所体现。
可选规定针对不同的图表就会不一样,它形容的是:

  • 计算输出字段特色和图表特色对字段需要的类似水平
  • 和日期字段无关的规定
  • 和度量单位无关的规定

04 智能语音交互

Sugar BI 就是要成为可视化 BI 剖析界的智能助理的角色,能够在智能图表的根底上做智能的语音交互。

讲师在分享过程中,演示了报表中的智能问答交互演示,可通过:https://developer.baidu.com/l… 回顾。

语音问答整体计划


问答模型基于数据模型实现的。数据模型中的同义词、举荐问题、维度数据、Schema 构造能够送入问答模型,紧接着问答模型就会做 NLU(自然语言了解)将数据模型了解透彻。
在用户问答的模型中包含两种形式:
第一种是能够通过间接的文字输出形式;
第二种是能够通过大屏或挪动端的语音输入而后转换为文字。最终问答模型外面是一个文字了解的过程。
问答模型最终的输入后果,会将问题主动了解为要查问数据模型的哪些字段并且要做一些什么样的数据筛选比方:排序、聚合运算,最初通过 Sugar 智能图表的转换过程最终出现一个可视化的后果。

05 下一步打算及 BI 将来方向

BI 剖析的趋势


下一步打算聚焦在智能化剖析的过程上,次要能够分为以下四个品种的剖析:

  • 主动剖析:能够依据数据模型,用户只给定一些维度和度量,就能够主动生成可视化的报表或者大屏页面,而后页面中会主动的生成图表,也会主动增加一些过滤组件,最初用户能够在这个成果的根底上做一些可视化的批改。
  • 归因剖析:指某一指标产生的较大的变动的时,可能帮用户主动找到是哪些维度引起的,每个维度的别离影响的贡献度是多少,都能够通过归因剖析来进行量化。
  • 异样剖析:指的是数据产生激烈变动时须要找到起因,后续会和归因剖析一起进行。异样剖析个别都是零碎被动剖析而后主动地将异样报进去,所以会联合数据预警,出现异常的时候就被动给用户发预警。
  • 预测剖析 :指的是在历史数据的根底上,利用机器学习、AI 算法等一些策略,对后续的数据走势做出肯定的预测,相当于是一种对将来数据的剖析。这样 Sugar 就能更好的帮忙用户总结过来,并且还要展望未来,为用户的决策做更好的数据撑持。
    有了 AI 剖析和智能化的交互,百度认为传统 BI 的发展趋势就是“AI+BI”的能力交融!

以上是老师的全副分享内容,有问题欢送在评论区提出。

往期举荐
6000 字,详解数据仓库明星产品背地的技术神秘

扫描二维码,备注:大数据开发,立刻退出大数据产品 & 技术交换群。

退出移动版