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

中間件技術(shù)在移動應用數(shù)據(jù)庫開發(fā)中的運用

2015-01-17 05:47:08朱金連皮德常方黎明
電子設(shè)計工程 2015年2期
關(guān)鍵詞:數(shù)據(jù)庫

王 韌, 朱金連 , 周 亮, 王 婷, 皮德常, 方黎明

(1.江蘇出入境檢驗檢疫局信息化處 江蘇 南京 200001;2.南京航空航天大學 計算機學院,江蘇 南京 210016)

目前企業(yè)級應用程序都是基于關(guān)系型數(shù)據(jù)庫進行數(shù)據(jù)存儲與管理是,關(guān)系數(shù)據(jù)庫管理系統(tǒng)采用存儲過程和觸發(fā)器的形式進行應用程序邏輯處理,并使用通用SQL語言存取數(shù)據(jù)與通過標準ODBC或JDBC標準化數(shù)據(jù)庫應用程序接口進行數(shù)據(jù)庫數(shù)據(jù)查詢,這種技術(shù)已經(jīng)完全融入到了企業(yè)級應用程序中,且應用程序離開了關(guān)系數(shù)據(jù)庫管理系統(tǒng)就無法正常運行。然而,隨著移動互聯(lián)網(wǎng)技術(shù)發(fā)展與移動用戶數(shù)量的增長,應用程序和數(shù)據(jù)管理逐步向“可移動化”發(fā)展,雖然如:Palm OS和 Window CE平臺支持本地文件系統(tǒng)管理數(shù)據(jù),但由于文件中的數(shù)據(jù)存儲不支持SQL查詢,需要人工將列表中的數(shù)據(jù)轉(zhuǎn)換成可自定義數(shù)據(jù)存儲與檢索格式,如何實現(xiàn)移動應用程序與企業(yè)應用程序間的有效數(shù)據(jù)管理與如何有效進行移動平臺數(shù)據(jù)庫訪問已經(jīng)成為了當前面臨的問題。

1 中間件定義與分類

1.1 中間件概念與分類

1)中間件概念

中間件主要是位于應用層與數(shù)據(jù)層間的由API定義的軟件層,主要負責不兼容操作系統(tǒng)、數(shù)據(jù)庫、文件系統(tǒng)間的數(shù)據(jù)通信與上下層通信服務的獨立[1]。

中間件作為一個獨立部分可以在多個平臺上進行實現(xiàn)、部署,提供很好的跨平臺的交互能力,應用程序在中間件提供的環(huán)境中可以更好地集中于業(yè)務邏輯上,最終自然而然地在異構(gòu)環(huán)境中實現(xiàn)良好的協(xié)同工作。中間件的使用減少了系統(tǒng)平臺的差異性對業(yè)務系統(tǒng)開發(fā)的過多影響,并為應用軟件的平滑演進提供一個堅實的基礎(chǔ)。

2)中間件分類

中間件類型主要包括數(shù)據(jù)庫中間件、遠程調(diào)用中間件、對象請求代理、事務處理管理中間件、專用中間件、面向消息中間件[2]。遠程調(diào)用中間件采用基于客戶機/服務器模式實現(xiàn)本地應用程訪問遠程數(shù)據(jù)庫,同時將遠程數(shù)據(jù)庫執(zhí)行的結(jié)果獲取到本地中;面向消息中間件主要是采用基于消息傳遞和消息隊列管理模式實現(xiàn)客戶機與服務器間的數(shù)據(jù)同步或者異步傳輸,通過該中間件可以實現(xiàn)網(wǎng)絡(luò)中斷環(huán)境下客戶端與服務端間的數(shù)據(jù)一致性;對象請求代理則采用分布式請求或服務信息處理方式實現(xiàn)非結(jié)構(gòu)或非關(guān)系數(shù)據(jù)庫間數(shù)據(jù)交互;事務處理管理中間件則主要是用于多用戶、分布式數(shù)據(jù)庫環(huán)境控制管理;專用中間件主要大型客戶機/服務器使用的專用中間件;數(shù)據(jù)庫中間件位于客戶機與數(shù)據(jù)庫之間的應用層,起到客戶機與數(shù)據(jù)庫間的數(shù)據(jù)交互與弱化客戶端數(shù)據(jù)處理的作用,同時通過對中間件增強數(shù)據(jù)并行處理與改善安全性能。

