哪些报表该放入报表系统,哪些又该放到业务系统里?

简介: 哪些报表该放入报表系统,哪些又该放到业务系统里?

OLTP & OLAP

玩数据的都知道,咱把数据分为OLTP(联机事务处理)和OLAP(联机分析处理),他们的方向是截然不同个。OLTP主要负责数据的“增删改查”,简单理解就是对数据本身进行记录额沉淀,是信息部门干的活儿。OLAP主要负责对数据的“清洗、转换、分析、挖掘”,简单理解就是对OLTP沉淀的数据进行价值提取,是数据部门干的活儿。

 

因此事务处理技术发展趋势就是满足事物四大特性:ACID,即原子性、一致性、持久性、隔离性。而分析处理技术发展趋势就是满足数据价值挖掘的需求。但是到这里,依然没有解决本文的核心问题:报表应该放在那里?

OLTP侧的报表

OLTP侧也是有报表的。在数仓建设之前就有报表了,到现在依然如此。几乎所有系统都有基本的统计功能模块,有些业务系统的统计模块里的报表还非常丰富。OLTP侧的报表有得天独厚的优势:与业务和业务系统无缝对接。它们可以轻而易举地做到完全实时——本来么,OLTP侧的报表可以直接从业务表里取数,当然是实时的了。由于OLTP侧完全服务于当前业务流程,因此OLTP侧的报表研制目标的非常明确且稳定。君不见很多业务系统里的报表好几年都不变。但是TP侧的报表也有很多根深蒂固毛病,这些毛病源自于开发报表的人大多都是程序员,他们对数据的理解依然停留在“增删改查”的阶段。举两个例子:1、时间戳;2、状态变化;3、不轻易对数据做操作(避免影响业务系统性能)。很多TP侧的报表都只能根据系统中数据现在的状态进行查询,对历史状态变化没有进行记录和留痕。这就会导致同一个查询条件在昨天和今天查的结果是完全不一样的。原因是业务表中某个筛选条件的状态数据发生变化了。还有就是,TP侧的报表虽然贴近业务,但是也受限于本业务。跨系统进行数据集成就非常困难,往往会在N个系统之间打“老鼠洞”。不仅管理难度大,安全性也受到挑战。

OLA

P侧的报表是的,你猜到了。数据仓库就是为了解决上述问题而诞生的。所以你现在再去看看数据仓库的定义,就能理解为啥这么写了: 数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合。

OLAP侧的报表是基于数仓、数据集市而建设的。失去了实时性(不过现在也有实时数仓,但是技术复杂度和成本都很高),但是获得了跨系统数据集成、历史状态、稳定等特性。在OLAP侧,由于数据已经搬过来了,就可以随便玩了,可以搞的花样也就很多了。与OLTP侧的范式建模不一样,在AP侧往往采用维度建模,这样的好处就是可以实现报表的自定义化。“拖拉拽”就是在这个技术背景下产生的。OLAP侧的报表好处就不说了,它能让人从Excel中来,往Excel中去(别笑,这个评价很高,懂的人自然就懂——老彭)。

到底放在那里?

OLAP的A就是Analysis-分析,所以OLAP侧的报表就是为了分析而生的。对于查账单这类和业务目的强、实时性高、和业务流程结合紧密的需求来说,OLAP报表明显是不符合要求的。 但是OLTP侧由于数据建模的方式,注定实现不了维度和度量的自由搭配,即便做了“拖拉拽”,也是徒有其型的银枪蜡头,样子货。很难跨N个系统进行数据汇聚后的分析,更是难以支撑海量数据的统计、分析、挖掘需求。但是终究得切分一下,对吧?老彭简单整理了几个问题,问完之后自然就知道应该放在那边了:1、数据来源是否来自单一业务系统?是:OLTP+1;否:OLAP+1。2、数据更新频率是否要求实时?是:OLTP+1;否:OLAP+1。3、报表更偏向业务流程还是业务分析?流程:OLTP+1;分析:OLAP+1。4、报表是否涉及历史状态数据?不涉及:OLTP+1;涉及:OLAP+1。5、数据部门是否独立部门?是:OLTP+1,否:OLAP+10(没写错,数据部门在IT部门下,你还要啥自行车?老老实实听老大安排就完了,扯那么多干啥?)以上问题仅供参考,各位彭友可以多列几个,遇到新报表,按照这个问题列表唠几句就都心里有数了。

