?文章來源:http://www.zghlxwxcb.cn/news/detail-515721.html
1.前言
內(nèi)因:隨著之家業(yè)務(wù)快速發(fā)展,公司內(nèi)部的數(shù)字化需求越來越多,信息系統(tǒng)團隊每年都面對大量的需求,但研發(fā)側(cè)資源是一定的,那么如何更快速的交付需求,越來越成為團隊重點思考解決的問題。
外因:互聯(lián)網(wǎng)技術(shù)的不斷推陳出新,尤其以React,Vue為代表的前端技術(shù)框架突飛猛進,大幅降低了可視化拖拽操作的技術(shù)門檻。
行業(yè)內(nèi)低代碼平臺主要涉及表單,流程, 數(shù)據(jù)開發(fā),BI工具,智能機器人等方向。

1.前言
?
2.問界低代碼平臺介紹
問界平臺,第一期鎖定了數(shù)據(jù)方向的主題進行建設(shè)開發(fā)。具體圍繞數(shù)據(jù)分析的以下5個場景:
-
數(shù)據(jù)建模場景:實現(xiàn)零代碼,可視化的拖拉拽方式數(shù)據(jù)建模;
-
數(shù)據(jù)開發(fā)場景:實現(xiàn)數(shù)據(jù)抽取,清洗加工,然后輸出到目標表等功能;
-
數(shù)據(jù)分析場景:通過BI解決多維度數(shù)據(jù)分析需求;
-
指標及維度規(guī)則場景:實現(xiàn)在線的計算公式、數(shù)據(jù)核算規(guī)則的配置及后端自動化核算;
-
數(shù)據(jù)質(zhì)量監(jiān)控場景:實現(xiàn)低代碼方式的數(shù)據(jù)監(jiān)控,及既定規(guī)則的數(shù)據(jù)自動修復(fù)
?
3.問界平臺技術(shù)架構(gòu)介紹
3.1
前端框架
?前端框架選型React, ?React提供了組件化的編程思想,特別適合中大工程采用,另外考慮移動端RN的普及,所以整體采用React來實施。
前端框架一覽表:

3.2
后端框架
后端整體的技術(shù)架構(gòu)基于Spring Cloud微服務(wù)框架,依托于云平臺Asf ; 通過SkyWalking實現(xiàn)后端全鏈路調(diào)用鏈的監(jiān)控。

3.2.后端框架
3.3
調(diào)度引擎?
調(diào)度引擎選型方面,我們選擇了PowerJob開源的工作流調(diào)度引擎, 目前市面上的調(diào)度引擎主要分為兩類,定時調(diào)度,代表性的調(diào)度引擎有quartz,xxlJob等,以及以O(shè)ozie,PowerJob等為代表的工作流調(diào)度引擎,考慮到數(shù)據(jù)開發(fā)場景的大量數(shù)據(jù)依賴任務(wù),問界平臺選擇了PowerJob來負責底層的任務(wù)調(diào)度引擎,PowJob框架本身自帶流程引擎設(shè)計器。

3.4
ORM框架
采取自研的ORM框架(automis.orm),相比Mybatis半自動化ORM框架,省去大量SQL腳本的編寫, 框架底層增加大量常用的數(shù)據(jù)查詢方法,如自動加載為hash,自動格式化為交叉表等數(shù)據(jù)的查詢及匯總,小計合計的計算等??蚣茏詣又С值讓痈黝惾罩镜母櫡治?,及數(shù)據(jù)緩存策略,如基于方法,基于腳本,基于路徑的數(shù)據(jù)緩存等。
問界低代碼平臺后續(xù)將繼續(xù)表單場景的低代碼化,基于當前支持動態(tài)實體多表的自動序列化??梢杂行еС只跀?shù)據(jù)模型設(shè)計的表單數(shù)據(jù)自動映射與序列化;
3.5
運行機制

3.5.運行機制
?
4.問界低代碼場景介紹
4.1
數(shù)據(jù)建模場景
數(shù)據(jù)建模做為數(shù)據(jù)分析的基礎(chǔ),問界提供了在線ER圖的設(shè)計,并且可以在線進行數(shù)據(jù)表,維度及度量名稱等的二次修改及調(diào)整,另外支持計算字段及分組字段等的高階配置;
-
計算字段:支持聚合函數(shù)(sum/count/avg等)及計算公式(如:a+b-c*100)等的配置
-
分組字段:支持時間、字符、數(shù)值類型的快速分組配置(類case when)
通過以上功能,普通的數(shù)據(jù)分析師完全可以通過零代碼的方式,完成線上數(shù)據(jù)模型設(shè)計,并通過后續(xù)的BI分析模塊進行下一步的數(shù)據(jù)分析。
??4.1.1 在線ER圖的設(shè)計