1.2 移動數(shù)據(jù)庫中間件種類

數(shù)據(jù)庫中間件種類包括通用網(wǎng)關(guān)接口 CGI、WebAPI、DJBC 技術(shù)[3]。

1)通用網(wǎng)關(guān)接口CGI

通用網(wǎng)關(guān)接口CGI主要是用于WEB服務器與CGI應用程序數(shù)據(jù)傳遞標準,CGI部署在應用服務器中,同時目前所有Web服務器都支持CGI標準。在CGI接口中,當客戶端通過瀏覽器訪問服務器時[1],首先調(diào)用CGI接口進行服務器數(shù)據(jù)訪問,服務器則將數(shù)據(jù)處理結(jié)果通過WebService返回給客戶端,由于CGI采用為每個請求創(chuàng)建一個CGI程序?qū)嵗瑢е庐斁哂邢嗤樵儗嵗龝r也需要建立獨立CGI程序?qū)嵗瑹o法實現(xiàn)多個客戶請求共享,也容易導致服務器資源大量消耗。

2)WebAPI

WebAPI數(shù)據(jù)庫中間件主要是以DLL方式運行的ASNPI和ISAPI,其內(nèi)部中的地址都不相同,當客戶端發(fā)起的ULR地址相同情況下WebAPI提供了可調(diào)用數(shù)據(jù)操作進程,加速了數(shù)據(jù)庫服務器通信效率和性能,但通過WebAPI部署的中間件智能用于基于WEB的服務器上,可移植性低;

3)DJBC 技術(shù)

DJBC技術(shù)主要采用基于Java語言的書庫訪問接口,DJBC通過數(shù)據(jù)庫通用驅(qū)動管理器調(diào)用具體的數(shù)據(jù)庫驅(qū)動程序執(zhí)行SQL語句,并根據(jù)底層操作系統(tǒng)的環(huán)境自動選擇驅(qū)動程序,其具有很好的跨平臺性與可移植性,但由于Java的性能問題,其DJBC訪問數(shù)據(jù)效率很低[2]。

1.3 移動數(shù)據(jù)庫中間件優(yōu)缺點

移動數(shù)據(jù)庫中間件就有可移植性、集成、易于擴充、使用簡單等特點。移動數(shù)據(jù)庫中間件屏蔽了底層通信協(xié)議與操作系統(tǒng)細節(jié),只需要對中間件進行配置就可以實現(xiàn)與底層通信,而當應用程序需要使用底層服務時,只需要將中間件中的服務寫入應用程序中即可,無需要對集成環(huán)境做大量代碼修改,同時當中間件的功能無法滿足應用程序需求時,可以通過中間件功能擴展方法增強中間件能力,數(shù)據(jù)庫中間件還可以實現(xiàn)各種數(shù)據(jù)源的統(tǒng)一訪問方法。

2 移動數(shù)據(jù)庫中間件設(shè)計

2.1 移動應用數(shù)據(jù)解決方案