相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
分布式计算 API Linux
通义千问API:找出两篇文章的不同
本章我们将介绍如何利用大模型开发一个文档比对小工具,我们将用这个工具来给互联网上两篇内容相近但版本不同的文档找找茬,并且我们提供了一种批处理文档比对的方案
|
8月前
|
人工智能 自然语言处理 数据可视化
2025 ChatBI 产品选型推荐:智能问数+归因分析+报告生成
当企业站在 ChatBI 选型的十字路口,技术架构的先进性、场景适配的完整性、落地实践的可验证性应成为核心考量标准。
|
人工智能 自然语言处理 架构师
2025年,租赁企业如何借瓴羊Data x AI实现弯道超车?
在新一代技术浪潮下,数据智能正深刻重塑租赁行业。阿里云瓴羊联合得宸科技推出大模型解决方案,助力租赁企业实现智能化转型。通过融合通义千问与专业数据库,方案覆盖经营分析、风险识别等9大场景,推动业务全流程重构,构建以数据驱动和智能引领的增长引擎,赋能行业高质量发展。
645 0
|
关系型数据库 MySQL
MySQL查看连接数和进程信息
这篇文章介绍了如何在MySQL中查看连接数和进程信息,包括当前打开的连接数量、历史成功建立连接的次数、连接错误次数、连接超时设置,以及如何查看和终止正在执行的连接进程。
2040 10
|
11月前
|
JSON JavaScript API
Python模拟HTTP请求实现APP自动签到
Python模拟HTTP请求实现APP自动签到
|
12月前
|
机器学习/深度学习 人工智能 监控
数据分析智能体:让AI成为你的数据科学家
作为一名在数据科学领域深耕多年的技术博主,我深刻感受到了AI技术在数据分析领域的革命性变化。从最初的手工编写SQL查询、绘制图表,到如今AI智能体能够自主完成复杂的数据探索、建模和洞察提取,这种转变不仅仅是技术进步,更是数据科学工作范式的根本性变革。 数据分析智能体(Data Analysis Agent)代表了数据科学发展的新阶段,它将传统的数据分析师、统计学家和机器学习工程师的核心能力集成到一个智能系统中。这个系统不仅能够理解业务需求,自动执行数据预处理,还能够选择合适的分析方法、构建预测模型,并生成易于理解的洞察报告。
2123 1
|
编解码 vr&ar 图形学
Unity下如何实现低延迟的全景RTMP|RTSP流渲染
随着虚拟现实技术的发展,全景视频逐渐成为新的媒体形式。本文详细介绍了如何在Unity中实现低延迟的全景RTMP或RTSP流渲染,包括环境准备、引入依赖、初始化客户端、解码与渲染、优化低延迟等步骤,并提供了具体的代码示例。适用于远程教育、虚拟旅游等实时交互场景。
506 2
|
XML 搜索推荐 API
通义千问API:让大模型使用各种工具
本章我们将通过一个简单的例子,揭示基于LangChain的Agent开发的秘密,从而了解如何扩展大模型的能力。
通义千问API:让大模型使用各种工具
|
安全 物联网 物联网安全
物联网安全风险分析
### 物联网安全概览 #### 背景 物联网设备因其默认安全设置薄弱,成为黑客攻击目标。随着OT网络中物联网角色增多,这些设备临近关键系统,攻击者利用其发起攻击。 #### 物联网定义 物联网(IoT)是通过信息传感设备连接物品与互联网,实现智能化识别、定位、跟踪的网络。涵盖智能家居、可穿戴设备到复杂工业系统。 #### 攻击者偏好 物联网设备易受攻击,2022年针对物联网的网络攻击大幅增长,如DDoS攻击和恶意软件事件。物联网端点的安全疏忽使其成为恶意软件传播途径。 #### 制造业面临风险 制造业因物联网设备被攻击,导致勒索软件攻击增加,因生产中断造成的损失更大。
物联网安全风险分析