当前位置: 首页 > news >正文

如何高效的利用低代码技术进行数据建模

导读:在数据需求沟通中,业务与开发之间往往存在“鸡同鸭讲”,出现无法语言对齐的情况。业务抱怨开发语言太技术,听不懂;开发也苦于业务表达太含糊,无法转化为需求。尤其在数据治理等专业性领域,沟通问题成为了业务与开发之间一道无形的壁垒,急需通过某种有效的手段进行打破。而数据建模,恰好成为了数据需求梳理及系统设计的有效手段,能够帮助业务及开发双方更好地进行需求理解和沟通。

通过进行数据建模,我们能解决数据之间血缘脉络,并且清楚影响数据质量的关键属性,最关键的是,解决了业务与系统开发人员的统一语言。


01 什么是数据建模?

数据建模,简而言之就是明确业务场景以及流程后,抽象实体和之间的关系,确定实体涉及的主从表以及对应的属性字段,然后进行存储计算。一般分为概念模型、逻辑模型、物理模型。

当然,目前数据建模的方式不少,有维度建模,范式建模,Data Vault模型、Anchor模型。这里我们不展开一一介绍,重点分享一下基于低代码技术进行维度建模的方法。(常见的建模工具有PowerDesigner、ER/Studio,当然直接用Visio、Excel也是可以的)

图片

02 低代码建模

为什么要通过低代码技术进行数据建模呢?主要还是针对性解决“统一语言”、“高效”的目标。低代码技术进行数据建模的优势主要体现在以下几个方面:

首先,低代码技术能够显著缩短开发周期。传统的代码开发方式,需要严格遵循算法和数据结构的组合,这种方式如同手动拧螺丝,既费时又费力,且对非专业开发人员而言上手难度极大。相比之下,数据建模对时效性要求极高,无论是增加实体对象还是调整字段属性,其影响都是深远的。而低代码技术则让这一过程变得如同“搭积木”一般简单快捷,极大地提升了开发效率。

其次,低代码开发能够迅速响应变革场景。随着企业应用的预期爆炸性增长,潜在场景的数量也数以千计,这些场景都蕴含着为企业创造价值的可能。低代码开发方式使企业能够更好地应对这些挑战,一方面能够减少代码开发工作量,同时还能弥补现有技术能力的不足,而无需将每个人都培养成专业开发人员或在内部进行大量的软件开发投入。

最后,低代码开发还能够推动业务部门更深入的参与数据管理、数据治理相关工作。例如数据建模的过程中,我们首先需要清楚业务逻辑,形成概念模型,并基于物理世界进行数字孪生进行逻辑模型。而传统上这些任务是由IT部门负责的。然而,现在越来越多的企业开始认识到,数据的使用、标准定义需要业务部门深入的参与甚至主导。因此,一个简单易懂、能够让业务部门轻松上手并参与管理的系统显得尤为重要。低代码技术正是实现这一目标的理想选择。

图片

利用低代码技术进行数据建模实际上主要三个步骤:划分主题域、创建模型、形成表单。我们可以理解,这三个步骤实际就是概念模型、逻辑模型、物理模型的三个组成部分。

第一步:用户可以根据业务需要对数据按域划分。各域之间既相互独立又可交叉引用;按控制层级将数据域分为组织和全局的属性,例如一家公司里面涉及到的人力域数据、供应商域数据以及物料域数据等等,这些域相互引用,相互依赖影响,最终形成整体的数据流。

通过将数据按域进行划分,从内部组织到外部环境、从上游供应商到下游客户、从组织架构到日常业务等统一纳入数据各域管理范畴。有利于理清企业业务脉络,重构企业核心价值链。

从源头划清不同数据之间的界限,层次分明地界定多域之间的关系,同时还可以将不同域之间的数据交叉引用,实现数据域之间横向纵向立体管理。

第二步:创建模型。建立主表、子表和独立三种类型的模型,支持主表模型和子表模型的嵌套以及主表模型和独立模型的引用,构建统一的数据属性管理视图。

  • 模型1:主表模型。定义数据的主表模型,数据的核心属性集,与子表模型和独立模型通过可视化配置表单实现关联,构建数据统一视图。

  • 模型2:子表模型。定义数据的子表模型,实现数据的数据明细行管理,支持可视化配置实现数据的星型模型,主表模型的创建,是根据数据管理的需要,如果模型属性是多行数据,可以通过创建子表模型进行管理,因此子表模型不能独立定义对应的表单,必须要依赖主表模型进行相关的数据管理。

  • 模型3:独立模型。定文辅助数据的模型,作为数据主表模型,子表模型的数据来源(类似于参考数据,行政区划等),独立模型的创建,是根据业务管理的需要,可以进行独立的模型定义,不受主表模型的约束,可以独立定义数据管理的表单和流程。