一般情況下,移動數(shù)據(jù)庫融合了復制、緩存、數(shù)據(jù)廣播、位置管理、查詢處理與優(yōu)化技術(shù)[4]。移動終端中的數(shù)據(jù)同步主要通過管道(conduit)進行處理,當用戶在應用程序中點擊提交或者Sync按鈕時,基于系統(tǒng)中的DLL或者COM對象的管道軟件會自動調(diào)用系統(tǒng)數(shù)據(jù)庫操作數(shù)據(jù),并通過調(diào)用ODBC/JDBC中間件技術(shù)同步到企業(yè)級應用程序更新數(shù)據(jù)庫。但隨著不同移動終端的出現(xiàn),要實現(xiàn)應用程序如能被Windows CE支持也要被手提電腦支持,其數(shù)據(jù)庫應用程序接口就需要使用3個數(shù)據(jù)庫模塊,例如在移動電腦中使用JDBC/ODBC/ADO數(shù)據(jù)庫模塊,在OS系統(tǒng)中使用Palm數(shù)據(jù)庫應用程序接口,在Windows CE中使用ADOCE數(shù)據(jù)庫訪問接口,以及要實現(xiàn)3個數(shù)據(jù)模塊互相通信的服務器TCP/IP套接子接口等。為了實現(xiàn)移動應用數(shù)據(jù)庫的跨平臺支持,可以采用如 C/C++、JAVA等流行語言編寫移動應用程序或者采用跨平臺中間件技術(shù)實現(xiàn)不同平臺底層數(shù)據(jù)操作與管理,并采用服務端數(shù)據(jù)合并與同步化解決方案實現(xiàn)數(shù)據(jù)一致性管理。

移動數(shù)據(jù)庫在移動終端中主要承擔了數(shù)據(jù)管理、查詢處理、交換管理等功能,在進行移動數(shù)據(jù)庫設(shè)計時需要重點考慮數(shù)據(jù)類型、響應時間、備份與恢復,同時也需要支持并發(fā)數(shù)據(jù)操作與數(shù)據(jù)安全管理。

2.2 移動應用數(shù)據(jù)庫中間件結(jié)構(gòu)

本研究中的中間件應用用于和檢驗檢疫局原有核心業(yè)務系統(tǒng)對接。通過接口交互,可從原業(yè)務系統(tǒng)獲取業(yè)務數(shù)據(jù)信息,并將“國檢通”系統(tǒng)處理后的業(yè)務數(shù)據(jù)同步至原系統(tǒng)。

移動計算系統(tǒng)是服務端采用固定節(jié)點與客戶端采用移動節(jié)點構(gòu)成了分布式計算結(jié)構(gòu),客戶端具有可移動性、斷接性、弱可靠性等特點,其移動環(huán)境下的數(shù)據(jù)庫就是移動數(shù)據(jù)庫,與應用程序相結(jié)合共同形成了動態(tài)連接的分布式系統(tǒng)。其移動應用數(shù)據(jù)庫中間件結(jié)構(gòu)如圖1所示。

圖1 移動數(shù)據(jù)庫中間件結(jié)構(gòu)Fig.1 Mobile database middleware structure

在移動數(shù)據(jù)庫中間件結(jié)構(gòu)中,當上層應用需要與底層移動操作系統(tǒng)、外圍系統(tǒng)、移動數(shù)據(jù)庫交互信息時,首先中間件判斷上層應用程序需要調(diào)用的服務,如數(shù)據(jù)訪問,則中間件通過數(shù)據(jù)訪問組件調(diào)用數(shù)據(jù)訪問DAO組件實現(xiàn)與移動數(shù)據(jù)庫數(shù)據(jù)訪問,同時若應用程序需要調(diào)用遠程數(shù)據(jù)庫[3],則也可以通過數(shù)據(jù)訪問組件調(diào)用遠程數(shù)據(jù)庫,若上層應用程序通過傳輸中間件調(diào)用遠程組件,若首先調(diào)用中間件中的傳輸封裝組件接口,然后中間件自動調(diào)用壓縮組件和傳輸組件進行數(shù)據(jù)收發(fā)。這樣移動應用程序就不需要關(guān)系發(fā)送數(shù)據(jù)信息的底層細節(jié),只需要向互聯(lián)網(wǎng)用戶一樣調(diào)用底層服務即可。在移動數(shù)據(jù)庫中間件中,為了支持移動設(shè)備與移動應用程序的差異性,數(shù)據(jù)庫中間件支持通過XML服務實現(xiàn)組件功能調(diào)用、數(shù)據(jù)轉(zhuǎn)換,移動數(shù)據(jù)庫中間件服務組件啟動時會自動加載XML服務,通過XML加載移動設(shè)備軟硬件信息,并更加硬件設(shè)備不同自動選擇最優(yōu)配置,實現(xiàn)在不同制式和設(shè)備信息交互時提供不同層次的服務水平。

