为什么说“多源数据整合”是低代码的必备功能?zt

chunsunbajie chunsunbajie     2022-12-14     470

关键词:

在中国软件网业协会等机构联合发布的《2020 中国低代码开发平台十大发展趋势》中显示,低代码开发平台的集成能力将更受重视。作为系统集成的重要组成部分和基础能力,多源数据整合被更多开发者和企业IT决策人员视为低代码开发平台产品的必备功能。为什么业界如此看好这个功能?我们得从“数据孤岛”讲起。

“数据孤岛”威胁企业信息化

我们注意到,大多数企业为了快速提升竞争力,在信息化的过程中分批次引入多个来自不同厂商的应用,用来解决当前需求最急迫的应用场景。这种方式虽然“投入少、见效快”,但是因为缺乏整体规划和必要的投入,这些应用往往无法深入集成,最终形成一个个 “孤岛”,即在同一企业内部的不同应用之间相互独立,安全认证和数据均无法互通。“孤岛现象”,特别是位于不同云服务商的“云端孤岛”,给企业的信息系统管理带来了不小的麻烦,甚至因为手动传递和处理数据的存在,还增大了数据完整性风险。

 
技术图片
复杂的企业内应用

多源数据整合是数据孤岛的克星

诚然,考虑到开发成本和厂商对争夺“企业应用入口”的热衷,大型行业软件和各类互联网工具在短期内无法改变“各自为政”的现状。相比之下,更多企业将希望寄托于定做的个性化应用能够与现有系统集成,甚至承担起“云端孤岛”间传递数据的桥梁。

 
技术图片
低代码开发

考虑到技术门槛和开发效率,越来越多的企业采用低代码来开发企业个性化应用。低代码是一种先进的软件开发方式,用这种方式,开发者无需编码即可完成常用功能,少量代码扩展更多功能。相比于零代码,低代码的扩展性让系统集成变得更易操作。趋势报告中指出,低代码平台必须具备与其他系统尤其是核心业务系统的集成能力,而系统集成的核心,是多源数据整合。

在大多数企业中,业务数据分散在不同的数据库,比如订单数据在ERP、人力资源数据位于HRM、物流配送基于TMS等。如果开发者需要开发一个配送成本核算模块,就需要从ERP、HRM和TMS三个系统的数据库中分别抓取订单金额、人力成本和配送时间与里程等数据,整合之后提供给最终用户使用,满足用户的业务需求。

作为国内低代码技术的引领者,活字格低代码开发平台将如何帮助开发者完成数据整合呢?

 
技术图片
多业务系统数据整合,图片来自活字格官网

活字格的多源数据整合解决方案

根据被整合系统采用的技术方案、业务数据本身的特点等,数据整合的方式也有所不同,大致可以分为以下四类。而活字格低代码开发平台都提供了创新性的功能组件,显著提升使用者的开发效率,加速系统集成。

1,可视化调用第三方Web API

大部分主流的业务系统开发商已经考虑了系统集成的需求,在自己产品线中提供了Web API,开放给其他系统使用。如用友为其代表性的U8+ ERP提供了开放平台,开发者可以通过调用其Web API完成凭证创建等业务操作,实现系统集成。

 
技术图片
用友U8+开放平台,图片来自用友网络

如果您需要集成的是这种提供了Web API的系统,可以直接使用活字格的“POST数据”插件,无需编码便可可视化地将用户在页面上输入或者选择的数据,组织成符合该Web API要求的参数,向业务系统的Web API发送POST或GET请求。然后使用JavaScript编程接口,参照Web API的文档处理返回的结果,显示在页面上或者触发下一步的业务处理流程。

 
技术图片
在活字格中,可视化准备调用Web API的参数

如果Web API的厂商需要您使用特殊的认证策略、异步调用方式或跨域认证要求,您也可以基于活字格的服务器端编程接口,在活字格中开发一个Web服务作为代理,用于处理安全认证并中转数据。在开发页面时,您就可以使用POST数据命令向您的代理Web服务,完成系统集成了。

值得一提的是,活字格用友U8+客开工具在实现与用友OpenAPI对接时,即采用了这种模式封装了“交易ID”等异步处理环节。活字格将代理用Web服务包含在集成套件中,让开发者无需再编写代理服务,一次调用即可完成U8+的档案创建工作。

2,同步第三方系统的部分数据

一般的说,提供Web API的厂商会认为使用者有较强的编码开发能力,相比于安全性和性能,在文档和易用性方面的考虑会稍微弱一些。体现在使用活字格集成Web API的过程中,开发者仍需编写少量代码完成对接。这对使用活字格做开发的平民开发者们来说是不小的挑战。此外,部分业务系统的厂商并没有开放Web API供集成者调用,这使得数据层的集成作为另一个“现实”的选项,不容忽视。

