成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

第10期:報表的數據計算層

企業動態
在計算層中要完成一些復雜的計算邏輯,好的方式是實現一個顯式的數據計算層,在其中提供可解釋執行的腳本功能,把數據源計算獨立出來,下面,我們從四個方面來分析其優勢。

我們在上一期已經解釋了報表應用結構中數據計算層的必要性,以及可以使用報表工具自定義數據源接口來實現計算層。在計算層中要完成一些復雜的計算邏輯,因此要有可編程的能力,而基于自定義接口可以采用報表工具的宿主語言(即用于開發報表工具的程序設計語言)進行開發,在功能方面沒有問題,不過,實際應用中卻仍有不少缺陷。更好的方式是實現一個顯式的數據計算層,在其中提供可解釋執行的腳本功能,把數據源計算獨立出來。

數據蔣堂第10期 

我們從四個方面來分析后者的優勢。

代碼編寫

報表工具的宿主語言一般是Java、C#等高級語言,這類語言針對結構化數據集的支持很有限,雖然都能做,但卻非常繁瑣,簡單做個求和運算都需要寫數行代碼的循環來實現。而報表數據源處理則大量涉及批量數據運算,采用高級語言開發時會導致動輒數百行的冗長代碼,編寫和調試都很困難。

專門為數據計算設計的腳本則能夠提供豐富的結構化數據集運算功能,可以很方便地實現批量數據計算。代碼更短不僅是工作量更少、調試方便,而且還有利于整體了解和把握算法。如果語言設計得好,大多數報表的數據源準備算法都可以在一屏內實現,整個算法過程一目了然。

應用耦合

報表的呈現式樣是由報表工具繪制的模板來控制,報表模板一般以文件形式存放在文件系統中。如果數據準備采用自定義數據源實現,這部分代碼將作為應用程序的一部分被一起編譯和打包。呈現模板和數據集算法作為同一個報表的兩個關鍵要素必須合理配合才能正常工作,但物理上卻會分存于兩處,甚至可能是不同人員開發的,這給修改維護報表帶來麻煩,需要刻意去保持兩處的一致性。

獨立計算層的計算腳本和報表模板一樣,都是解釋執行的,腳本也可以文件形式與和報表模板放在一起,報表維護時很容易保證這兩部分一致,這方面不存在應用耦合問題。

熱切換

報表的數據集算法如果使用自定義數據源實現,那就會成為應用程序的一部分,發生修改時就需要和整個應用程序一起重新編譯打包,并且在大多數情況時需要將應用停機后再重啟。而報表是個業務穩定性相對較差的功能,經常會增加和修改,這樣就會導致應用程序頻繁重啟。雖然Java等開發機制也支持熱加載,但使用復雜,大多數應用程序員難以掌握。而且一旦加載后的程序就不會被清除,即使不再有用也會一直占據內存,熱加載技術并不很合適應用于報表數據源。

類似地,熱切換對于使用獨立計算層的腳本也不再是問題,有報表修改只要修改呈現模板和相應的計算腳本。因為腳本是解釋執行的,應用程序本身并不需要改變,也就沒有必要停機重啟。被修改的報表在訪問時臨時計算即可。

開發人員

使用Java等高級語言實現報表數據集準備時,需要在代碼中引用數據庫連接、基礎類庫等各種環境信息,還要了解和遵循整個應用程序的代碼規范以保持協調,這常常是項目組中的專業程序員才能掌握的技能。而開發報表數據集只要了解數據結構和運算邏輯,其實用戶方有不少技術人員都擁有這個能力,但苦于難以理解開發環境而很難自由實現新的報表。

有獨立計算層時,報表開發需要的各種環境信息可以事先在應用程序中配置好,使用腳本編程時也不必關心整個應用的代碼規范,報表開發人員只要關心數據結構和運算邏輯,可以用于開發報表的人員更多,以適應報表頻繁修改的業務特性。

【本文為51CTO專欄機構“數據蔣堂”的原創稿件,轉載請聯系原作者】

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2017-06-12 13:18:51

數據報表計算

2017-05-21 22:32:39

報表性能優化

2018-03-14 07:47:41

大數據語法SQL

2017-08-09 16:13:48

SQL大數據語法

2017-07-19 06:37:18

數據庫計算存儲

2017-07-12 07:27:11

數據庫中間表存儲

2018-03-08 11:13:28

AWSAI云服務

2018-01-18 20:47:18

CPU數據線程

2018-03-05 08:13:13

臨時性計算編程語言

2016-03-17 15:24:12

大數據智造+V課堂

2020-11-23 09:47:39

技術資訊

2020-10-16 16:23:28

Kubernetes開源

2017-03-02 18:15:28

云計算云計算半月刊

2020-10-19 11:41:32

技術資訊

2020-07-24 11:48:13

云計算

2018-02-06 23:30:07

文件存儲數據

2017-05-25 08:56:22

硬盤性能特征

2017-11-22 11:39:30

網絡安全防火墻動態安全

2013-01-21 13:41:59

IBMdW
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 玖玖视频 | 欧美国产日韩在线观看 | 51ⅴ精品国产91久久久久久 | 国产成人免费视频 | 国产 日韩 欧美 制服 另类 | 伦理午夜电影免费观看 | 日本欧美国产在线 | 国产成人免费视频网站高清观看视频 | 久久精品二区亚洲w码 | 久久久久久九九九九九九 | 天天爽夜夜骑 | 九九热精品在线 | 午夜视频在线 | 国产在线一区二区三区 | 伊人无码高清 | 亚洲性在线 | 狠狠爱综合网 | 亚洲高清在线 | 久草精品视频 | 久久久久成人精品免费播放动漫 | 精品亚洲一区二区三区四区五区 | 国产成人综合亚洲欧美94在线 | 亚洲永久精品国产 | 97国产精品视频人人做人人爱 | 一级片在线观看 | 中文字幕在线看第二 | 亚洲一区二区三区视频 | 日韩精品一区二区三区在线观看 | 久久久久久影院 | 爽爽免费视频 | 欧美日韩在线高清 | 干干干操操操 | 99精品视频一区二区三区 | 在线观看亚洲专区 | 欧洲免费毛片 | 精品视频一区二区 | 99视频入口 | 亚洲精品成人网 | 天天插天天操 | 国产精品久久久久久亚洲调教 | 日韩精品免费在线观看 |