4.1.1.在線ER圖的設(shè)計
?
??4.1.2 計算字段的可視化配置

4.1.2.計算字段的可視化配置
?
??4.1.3 分組字段的可視化配置

4.1.3.分組字段的可視化配置
?
4.2
數(shù)據(jù)開發(fā)場景
?所有的數(shù)據(jù)分析,離不開基礎(chǔ)數(shù)據(jù)的加工,只有加工清洗后的數(shù)據(jù),才具備分析的價值。
問界平臺目前已上線支持12個組件,其中4類腳本開發(fā)組件,用于在線直接數(shù)據(jù)腳本的編寫與開發(fā),采用Monaco Editor 支持一定的SQL語法糖,支持mysql,SqlServer, hiveSQL, StarRockcs等數(shù)據(jù)庫腳本的編寫;另外提供7類數(shù)據(jù)專項開發(fā)組件,后續(xù)還會不斷進行新增擴充組件(如:API組件、腳本組件等)。
開發(fā)模塊運行機制:

4.2.數(shù)據(jù)開發(fā)場景
?
4.2
數(shù)據(jù)開發(fā)場景
?? 4.2.1 數(shù)據(jù)集成
采用阿里的DataX框架, 支持多種數(shù)據(jù)庫類型之間的數(shù)據(jù)抽?。?/p>
1.支持在線的源數(shù)據(jù)與目標數(shù)據(jù)列字段的自動映射,如同行關(guān)聯(lián),同名關(guān)聯(lián)等,以及手工拖拽式的配置;??

4.2.1.數(shù)據(jù)集成-列映射
?
2.對接之家大數(shù)據(jù)的平臺,基于大數(shù)據(jù)平臺能力,實現(xiàn)hive,StarRocks等的能力復(fù)用;
??4.2.2 數(shù)據(jù)清洗
數(shù)據(jù)在線清洗功能, 共提供5類組件
-
輸入組件:負責源數(shù)據(jù)輸入的定義,支持多源數(shù)據(jù)的輸入;
-
關(guān)聯(lián)組件:提供異構(gòu)數(shù)據(jù)的在線關(guān)聯(lián),實現(xiàn)數(shù)據(jù)的列擴展;
-
合并組件:合并多個異構(gòu)源的數(shù)據(jù),實現(xiàn)數(shù)據(jù)的行擴展;
-
聚合組件:實現(xiàn)數(shù)據(jù)匯總配置,支持多種數(shù)據(jù)庫的聚合函數(shù);
-
清洗組件:支持對輸入的數(shù)據(jù)再次過濾,進行數(shù)據(jù)行的處理;通過計算字段,值替換等實現(xiàn)數(shù)據(jù)列的處理;
-
輸出組件:用于將清洗后的數(shù)據(jù),寫入目標的數(shù)據(jù)源;
效果圖:

4.2.2.數(shù)據(jù)清洗
?
??4.2.3 SQL組件
-
MySQL腳本組件
-
MsSQL腳本組件
-
HiveSql腳本組件
-
StarRocks腳本組件
SQL編輯器選型對比:

具體使用效果:

4.2.3.SQL組件
?
??4.2.4 輔助組件
開始組件:用來配置任務(wù)的調(diào)度策略;問界平臺封裝了Cron的公共組件,可以在線快速配置Cron表達式;
?效果圖:

4.2.4.輔助組件-CRON表達式設(shè)置
?
??4.2.5 動態(tài)參數(shù)
同時數(shù)據(jù)開發(fā)模塊還提供了執(zhí)行時動態(tài)參數(shù)替換,用于更靈活動態(tài)的執(zhí)行相關(guān)組件任務(wù),可支持全局及組件自定義參數(shù)設(shè)置。
參數(shù)名格式:${xxxx}

4.2.5.動態(tài)參數(shù)-全局參數(shù)

4.2.5.動態(tài)參數(shù)-自定義參數(shù)
?
4.3
指標規(guī)則場景
?數(shù)據(jù)分析的需求多變,因此數(shù)據(jù)加工離不開規(guī)則的配置,問界平臺提供了維度管理及指標管理實現(xiàn)了規(guī)則的線上化配置。
??4.3.1 維度管理
維度管理功能提供了大量的線上口徑數(shù)據(jù)的定義,后臺基于規(guī)則配置完成維度數(shù)據(jù)的核算,目前該場景已大量在銷管,業(yè)績核算等業(yè)務(wù)場景中應(yīng)用。

