商业智能BI在面向报表和模型开发时,有什么不同?

news2024/11/25 0:32:22

企业在面试商业智能BI技术开发人员,发现基本上90%的人分不清什么是面向报表开发,什么是面向模型开发,不明白这个问题背后的意思。10%左右的人稍微暗示一下,大概就懂你想了解的是什么了,这10%的是真正有过完整的数据仓库设计开发经验的人。

所以,企业在以后招聘的商业智能BI开发人员的时候也可以拿这个问题问的试试看,可以很容易筛选出来候选人之前做BI是怎么做的,或者到底有没有数据仓库设计开发经验。

数据分析 - 派可数据商业智能BI可视化分析平台

这个差异就在于面向报表开发的形式基本上就是用户给什么报表,就写SQL拼接数据集去展现什么样的报表。在底层数据架构中大概率就是将各个业务系统数据源的数据拉通整合到一个数据库中,该清洗的还是会清洗,但是在架构上考虑的很少。这一类的商业智能BI开发人员的经验大概率做的都是报表取数、报表开发一类的工作。

通常会有两个明显的短板:

第一,业务敏感度不高。即使做了很多的报表开发,但是让讲下具体的业务是讲不出来的,或者讲的很散、深度不够,非体系化输出。这就是因为业务报表本身就是一张一张甩过来的,看完表样就取数开发了,是以报表结果为导向的,很少从整体上去思考业务的关联性,自然也就不会注意到业务本身。

第二,不太懂底层数据架构,对数据仓库有了解但不会很深入。这个并不是因为大家不努力或者技术真的就不行,而是因为身边的人做BI报表开发都是这么做的,从入行开始接触的就是这种方式,所以在经验上很难有所突破。

商业智能BI - 派可数据商业智能BI可视化分析平台

在面试工作五六年、七八年、上十年的,都会碰到这样的一类人,SQL写的很溜,报表出的也很快,但让体系化的讲讲这些业务就很难,对底层数据仓库架构理解的不够深入,碰到一些大项目、长周期的项目还是会有一些认知上的盲区和瓶颈。

面试的时候觉得自己的技术怎么着都很牛了,做了那么多的项目,开发了那么多的报表。但是过来一面试,把一些实际的场景一摆出来,10个问题可能只能答上2个。知道自己还有不会的东西,想学习。其实,技术上一般问题都不会太大,只是看问题的思维层次、面上够不够的问题。

就像面向模型开发,这就是一种思维方式。只是把用户给的报表作为梳理指标和维度的参考,在实际设计底层数据架构的时候,除了数据的拉通和清洗之外,重点考虑的是数据分析模型的通用性和可扩展性。

             数据仓库 - 派可数据商业智能BI可视化分析平台

换句话说,在设计底层数据仓库架构的时候根本就不受用户报表的影响。怎么出报表这是以后的事,这个阶段不考虑这个问题。我们要考虑的是怎么样用一个模型或者几个模型支撑到更多的分析报表,而不是一个SQL一个数据集的去支撑用户的报表。

这两者的思维方式差别是非常大的,BI项目落地的结果自然也是完全不同的。特别是体现在BI项目的二期、三期,差别会非常的明显。按照面向报表开发思维的设计方式,BI项目大概率是很难继续下去的,因为架构不具备高度的扩展性,底层模型不规范,复用度低,基本上是以用户提出的报表为引导进行开发的。就跟装修房子一样,用户想要什么效果就设计装修成什么效果,但是忽略了底层的架构。当用户的需求在二期、三期不断增加的时候、经常性调整的时候,这种架构就很难支撑起来,一动底层架构就是破坏性的。

数据架构 - 派可数据商业智能BI可视化分析平台

还有一点也是我们商业智能BI开发人员需要注意的:就算很多商业智能BI开发人员在设计数据仓库的时候是按照Kimball维度建模架构去搭建的,但是仍然很容易受到业务人员给到的报表的影响,做着做着数据仓库的底层模型就又变成了跟业务报表字段对应的报表开发模式,这种做法也是错的。

记住一点:在Kimball维度建模中,对事实表的设计是完全依赖于业务物理活动的度量事件,不会受到可能产生的最终报表的影响,这就是面向模型开发思维的核心思想之一。所以在标准的DW层,事实表的设计一定是描述最基础性的事实动作,构建基础的事实表。在DM数据集市层,可以为了一些查询性能、便利性等原因建立一些表来适配一些报表要求。

kimball - 派可数据商业智能BI可视化分析平台

在标准DW层,事实表按业务还原分拆,根据需要在DM层进行事实表的组合合并。这样在架构上既能够保证底层基础事实表的稳健性、灵活性和可扩展性,又保证了DM层往前端BI报表供数的高性能和便捷性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/68804.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

我是如何开始能写python爬虫的?给零基础入门Python小白一条清晰的学习路线

重要的事说三遍:不要从看书开始,不要从看书开始,不要从看书开始!~~ 爬虫这么有意思的东西,看书多没有乐趣,从网上找个视频,直接跟着写,然后再根据视频,按照自己的想法写…

Polaris 和 dubbogo 全面对接,让微服务更简单

作者 | 邓正威,廖春涛(春少),赵新(花名 于雨)背景概述什么是 PolarisPolaris 是腾讯开源的服务治理平台,致力于解决分布式和微服务架构中的服务管理、流量管理、配置管理、故障容错和可观测性问…

公路交叉数(POJ3067)-树状数组解决逆序对

题目大意: 东海岸有N个城市,西海岸有M个城市(N≤1000,M≤1000),将建K条公路。每个海岸的城市从北到南编号为1,2,…每条高速公路都是直线,连接东海岸和西海岸的城市。建设资金由高速公…

各开发语言DNS缓存配置建议