2.3 移動應用數(shù)據(jù)庫中間件優(yōu)化

由于移動數(shù)據(jù)庫首先要與數(shù)據(jù)庫建立連接,然后才能發(fā)送SQL語句并執(zhí)行該語句,當數(shù)據(jù)處理結(jié)束后數(shù)據(jù)庫自動關(guān)閉該連接,由于移動應用程序有時存在多個應用程序同時調(diào)用一個移動數(shù)據(jù)庫的環(huán)境,當多個應用程序需要同時調(diào)用一個移動數(shù)據(jù)時,由于建立多個會話,其數(shù)據(jù)庫工作效率會降低。在本論文中,移動數(shù)據(jù)庫中間件中已經(jīng)包含了連接移動數(shù)據(jù)庫的 Connnection 類、Statement類、ResultSet類[5],分別描述了移動應用程序創(chuàng)建數(shù)據(jù)庫連接、提交SQL語句、包含了處理數(shù)據(jù)庫執(zhí)行結(jié)果反饋ResultSet類[4]。移動數(shù)據(jù)庫中間件中利用3個基礎(chǔ)類完成數(shù)據(jù)庫連接的過程,在移動數(shù)據(jù)中間件中首先利用Class.forName加載支持本移動設(shè)備的數(shù)據(jù)庫驅(qū)動程序,然后利用DriverManager.getConnection函數(shù)創(chuàng)建移動數(shù)據(jù)庫連接Connection實例,接著利用Connection.createStatement方法創(chuàng)建移動數(shù)據(jù)庫Statement實例,最后分別利用 executeUpdate、executeQuery、ResultSet執(zhí)行應用程序提交的SQL,完成數(shù)據(jù)更新、查詢、結(jié)果反饋等操作[6]。

而當移動應用程序數(shù)據(jù)操作涉及遠程數(shù)據(jù)調(diào)用時,移動應用程序通過數(shù)據(jù)訪問組件中的webdataQuery類實現(xiàn)服務端數(shù)據(jù)調(diào)用,其調(diào)用方法如圖3所示,在圖3中中間件首先通過中間件傳輸組件調(diào)用遠程企業(yè)應用Webservices應用程序模塊,由企業(yè)應用WEB應用程序完成遠端數(shù)據(jù)操作[5],其操作結(jié)果由webservices返回,并通過XML服務組件進行數(shù)據(jù)格式轉(zhuǎn)換,然后更新到移動數(shù)據(jù)庫中。

3 結(jié)束語

圖2 遠程調(diào)用流程Fig.2 Remote call process

文中主要探討了基于中間件的移動數(shù)據(jù)庫設(shè)計,利用中間件技術(shù)處理移動數(shù)據(jù)庫在移動終端和網(wǎng)絡(luò)的不可靠性下的數(shù)據(jù)處理,提高了移動應用程序的擴展性、健壯性的需求。

[1]錢文海,賀元啟.基于數(shù)據(jù)復制技術(shù)的移動數(shù)據(jù)庫系統(tǒng)[J].計算機應用研究,2012(7):34-35.QIAN Wen-hai,HE Yuan-qi.The mobile database system based on the data replication technology[J].Computer Application Research,2012(7):34-35.

[2]王宗江,樂嘉錦.Sybase移動和嵌入式數(shù)據(jù)庫的同步技術(shù)[J].中原工學院學報是,2012(1):123-124.WANGZong-jiang,LE Jia-jin.Sybase mobile and embedded database synchronization technology[J].Journal of Zhongyuan Institute of Technology,2012(1):123-124.

[3]王彤,王良.嵌入式移動數(shù)據(jù)庫的綜述及評價[J].計算機工程,2011(12):34-35.WANG Tong,WANG Liang.Review and evaluation of the embedded mobile database[J].Computer Engineering,2011(12):34-35.

