999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Web應用系統中數據傳輸策略的研究與實現*

2012-10-08 01:58:02周志敏岳國英陳忠文
電信科學 2012年3期
關鍵詞:數據庫效率方法

周志敏,岳國英,陳忠文,毛 輝

(浙江水利水電??茖W校計算機與信息工程系 杭州310018)

1 引言

Internet的發展為各種跨區域應用需求提供了基礎,基于Web的應用系統越來越多,使得網絡上的數據傳輸效率成為瓶頸。隨著Web應用的普及和發展,人們對數據傳輸效率越來越關注,期望越來越高,Web應用與數據傳輸效率之間的矛盾也越來越突出。因此,使應用程序按需、高效、準確地進行數據傳輸是Web應用系統設計與開發人員需重點考慮的問題之一[1,2]。

在現實應用中,數據傳輸效率問題并沒有統一的答案,因此,數據傳輸策略也沒有統一的標準。從應用目的角度出發,不同的應用對數據傳輸效率的要求也不一樣。例如,對于銀行、證券等應用系統,會將數據傳輸的安全性、可靠性放在首位,其次才是數據的傳輸速度;而在一些以信息服務為主的應用系統中,會將數據傳輸速度(響應速度)放在首位。但是,無論怎樣的應用系統,肯定是既要考慮數據的安全性、可靠性,又要考慮數據的傳輸速度,本文重點討論后者。

2 數據庫角度的數據傳輸策略

Web應用系統的數據主要以數據庫方式存儲。合理的數據建模、恰當的查詢語句都可以提高應用系統的數據傳輸效率。從數據庫角度考慮,影響數據傳輸效率的因素與對策主要有以下幾點。

(1)優化數據結構

在對應用系統的數據進行建模時,既要遵循數據庫設計的規范化要求,又要考慮具體的應用對數據的要求,從而合理地設計數據結構,以快捷高效地組織與管理數據。

(2)合理設計索引

利用索引可以提高數據查詢的效率,特別是在數據量大的表中效果尤為明顯。對于經常作為查找關鍵字的屬性,DBA(data base administrator)應將其作為索引關鍵字建立索引。但是不管是聚簇索引還是非聚簇索引,都需要對數據進行動態排序(不同的是,前者是對數據進行物理重排,故一個表中只能有一個聚簇索引;后者是對數據進行邏輯重排,故一個表中允許有多個非聚簇索引)。所以,當對表進行增、刪、改時,表中的數據都會根據索引關鍵字重新排序,這會產生系統開銷。因此,對于頻繁修改或重復值較多的屬性,不宜作為索引關鍵字。

(3)合理地使用視圖

視圖是由若干個表或視圖組成的一個邏輯表。為不同的應用合理地設計視圖,不僅可以過濾掉不必要的數據項(在某種程度上加強了數據的安全性),避免程序員對數據組織不必要的理解難度,加強DBA和程序員的數據使用職責,而且可以簡化應用程序中的SQL語句,減少服務器端執行SQL的響應時間,從而提高數據傳輸效率。

(4)合理地使用主動數據庫技術

隨著數據庫技術的廣泛應用和深入發展,應用領域對數據庫系統主動服務的要求越來越多[3,4]。各種DBMS產品也都具有不同程度的主動數據服務功能。這些功能按一定條件觸發并自動在DB Server上執行,減少了應用程序與DB Server的通信次數,從而提高數據處理的響應速度。

3 應用系統角度的數據傳輸策略

通常Web應用系統是一個由客戶端、應用服務器、數據庫服務器組成的3層結構[5],如圖1所示。Web應用系統的業務流程一般是根據從客戶端采集的用戶需求,訪問數據庫得到數據集,在應用服務器上組織數據,然后在客戶端進行頁面顯示。

3.1 合理設計應用系統的業務流程執行方案

根據圖1,針對應用系統業務流程的執行方案有3種:方案1是將其放在“應用程序”層中;方案2是將其放在“ORDBMS(object relational data base management system)”層中;方案3是將其部分放在“應用程序”層,部分放在“ORDBMS”層。

對于方案1,由于對業務流程的執行動作全部放在“應用程序”層中,不僅使得系統對數據庫的操作只能在被動服務狀態下完成,而且所有數據都需要在網絡上傳輸,數據傳輸占用網絡開銷較大。

對于方案2,當業務流程需要主動數據庫服務時,采用觸發器完成,不需要應用程序調用(即與應用程序無關)[6,7];當業務流程不需要主動數據庫服務時,采用數據庫對象存儲過程完成,使其成為應用程序調用的一個外部過程,這樣就可以將系統的業務流程全部封裝在“ORDBMS”層中。如此,不僅可以充分利用“ORDBMS”的主動服務性能,使得業務流程具有邏輯獨立性,便于系統的維護[8];同時,由于系統的業務流程在數據庫服務器端完成,減小了網絡資源開銷,加強了系統安全,提高了應用系統的數據傳輸效率。