第三步:构建模型相应表单。表单配置中可以提供业务组件库和多样的属性库,并辅之以视图、流程、权限等,用户可以根据业务需要灵活地构建。

可视表单: 表单可视化无代码定制,多类型组件提供复杂业务场景解决方案,街接数据模型及应用功能及菜单。

表单类型1:数据表单。可视化表单,其主要功能是将模型中的属性字段与前端应用界面进行映射。数据表单是以主表模型作为基础,可以关联多个子表模型和多个独立模型,通过表单组件及其属性与子表模型和独立模型建立联系。

表单类型2:独立表单。独立表单是以独立模型作为基础,可以关联多个其他独立模型,构建符合业务需要的复杂前端管理界面。例如产品类型、行政区划等参考数据码表。独立表单单相较于数据表单,功能上相对简化,目的在于高效、便捷。

图片

写在后面

数据建模其实往往很容易被忽略,特别是提倡敏捷开发的背景下。虽然在开始阶段,数据建模费时费力,但从长远来看,对我们的基础架构是易于升级和维护的。其次是,业务人员与开发人员能够通过数据建模的过程中,在概念、物理和逻辑层面设计数据库达成一致意见,有助于识别缺失项和冗余数据。

我们会发现,利用低代码技术去构建数据模型,方便业务人员与IT人员进行沟通交互,且操作更加便捷,高效。后续再进行一系列录入功能的开发,菜单的定制是非常快捷的。当然低代码技术不能解决业务转化成数据的过程,针对业务场景和流程,我们需要进一步解析挖掘对应的数据需求。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Temu全托管和半托管的区别:一文说清temu全托和半托的差异
  • 项目启动报错:liquibase.lockservice:? - Waiting for changelog lock....
  • 智能监控,无忧仓储:EasyCVR视频汇聚+AI智能分享技术为药品仓库安全保驾护航
  • PyQt5创建多个子窗口并监控其状态
  • 代码随想录算法day19 | 回溯算法part01 | 77. 组合,216.组合总和III,17.电话号码的字母组合
  • 【pdf文件生成】如何将盖章的文件生成PDF文件
  • 营运管理系统应用架构设计
  • 霸王餐返利APP的技术架构与业务模型分析
  • NSIS - 创建桌面应用程序(Client-Side, CS 或者称为本地应用程序)的安装包
  • C#实现多选下拉框
  • 关于一些搜索的longchain实践
  • 20240820飞凌的OK3588-C的核心板在Linux R4下使用poweroff关机
  • usb无线网卡转typec口
  • [数据集][目标检测]夜间老鼠检测数据集VOC+YOLO格式316张1类别+视频文件1个
  • 省市区三级联动数据+PHP接口
  • 2018一半小结一波
  • Android开源项目规范总结
  • Angular数据绑定机制
  • CentOS学习笔记 - 12. Nginx搭建Centos7.5远程repo
  • go append函数以及写入
  • Java 最常见的 200+ 面试题:面试必备
  • Node项目之评分系统(二)- 数据库设计
  • rc-form之最单纯情况
  • React组件设计模式(一)
  • Vim 折腾记
  • Vue.js-Day01
  • XML已死 ?
  • 将 Measurements 和 Units 应用到物理学
  • 融云开发漫谈:你是否了解Go语言并发编程的第一要义?
  • 世界上最简单的无等待算法(getAndIncrement)
  • 想写好前端,先练好内功
  • Play Store发现SimBad恶意软件,1.5亿Android用户成受害者 ...
  • Semaphore
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • 选择阿里云数据库HBase版十大理由
  • ​​​​​​​​​​​​​​汽车网络信息安全分析方法论
  • #数据结构 笔记一
  • #微信小程序(布局、渲染层基础知识)
  • $NOIp2018$劝退记
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (leetcode学习)236. 二叉树的最近公共祖先
  • (STM32笔记)九、RCC时钟树与时钟 第一部分
  • (二)Kafka离线安装 - Zookeeper下载及安装
  • (附源码)计算机毕业设计SSM疫情下的学生出入管理系统
  • (四) 虚拟摄像头vivi体验
  • (四)linux文件内容查看
  • (转)IOS中获取各种文件的目录路径的方法
  • (转)我也是一只IT小小鸟
  • (转载)从 Java 代码到 Java 堆
  • ***检测工具之RKHunter AIDE
  • .NET Core中的去虚
  • .net framework 4.8 开发windows系统服务
  • .Net Web窗口页属性
  • .NET 回调、接口回调、 委托
  • .NET 跨平台图形库 SkiaSharp 基础应用