4.3.1.維度管理
?
??4.3.2 指標管理??? ?
用于指標公式的配置,提供原子指標,派生指標,衍生指標三種類型的指標庫管理。目前指標模塊已在HR組織健康度完成150+指標的管理。
實現(xiàn)的效果如下:?

4.3.2.指標管理
?
4.4
數(shù)據(jù)分析場景
?數(shù)據(jù)分析場景主要面向了一線的業(yè)務(wù)人員,及各個BU的數(shù)據(jù)分析師。在我們總結(jié)的數(shù)據(jù)分析場景中,一共提供以下三類場景的實現(xiàn)
??4.4.1 儀表板
儀表板主要采用 Echarts框架, ECharts最初由百度團隊開源,并于2018年初捐贈給Apache基金會,成為ASF孵化級項目。未采用Highcharts的原因, 付費非開源不利于后續(xù)的升級。
另外我們也自研了多個場景的分析組件,如果故事線組件,交叉表及明細表組件等。
截止到當前儀表板共提供7類23個場景的分析組件,另外提供基于路徑的鉆取分析,同環(huán)比配置,及基于明細的下鉆配置,每個數(shù)據(jù)卡片支持任意的拖拽布局,支持任何系統(tǒng)的行級權(quán)限配置。

4.4.1.儀表板
?
?4.4.2 電子報表
電子報表我們一期實現(xiàn)了常用的明細表及交叉表的設(shè)計;2023年我們將繼續(xù)升級這塊,滿足所有中國式報表的分析場景,目前已完成技術(shù)框架的原型。

4.4.2 電子報表
?
?4.4.3 多維分析
多維分析場景主要用來實現(xiàn)數(shù)據(jù)的及時探查分析, 實現(xiàn)的效果如下圖??梢钥焖龠M行行列配置,并自動進行聚合,及各類維度的小計,總計等的配置。
底層采用自研的ORM框架,自動實現(xiàn)下面的復(fù)雜分析場景。
多維分析的場景效果圖:

4.4.3.多維分析
?
4.5
數(shù)據(jù)監(jiān)控與預(yù)警
?問界平臺提供了在線的數(shù)據(jù)腳本巡查,并可以進行字段級的數(shù)據(jù)預(yù)警規(guī)則配置。
提醒方式分別支持郵件、手機短信、釘釘消息及釘釘群群機器人消息,可以快速完成數(shù)據(jù)預(yù)警及數(shù)據(jù)播報場景的應(yīng)用,同時還提供規(guī)則明確情況下的數(shù)據(jù)自動修復(fù)功能。
??4.5.1 郵件提醒
支持郵件模板的配置,支持語法糖;異常數(shù)據(jù)內(nèi)容支持以郵件附件的形式發(fā)送;

4.5.1.郵件提醒
?
?4.5.2 釘釘機器人提醒
支持在線配置釘釘機器人 ,可以實現(xiàn)各種群消息提醒, 如數(shù)據(jù)播報,值班提醒機器人等。目前我們已在財務(wù)結(jié)賬,技術(shù)值班等完成這些場景的配置。
效果如下圖:

4.5.2.釘釘機器人提醒
?
?4.5.3 短信提醒
?4.5.4 釘釘提醒
?
5.總結(jié)與規(guī)劃
5.1
總結(jié)
?問界低代碼平臺在2022年12月2日正式完成V1.0.0的發(fā)布,目前已在之家人財物事等多個業(yè)務(wù)場景中進行使用,在我們實踐的過程中,團隊自身的交付效率得到了大幅的提升。
2023年,我們將繼續(xù)夯實每個功能的細節(jié)體驗,實現(xiàn)基于數(shù)據(jù)模型的表單配置場景,并完成權(quán)限平臺,流程中心等的功能整合,為之家提供一站式的全場景低代碼平臺,賦能一線業(yè)務(wù),也賦能我們所有的前中后臺的產(chǎn)研團隊。
另外我們也希望與各個BU的技術(shù)團隊進行共建,共同為之家的低代碼平臺建設(shè),添磚加瓦,為技術(shù)人提效!
5.2
規(guī)劃
?問界平臺23年規(guī)劃:

5.2.規(guī)劃
?
6.結(jié)語
以問為模式 不斷的探索來達成,
以界為目標無限突圍與延展~~? ??
創(chuàng)新與變革 永無止境~
?
作者|信息系統(tǒng)團隊文章來源地址http://www.zghlxwxcb.cn/news/detail-515721.html
到了這里,關(guān)于問界低代碼平臺架構(gòu)設(shè)計及業(yè)務(wù)實踐的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!