對于方案3,可以將數據量特大的業務流程放在“應用程序”層,處理時將其分解為若干個數據分組分別傳輸,以均衡網絡負載(如果這些數據整體傳輸,可能會引起網絡長時間堵塞)。對于數據傳輸量不大、傳輸次數單一的業務流程,也可以放在“應用程序”層。而對于一般的業務流程,應該放在“ORDBMS”層,以減少網絡開銷,提高數據傳輸效率。

3.2 合理設計業務流程執行中的數據傳輸方案

定義1(交易)用戶為某一需求對應用程序進行操作,應用程序成功地執行了此操作,并將操作結果反饋給用戶,將該過程稱為一次交易(或一筆交易)。交易是最小的用戶需求確定的一次業務流程。

定義2(數據)在交易中,當數據是通過SQL命令獲取時,將一條SQL命令獲取的數據稱為一種數據。

一筆交易往往從頁面采集用戶提供的數據,應用程序做出判斷,如果用戶提供的數據正確,則訪問數據庫,獲取用戶需要的數據,然后傳給客戶端組織頁面進行顯示。這個過程按數據傳輸批次可分為多批次傳輸和單批次傳輸兩種。

定義3(ADMP方法)對于一筆交易所需要的n(n>0)種數據,若應用程序分為n次向數據庫服務器發出數據處理請求,數據庫將每次數據處理的結果依次傳給應用程序。這種數據請求、處理與傳輸的過程稱為多批次處理方法,簡記為ADMP方法。

一筆交易數據采用ADMP方法的流程如圖2所示。

在ADMP處理方法中,n種數據請求形成一個等待隊列。數據庫接受一個數據處理請求時,應用程序處于等待狀態,數據庫服務器處理完一個請求,需要將結果傳輸給應用程序,應用程序繼續執行,再向數據庫服務器發出下一個數據處理請求,服務器再處理,依次處理n個請求,直至數據處理請求隊列為空,并且將結果傳輸給應用程序,應用程序再將結果傳遞給客戶端組織頁面進行顯示,本次交易結束。

定義4(ADSP方法)對于一筆交易所需要的n(n>0)種數據,若應用程序只向服務器發出一次請求,將該交易需要的所有數據通過調用事先在數據庫中設計好的存儲過程進行處理,然后將結果整體回傳給應用程序。這種數據請求、處理與傳輸的過程稱為單次處理方法,簡記為ADSP方法。

ADSP方法需要DBA將這筆交易所需要的全部數據的處理過程,在數據庫中形成一個存儲過程PRO(x1,x2,…)(一種數據庫對象)。交易時,應用程序只需要調用該存儲過程,數據庫服務器會將交易所需要的全部數據一次性傳輸給應用程序。其流程如圖3所示。

4 數據傳輸策略分析與實踐

在上述討論的諸策略中,合理地設計數據庫、規劃應用系統的業務處理方案,對提高數據傳輸效率非常重要。這些與DBA、系統分析師、軟件設計師的經驗密切相關,而且沒有嚴格的標準和有效的度量方法,只有靠技術人員的項目經驗優化數據傳輸策略,提高數據傳輸效率。但業務流程中的數據傳輸單位是可以定義的,而且軟件開發人員可以界定,這里將針對ADMP方法和ADSP方法進行時間復雜度分析,并通過實踐進行比較。

設一筆交易涉及n種數據,應用系統與數據庫服務器進行一次通信需要準備、確認、等待、傳輸等,合計時間為t0。對于第k種數據的處理請求,數據處理所需要的時間記為tk,將處理結果傳輸給應用程序所需要的時間記為Δtk。采用ADMP方法所需的總時間記為T1;采用ADSP方法時,傳輸結果數據所需要的時間為Δt,所需的總時間記為T2。記,則有:

可見,采用ADSP方法時,網絡傳輸準備的時間復雜度為O(1);采用ADMP方法時,其網絡傳輸準備的時間復雜度為O(n)。另外,T0是數據庫服務器準備交易數據所用的時間,是一個定值,兩種方法所需時間相同。根據交易的定義,一般情況下Δt遠遠小于(除非一筆交易所需要的數據量大到網絡傳輸困難,此種交易可考慮分多次處理)。因此,以交易為單位進行數據傳輸,可以明顯提高系統效率。實驗也證實了此結論。

筆者在開發 “基于Web的技術職稱申報與評審系統”時,對一些交易,首先采用ADMP方法進行數據傳輸,發現時間響應不滿足要求后,對其進行改進,采用ADSP方法進行數據傳輸,傳輸效果比較明顯。對同一組實驗數據,采用不同數據傳輸方法對響應時間進行了比較,結果見表1。

5 結束語