数据层的集成根据应用场景的不同,一般有两种选项:将部分需要集成的数据定时抓取到当前系统;或者直接访问业务系统的数据库。前者通常适用于只读数据,特别是对数据实时性要求不高或业务系统负载较高的场合,如从在线商城的系统中抽取订单数据到WMS系统中,完成发货等后台流程;或者从HRM系统中读取员工信息,用于MES中进行排班和工时核算。

为了应对这些场景,活字格提供了“外联表副本”功能。开发者可以为第三方系统数据库中需要抓取到当前系统的数据表建立外联表副本,并设置定时同步的时间。活字格的服务器会自动定期从第三方系统的数据库抓取数据。为了便于开发者整合外联表副本和其他数据表的信息,活字格创造性地提供了跨源数据视图功能。在使用SQL语句编写查询视图时,开发者能将这些不同来源的数据连接在一起,无视数据库本身的技术差异。经验表明,这种直接JOIN多源数据表的能力,可大幅减少将数据传递到页面或服务端逻辑中进行整合的场合,从而大幅提升开发效率和系统运行性能。

 
技术图片
外联表副本与跨源数据视图示意图

3,直接使用第三方系统的数据库

如需向第三方系统写入数据,或者对第三方系统数据的实时性要求较高,将数据同步到当前系统很难满足客户的需求。所以,直连第三方系统数据库就成了数据层集成的“终极方案”。

活字格低代码开发平台内置支持直连Microsoft SQL Server、MySQL和Oracle等主流数据库,还能借助ODBC技术,兼容达梦DM8等其他数据库。开发者能像使用内置数据库一样,在设计器上可视化管理数据库的结构与表中的数据。开发页面或服务端处理逻辑时,第三方系统数据库的表现也和内置库一样,支持绑定、ODATA等查询功能。

 
技术图片
活字格支持的部分数据库

此外,活字格还提供了调用存储过程的命令,可以直接传参执行数据库上的存储过程,最大限度重用第三方系统数据库上的功能,进一步降低开发成本。

4.定时导入第三方系统的数据文件

我们了解到,很多企业在推动信息化的过程中,也引入过一些非常封闭的软件。这些软件可能是一些非常古老的软件产品;或者是一些打着“极低门槛”的旗号,从没有考虑过系统集成需求的小工具或互联网服务。它们没有提供Web API甚至没有能够直接访问的数据库。与这些系统做集成时,除了软件之外,还免不了一定的人工操作。

通常的做法是手工操作这些软件的数据导出功能,将数据导出为Excel或CSV文件,然后再导入需要使用这些数据的系统。很遗憾,活字格无法帮您精简到从第三方系统导出数据的工作。但是,活字格提供了定时任务功能,可以帮助开发者实现定时将指定的文件导入使用活字格开发的系统,减少了数据导入的人工操作。

活字格内建了从Excel或CSV文件导入的功能,开发者只需要设置好列名等参数,就可以开发出将文件中的数据导入数据库的功能,配合上可视化设置的定时任务机制,无需编码即可实现自动导入数据文件的需求。

 
技术图片
使用活字格开发定时导入csv文件的功能

总结

随着数字化转型的深入,越来越多的企业开始意识到数据整合的必要性。为了避免增加更多的“数据孤岛”,我们建议正在做技术选型或者正在使用低代码开发平台的开发者,加强对系统集成的重视程度,特别是数据层的集成,尽可能将企业内的各个系统打通,让它们可以协同增效。

作为一款企业级的低代码开发平台,活字格在系统集成方面具备较强优势,提供了多种数据整合方案,涵盖调用Web API、共享数据库和定时导入数据文件。开发者只需选择合适的方案,就可以应对各种系统集成场景。

如果您对低代码开发感兴趣,希望打破“数据孤岛”的困局,正在寻找一款能迅速上手,高效开发企业应用,助推企业数字化的工具,不论您是否具备编程经验,活字格低代码开发平台都是不容错过的选择。欢迎在百度搜索活字格访问 官网,了解更多信息,免费下载试用吧。



作者:葡萄城开发工具
链接:https://www.jianshu.com/p/33ffdd3cca0a
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

面试必备:synchronized的底层原理?(代码片段)

...子性就是能够保证同一时刻有且只有一个线程在操作共享数据,其他线程必须等该线程处理完数据后才能进行;可见性就是当一个线程在修改共享数据时,其他线程能够看到,保证可见性,volatile关键字也有这个功能;有序性就... 查看详情

什么是低代码开发?

随着企业数字化和上云的趋势愈演愈烈,越来越多的个性化SaaS应用,需要更快、更高效的开发。低代码开发是一种通过可视化进行应用程序开发的方法,使具有不同经验水平的开发人员可以通过图形化的用户界面,使用拖拽组... 查看详情

.netorm仓储层必备的功能介绍之freesqlrepository实现篇

...Xamarin、MAUI、Blazor、以及还有说不出来的运行平台,因为代码绿色无依赖,支持新平台非常简单。目前单元测试数量:6336+,Nuget下载数量:900K+。支持MySql/SqlServer/PostgreSQL/Oracle/Sql 查看详情