作者:翟贺龙 一、背景 在计算机领域,涉及性能优化动作时首先应被考虑的原则之一便是使用缓存,合理的数据缓存机制能够带来以下收益: 1.缩短数据获取路径,热点数据就近缓存以便后续快速读取,从而明显提升…

小侃设计模式(十六)-备忘录模式

1.概述 备忘录模式(Memento Pattern)是一种行为型模式,它的主要思想是在不破坏封装性的前提下,捕获一个对象的内部状态,并将该状态保存在该对象之外,这样以后就可将该对象恢复到原先保存的状态。它是相对简…

【项目问题】程序里,oracle相关的内容,为什么有些能显示表有些不能显示表,但是用oracle工具就可以看到所有表

运行过程中的问题客户提出问题找一下原因问题找到了那如何解决这个看不到的问题呢客户提出问题 1、oracle数据源链接成功了,但是在产品使用过程中发现,没有表,空空如也 找一下原因 先看一下用户:zd202207 2、再去看看数据库工…

效率倍增!5款超级好用的Python工具库!

Python 是一门简单易学却功能非常强大的语言。好玩实用的工具层出不穷,也给我们的工作生活带来极大的方便。在之前文章中我已多次分享过一些实用的工具,有兴趣的可以翻阅一下,今天我再分享 5 款非常实用的工具: LuxTranslatorsTextShotFancy…

C规范编辑笔记(六)

往期文章: C规范编辑笔记(一) C规范编辑笔记(二) C规范编辑笔记(三) C规范编辑笔记(四) C规范编辑笔记(五) 正文: 今天我们继续来分享一下我们C规范编辑笔记第六篇~ 话不多说,我们直接来看: 1、 结构体变量不得在未指定初始化…

华为云大数据BI 为中小型企业智慧运营保驾护航

华为云大数据BI 为中小型企业智慧运营保驾护航 企业数字化转型中,必然面临信息数据潜在价值变现的问题,在解决这一问题的途中,企业可能面临多种困难,尤其是信息数据分析,这直接关系到企业能否实现潜在价值变现。对于小…

[附源码]Python计算机毕业设计Django疫情管理系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

chrome新特性-recorder

chrome新特性-recorder一、简介二、录制三、录制回放1.Chrome DevTool工具2.Puppeteer脚本(1) 介绍(2) 使用一、简介 recorder 与Selenium IDE浏览器插件类似,可用于自动化测试及脚本生成(Puppeteer脚本);前者为Web自动化测试框架Selenium的配套浏览器插件支持Java、…

一文学会所有Web应用安全知识点

据调查大部分网络安全事故是软件缺陷导致的网络攻击。由于应用程序代码漏洞和安全漏洞,我们的企业正在遭受越来越多的攻击。调查显示攻击者可以通过盗用凭证,攻击10个测试过的web应用程序中的9个,进行恶意软件注入以及网络钓鱼攻击。因此&…

QuTrunk与MindSpore量子神经网络初探

QuTrunk是启科量子开发和已经开源的一款量子编程框架软件产品,关于QuTrunk的详细介绍,用户可以访问启科的开发者社区站点详细了解,也可以进入github上此项目下进行查询。 QuTrunk开发框架是可以与第三方AI框架深度结合进行量子计算程序开发的…

安装 Unity 个人免费版

安装 Unity 个人免费版 正版是需要收费的,所以我们个人开发使用个人免费版就可以 一、下载Unity 1.打开unity官网 点击”下载Unity" 官网 https://unity.cn/releases 2.下拉,会有各种版本,进入Unity的下载页面,找到对应的版…

Nacos2.1.2+Seata1.5.2+Mysql8+SpringCloud+Feign实现分布式事务笔记

搭建环境可以使用docker或是手动自己构建 1.启动nacos服务,nacos/nacos登录http://nacos-ip:8848 2.修改Seata的配置文件,注册到nacos上: seata\conf\application.yml server:port: 7091spring:application:name: seata-serverlogging:con…

VS调试安卓Unity应用

最近遇到了一个bug,需要在安卓手机上实机调试才行,所以这里记录一下怎么用VS调试安卓应用。我使用的VS是2017,但是更新的2019等版本应该也是差不多的(毕竟实际上依赖的是Visual Studio Tools for Unity插件)。Unity版本…

管理RMAN备份_管理恢复目录(Recovery Catalog)

本章阐述如何管理RMAN恢复目录。Catalog是一个数据库模式,它包含一个或多个目标数据库的RMAN仓库数据。 1.RMAN恢复目录概述 本节阐述与管理恢复目录相关的基本概念。 1.1.RMAN恢复目录的目的 恢复目录是一个数据库模式,RMAN使…

OutOfMemory内存溢出问题排查

OutOfMemory内存溢出问题排查 错误 2022-12-06 00:43:53.296[,] [registrationTask1] ERROR o.s.s.support.TaskUtils$LoggingErrorHandler.handleError96 - Unexpected error occurred in scheduled task. java.lang.OutOfMemoryError: Java heap space 2022-12-06 00:42:49.…

密码技术学习一:密码

0、前言 本文是作者阅读《图解密码技术》时,学习总结的一些知识,在此推荐想要深入学习密码知识的同志,将此书作为入门书来看还是比较适合的。 1、密码技术简介 1.1加密与解密 在两者通信过程中,不想通信的内容被第三方知道&am…

在R语言中进行缺失值填充:估算缺失值

介绍 缺失值被认为是预测建模的首要障碍。因此,掌握克服这些问题的方法很重要。最近我们被客户要求撰写关于缺失值处理的研究报告,包括一些图形和统计输出。 估算缺失值的方法的选择在很大程度上影响了模型的预测能力。在大多数统计分析方法中&#xf…