本文討論了Web應用系統的數據傳輸策略與效率問題,列舉了影響數據傳輸的因素和對應策略。DBA、系統分析師、軟件設計師的項目經驗對數據傳輸策略有很大影響,需要軟件設計與研發人員認真研究,確定合理的方案。本文給出了ADMP和ADSP兩種數據傳輸方法的定義,從理論角度分析了兩種方法的時間復雜度,并通過實例對兩種傳輸方案進行了比較。證明了在一筆交易有多種數據請求時ADSP方法的高效性,該方法對提高Web應用系統中的數據傳輸效率有明顯的效果。

表1 采用ADMP和ADSP方法的傳輸效率比較

1 許富龍,劉明,龔海剛等.延遲容忍傳感器網絡基于相對距離的數據傳輸.軟件學報,2010,21(3):499~501

2 Pasztor B,Musolesi M,Mascolo C.Opportunistic mobile sensor data collection with SCAR.Proceedings of the 4th IEEE Int’l Conference on Mobile Ad-hoc and Sensor Systems,Piscataway,IEEE Press,2007:1~12

3 李慶忠,王海洋,姜躍平等.一種改進的主動規則的系統執行模型分析.軟件學報,2002,13(1):111~116

4 孫明,姜躍平,董繼潤.支持復合事件的主動規則的可終止性分析.計算機研究與發展,1998,5(5):460~463

5 Guoying Yue,Sukui Lu,Ke Lu,et al.Application research of active database in MIS.International Conference of Management Engineering and Information Technology,2009

6 張峰,張莉莉.觸發器在數據處理過程中的應用研究.計算機工程與科學,2008,30(5):156~158

7 熊中敏,郝忠孝.含有非獨立型觸發環的主動規則集歸約算法研究.計算機科學,2006,33(6):163~167

8 李紅燕,李戰懷,唐世渭.ORDBMS中主動性規則的研究與實現.軟件學報,2001,12(9):1 329~1 335

猜你喜歡
數據庫效率方法
提升朗讀教學效率的幾點思考
甘肅教育(2020年14期)2020-09-11 07:57:42
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
數據庫
財經(2016年3期)2016-03-07 07:44:46
數據庫
財經(2016年6期)2016-02-24 07:41:51
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
跟蹤導練(一)2
“錢”、“事”脫節效率低
中國衛生(2014年11期)2014-11-12 13:11:32
主站蜘蛛池模板: 国产不卡网| 亚洲无码熟妇人妻AV在线| 国产真实乱子伦精品视手机观看 | 精品午夜国产福利观看| 久久人人爽人人爽人人片aV东京热| 国产香蕉97碰碰视频VA碰碰看| 久久午夜影院| 亚洲自偷自拍另类小说| 国产精品无码久久久久AV| 精品视频免费在线| 丁香婷婷激情网| 国产免费福利网站| 91蜜芽尤物福利在线观看| 精品国产免费观看| 亚洲精品无码抽插日韩| a级毛片免费看| 毛片久久网站小视频| 国产成人永久免费视频| 国产乱码精品一区二区三区中文 | 国产美女在线观看| 超清人妻系列无码专区| 国产精品亚洲综合久久小说| 成人小视频网| 日本91视频| 广东一级毛片| 精品自拍视频在线观看| 国产区福利小视频在线观看尤物| 尤物国产在线| 亚洲高清在线播放| 91久草视频| 国产精品人莉莉成在线播放| 欧美综合激情| 色欲不卡无码一区二区| 国产一在线| 亚洲欧美日韩动漫| 激情無極限的亚洲一区免费| 999福利激情视频| 91久久偷偷做嫩草影院电| 日韩大乳视频中文字幕| 成人夜夜嗨| 国产一级无码不卡视频| 精品福利国产| 久久这里只精品热免费99| 欧美色视频在线| av在线5g无码天天| 色婷婷视频在线| 成人在线不卡| 日韩视频福利| 伊人久热这里只有精品视频99| 国产乱人免费视频| 真实国产精品vr专区| 久久亚洲日本不卡一区二区| AV无码无在线观看免费| 亚洲av中文无码乱人伦在线r| 99久久99视频| 在线观看亚洲精品福利片| 亚洲成A人V欧美综合天堂| 一级毛片基地| 熟妇丰满人妻| 国产一在线| 亚洲欧美日本国产专区一区| 97超爽成人免费视频在线播放| 黄色三级毛片网站| 国产视频你懂得| 亚洲日韩AV无码精品| 久久婷婷五月综合97色| 高清免费毛片| 中文字幕色站| 天天做天天爱天天爽综合区| 国产三级国产精品国产普男人| 亚洲福利片无码最新在线播放 | 婷婷在线网站| 成人无码区免费视频网站蜜臀| 黄色网站在线观看无码| 伊人久久大香线蕉成人综合网| 国产精品亚洲欧美日韩久久| 国产福利大秀91| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 毛片在线播放网址| 五月婷婷亚洲综合| 午夜国产小视频| 波多野结衣一区二区三视频|