什么是低代码(low-code)?

简介: 什么是低代码?我们为什么需要低代码?低代码会让程序员失业吗?本文总结了低代码领域的基本概念、核心价值与行业现状,带你全面了解低代码。阿里云云原生应用研发平台EMAS彭群(楚衡࿰... 查看详情

有人说低代码是:几个牛的人让一群人失业,真是这样?

🥔一、什么是低代码?有人说低代码是:几个牛逼的程序员让一群程序员失业,真的是这样吗?西红柿将带着大家盘点低代码行业现状,并解答以下几个核心问题。什么是低代码?低代码能做什么࿱... 查看详情

图文并茂说mysql索引——入门进阶必备(代码片段)

本篇是我阅读《MySQL是怎样运行的》一书的笔记,我简化了一些概念,删除了一些不容易新手入门理解的内容,增加了第八节MRR说明,在这里分享给大家。文章目录1.索引介绍2.当你插入记录,页中有什么变化&#... 查看详情

什么是低代码开发?

...序。在保证一定扩展性的同时,可以有效缩短开发工时。为什么选择低代码开发平台?低代码开发平台最初被关注的是用于移动应用的开发。与基础系统开发相比,手机app开发对速度的要求更高,而且还必须支持多设备。在传统... 查看详情

前端高效开发必备的js库梳理(代码片段)

...习任何知识之前必须要有一个明确的学习目标,知道自己为什么要学它,而不是看网上说的一股脑的给你灌输各种知识,让你学习各种库,从而不断的制造大家的焦虑感.前端由于入行门槛低,更新换代很快,每年都会有大量新的框架和... 查看详情

码农高效率工作必备工具之strokesplus

...多懒~~????S+支持Lua脚本,想要什么功能可以自己编写脚本代码来实现。正如它的软件作者这样描述它:Theextenttowhichyo 查看详情

为什么说typescript的火爆是必然?(代码片段)

...似TypeScript这种静态类型语言成为主流是必然会发生的。为什么这么说呢?让我们先思考一个问题:类型是什么?类型具体点来说就是指 查看详情

个人总结asp.net必备面试题(代码片段)

...加载哪个模型,并把模型附加到对应的视图。附加了模型数据的最终视图做为响应发送给终端用户。2.那你说一下你对MVC的理解?MVC是一种设计模式即主要的思想,是一种功能结构模块化的一种开发思想,目的是更好的管理自己... 查看详情

xshell高级后门完整分析报告(zt)

...行了详细的分析,确认这是一个具备恶意代码下载执行和数据回传等能力的高级木马。后门代码存在于nssock2.dll中,采用了多层加密shellcode、花指令、线程注入等各种方式逃避杀软查杀和对抗人工分析。总体流程如下2.详细过程... 查看详情

java泛型通配符意义,架构师必备技能(代码片段)

...疑问:ZooKeeper是用来做什么的?之前没有ZK,为什么会诞生ZK?OK,解答一下上面的疑问:(下面是凭直觉说的)ZooKeeper是用于简化分布式应用开发的,对开发者屏蔽一些分布式应用开发过程中的... 查看详情

低代码/零代码平台表单引擎技术方案

可视化表单建模是低代码/零代码平台的核心功能,业内对该功能有多种叫法:电子表单、表单可视化、表单驱动、表单引擎等,该组件主要由表单设计器、表单解析引擎、表单存储引擎三个部分构成,而表单解析引擎取决于表... 查看详情

什么是低代码开发平台?国内外7款低代码开发平台对比

...的软件应用和开发程序;阅读本文你将了解到1.什么是低代码开发平台;2.7个好用的低代码开发平台;3.如何选择低代码开发平台。一.什么是低代码开发平台?在这部分,我们将简要介绍低代码开发平台的概念... 查看详情

zt人到中年,记住这三句话你就活明白了

01多相信亲情,少相信爱情人生在世什么最重要,是亲情。亲情分为两种,一个来自于血缘的纽带,另一个来自于婚姻的纽带。两者有一个共同的名字:家人。王小波说,人在年轻的时候,觉得到处是人,别人的事就是你的事,... 查看详情

六石编程学:问题要面对,办法要技巧,做不好的功能要想办法

...主动找上门要求合作,结果功能达不到要求。哪个功能?数据透视表。吾当时就愣了:这功能是电子表格的必备功能,怎么没做?说是做了,没做好,又研究不清楚,删除了。  做不好就不做了?吾就感觉不理解。人家找上门... 查看详情

程序员找工作必备php基础面试题(代码片段)

程序员找工作必备PHP基础面试题?程序员找工作必备PHP基础面试题(二)?程序员找工作必备PHP基础面试题(三)一、在HTTP1.0中,状态吗500的含义的是什么?如果返回“找不到文件”的提示,则可用header(函数),其语句为... 查看详情