[4]Imielinski T,Viswanathan S,Badrinath B.R.Energy efficient indexing on air[C]//Proceedings of International Conference on Management of Data,2010.

[5]S.Acharya,M.Franklin and S.Zdonik.Dissemination-based data delivery using broadcast disks[C]//IEEE Personal Communications,2009.

[6]Andrea Bono.Historical seismometry database project:A comprehensive relational database for historical seismic records[J].Computers&Geosciences,2007:45-46.

猜你喜歡
數(shù)據(jù)庫
數(shù)據(jù)庫
財經(jīng)(2017年15期)2017-07-03 22:40:49
數(shù)據(jù)庫
財經(jīng)(2017年2期)2017-03-10 14:35:35
兩種新的非確定數(shù)據(jù)庫上的Top-K查詢
數(shù)據(jù)庫
財經(jīng)(2016年15期)2016-06-03 07:38:02
數(shù)據(jù)庫
財經(jīng)(2016年3期)2016-03-07 07:44:46
數(shù)據(jù)庫
財經(jīng)(2016年6期)2016-02-24 07:41:51
數(shù)據(jù)庫
財經(jīng)(2015年3期)2015-06-09 17:41:31
數(shù)據(jù)庫
財經(jīng)(2014年21期)2014-08-18 01:50:18
數(shù)據(jù)庫
財經(jīng)(2014年6期)2014-03-12 08:28:19
數(shù)據(jù)庫
財經(jīng)(2013年6期)2013-04-29 17:59:30
主站蜘蛛池模板: 99青青青精品视频在线| 男女男精品视频| 美女一级毛片无遮挡内谢| 久久激情影院| 91精品国产综合久久香蕉922| 色噜噜久久| 国产亚洲高清视频| 久草网视频在线| 亚洲精品天堂自在久久77| 欧美综合一区二区三区| 99ri精品视频在线观看播放| 亚洲日本精品一区二区| 曰韩人妻一区二区三区| 久久永久精品免费视频| 亚洲大学生视频在线播放| 在线观看免费人成视频色快速| 精品久久久久久久久久久| 91青青草视频在线观看的| 亚洲欧美另类日本| 亚洲美女一区| 成人免费网站在线观看| 免费国产黄线在线观看| 国产在线精品人成导航| lhav亚洲精品| 日韩不卡免费视频| 国产欧美在线观看一区| 亚洲中文字幕国产av| 大陆国产精品视频| 久久国产精品波多野结衣| 在线观看91精品国产剧情免费| 国产福利大秀91| 国产亚洲精品自在久久不卡| 国产美女在线观看| 亚洲人人视频| 精品亚洲国产成人AV| 中日无码在线观看| 中文字幕资源站| 亚洲国产精品久久久久秋霞影院| 91po国产在线精品免费观看| 亚洲成人77777| 九色91在线视频| 欧美色图久久| 国产欧美日韩免费| 久久综合九色综合97婷婷| 麻豆AV网站免费进入| www.国产福利| 欧洲在线免费视频| 久久夜夜视频| 91麻豆久久久| 国产区成人精品视频| 青草视频免费在线观看| 香蕉精品在线| 伊人成人在线视频| 粉嫩国产白浆在线观看| 男女男精品视频| 18禁黄无遮挡免费动漫网站| 日韩免费毛片| 蜜臀av性久久久久蜜臀aⅴ麻豆| 国产福利大秀91| 国产乱人免费视频| 黄片一区二区三区| 国产大片喷水在线在线视频| 婷婷六月综合| 激情国产精品一区| 日韩欧美视频第一区在线观看| 美女视频黄又黄又免费高清| 中文国产成人精品久久| 亚洲欧洲综合| 天堂在线视频精品| 精品国产成人高清在线| 日本黄色a视频| 午夜丁香婷婷| 精品成人一区二区三区电影 | 午夜人性色福利无码视频在线观看| 五月天久久综合| 四虎成人精品在永久免费| 中国精品自拍| 亚洲视频一区| 国产在线八区| 国产噜噜在线视频观看| 国产亚卅精品无码| 免费看av在线网站网址|