国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

公交動態(tài)信息系統(tǒng)之?dāng)?shù)據(jù)庫應(yīng)用——比較數(shù)據(jù)介接效能

2015-05-08 09:11:36林大杰顏嘉俊李昀蓁
交通信息與安全 2015年3期
關(guān)鍵詞:數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)量公交

林大杰 董 瑩 顏嘉俊 李昀蓁

(1.逢甲大學(xué)運(yùn)輸科技與管理學(xué)系 臺灣臺中40724;2.逢甲大學(xué)資訊工程學(xué)系 臺灣臺中40724)

0 引 言

近年來,隨著經(jīng)濟(jì)的發(fā)展,私人運(yùn)具不斷普及,政府大力推行大眾運(yùn)輸,先進(jìn)大眾運(yùn)輸系統(tǒng)(advanced public transport systems,APTS)成為新的焦點(diǎn)話題。而公交動態(tài)信息系統(tǒng)作為其中重要的一環(huán)其關(guān)鍵性不言而喻。

隨著大眾運(yùn)輸基礎(chǔ)建設(shè)不斷完善,如今公交路線、車輛的數(shù)量已頗為可觀,造成了公交動態(tài)信息系統(tǒng)需儲存、處理大量數(shù)據(jù)的巨大壓力。由于信息需求量越來越大,對公交動態(tài)系統(tǒng)而言,系統(tǒng)的負(fù)載也越來越重。為了滿足民眾之需求,系統(tǒng)也需要隨著科技而改變進(jìn)化。

傳統(tǒng)的關(guān)系型數(shù)據(jù)庫系統(tǒng)已逐漸不能滿足處理巨量數(shù)據(jù)的需求,而與此同時,NoSQL數(shù)據(jù)庫的興起引起了各界的關(guān)注。因其能夠處理超巨量數(shù)據(jù)的特性,NoSQL數(shù)據(jù)庫成為了1個極其熱門的新領(lǐng)域,其產(chǎn)品的發(fā)展也非常迅速。筆者在文中探討了2種數(shù)據(jù)庫在數(shù)據(jù)介接方面的效能優(yōu)劣。

1 數(shù)據(jù)庫

數(shù)據(jù)庫即1群有關(guān)聯(lián)、有組織數(shù)據(jù)的集合,以不重復(fù)的方式儲存,使用者可透過數(shù)據(jù)庫管理系統(tǒng)(database management system,DBMS)進(jìn)行檢索、排序、計(jì)算、組織、查詢等方式,有效轉(zhuǎn)換成有用的信息。Rick Cattell[1]按照數(shù)據(jù)儲存方式之不同,將數(shù)據(jù)庫區(qū)分為 Key-value Stores,Document Stores,Extensible Record Stores,以及relation databases。隨著數(shù)據(jù)處理模式的演進(jìn),數(shù)據(jù)結(jié)構(gòu)不斷發(fā)展,按照時間發(fā)展的順序可分為:階層式數(shù)據(jù)庫(hierarchical database)、網(wǎng)狀式數(shù)據(jù)庫(network database)、關(guān)系型數(shù)據(jù)庫(relational database),以及面向?qū)ο笫綌?shù)據(jù)庫(object-oriented database)、對象關(guān)系型數(shù)據(jù)庫(object-relational database)[2]。

關(guān)系型數(shù)據(jù)庫是目前最重要的、應(yīng)用最廣泛的1種數(shù)據(jù)庫模型,采用關(guān)系型模型作為數(shù)據(jù)的組織方式[3]。關(guān)系型數(shù)據(jù)庫系統(tǒng)的典型代表有Oracle,IBM的DB2,微軟的 MS SQL Server,以及Informix,ADABASD等。關(guān)系型數(shù)據(jù)庫為了確保數(shù)據(jù)之完整性及正確性,會依照不同的分類而儲存在數(shù)個表格之中,再利用字段之間的參考來建立表格之間的關(guān)聯(lián)。每個表格都可以各自進(jìn)行數(shù)據(jù)的新增、修改、查詢和刪除,也可以使用關(guān)聯(lián)性在數(shù)個表格中取得所要查詢的數(shù)據(jù)。而若要描述對象與對象之間的復(fù)雜關(guān)系,則必須外建立1個表格來做處理。而且當(dāng)數(shù)據(jù)量越來越多時,必須額外新建更多的表格才足以應(yīng)付需求。如此,關(guān)連式數(shù)據(jù)庫無法記錄越來越復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。而且當(dāng)系統(tǒng)數(shù)據(jù)量越來越大時,透過主鍵(primary key)以及外鍵(foreign key)來查詢與處理數(shù)據(jù),其執(zhí)行效率會大大降低。

非關(guān)系型數(shù)據(jù)庫(NoSQL),即不同于傳統(tǒng)關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)庫管理系統(tǒng)的統(tǒng)稱。隨著Web2.0時代的興起,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫在處理超大規(guī)模和高并發(fā)的SNS類型Web2.0純動態(tài)網(wǎng)站時暴露了許多難以克服問題。致力于處理巨量數(shù)據(jù)的非關(guān)系型數(shù)據(jù)庫應(yīng)運(yùn)而生。Eric Evans[4]提出了NoSQL的概念,NoSQL主要指非關(guān)系型、分布式、不提供ACID的數(shù)據(jù)庫設(shè)計(jì)模式。非關(guān)系型數(shù)據(jù)庫強(qiáng)調(diào)Key-Value Stores和文文件數(shù)據(jù)庫的優(yōu)點(diǎn),并具有極佳的可擴(kuò)充性。IBM,MICROSOFT,F(xiàn)ACEBOOK以及YAHOO GOOGLE等各大廠商紛紛提出云端架構(gòu)來儲存巨量數(shù)據(jù)以及對巨量數(shù)據(jù)進(jìn)行加值運(yùn)算。現(xiàn)有產(chǎn)品包括Cassandra,MongoDB,HBase與Hadoop[5-7],等等。

總的來說,關(guān)系型數(shù)據(jù)庫優(yōu)勢在于發(fā)展多年,各種優(yōu)化工作已經(jīng)做得很深,便于對數(shù)據(jù)進(jìn)行交叉分析,而其劣勢在于可擴(kuò)充性較差,面臨巨量數(shù)據(jù)時,效能較差;非關(guān)系型數(shù)據(jù)庫的優(yōu)勢在于可擴(kuò)充性佳,讀寫快速,成本較低;其劣勢也很明顯,未形成一定的標(biāo)準(zhǔn),支持的特性不夠豐富,提供功能比較有限,各種產(chǎn)品層出不窮,內(nèi)部混亂,現(xiàn)有產(chǎn)品不夠成熟,還需時間的檢驗(yàn)。

2 公交數(shù)據(jù)交換技術(shù)

目前,臺灣已逐漸發(fā)展以XML技術(shù)架構(gòu)為基礎(chǔ)的數(shù)據(jù)交換模式,多用于旅行者信息之發(fā)布。

圖1 公交數(shù)據(jù)交換流程示意Fig1 Bus data exchange process indicate

公交上設(shè)備GPRS Modern將實(shí)時行車數(shù)據(jù)(包括定時數(shù)據(jù)A1,定點(diǎn)數(shù)據(jù)A2)透過GPRS基地臺傳送到地區(qū)公交數(shù)據(jù)中心,數(shù)據(jù)中心再藉由網(wǎng)絡(luò)將數(shù)據(jù)傳送給公交動態(tài)信息系統(tǒng),于公交動態(tài)信息系統(tǒng)之?dāng)?shù)據(jù)庫服務(wù)器進(jìn)行數(shù)據(jù)的新增、更新、查詢、刪除。

XML可用來標(biāo)記數(shù)據(jù)、定義數(shù)據(jù)類型,是1種允許用戶對自己的標(biāo)示語言進(jìn)行定義的源語言,具有彈性結(jié)構(gòu)、容易產(chǎn)生、閱讀及傳送的優(yōu)勢,適于網(wǎng)絡(luò)傳輸見圖2。其XML包含3部分,分別為檔宣告(prolog)、根 元 素 (rootelement)以 及 子 元 素 (element)。

范例如下。

圖2 XML數(shù)據(jù)結(jié)構(gòu)示意圖Fig2 XML data structure

第1行為文件宣告,「<BusDynInfo>,</Bus-DynInfo>」即為根元素,「<BusInfo>,</BusInfo>」為子元素。

3 數(shù)據(jù)庫測試

3.1 測試設(shè)計(jì)

現(xiàn)有關(guān)系型數(shù)據(jù)庫以及非關(guān)系型數(shù)據(jù)庫并無統(tǒng)一的測試標(biāo)準(zhǔn)與工具,因此本文將參考相關(guān)操作書籍[8-11]並盡量仿真數(shù)據(jù)庫于公交動態(tài)信息系統(tǒng)中介接數(shù)據(jù)之模式,對SQL Server和MongoDB進(jìn)行統(tǒng)一測試。就應(yīng)用端而言,數(shù)據(jù)介接涉及數(shù)據(jù)庫的2個方面,分別為Insert,用戶插入新的數(shù)據(jù),及Update,當(dāng)用戶編輯或修改數(shù)據(jù)庫之?dāng)?shù)據(jù)。

筆者采用公交的實(shí)際數(shù)據(jù)作為數(shù)據(jù)庫測試數(shù)據(jù),以SQL Server作為關(guān)系型數(shù)據(jù)庫之代表,以MongoDB作為非關(guān)系型數(shù)據(jù)庫之代表,從使用者應(yīng)用端的角度出發(fā),主要測試2種數(shù)據(jù)庫之?dāng)?shù)據(jù)介接操作的性能:分為數(shù)據(jù)庫中有少量數(shù)據(jù)以及有大量數(shù)據(jù)的情況下,對數(shù)據(jù)庫做插入與更新數(shù)據(jù)動作,期間測試數(shù)據(jù)庫之運(yùn)行時間,以此作為衡量兩者的標(biāo)準(zhǔn),分析兩種數(shù)據(jù)庫之效能。

本文采取之軟件規(guī)格:SQL Server 2012;MongoDB,版本2.4.6,以及編程軟件 Microsoft Visual C#2010Express。測試環(huán)境如下:Windows版本,Windows Server 2008R2Enterprise;處理器,Intel(R)Xeon(R)CPU E5-2620 0@2.00GHz 2.00GHz(2處理器);內(nèi)存24.0GB;系統(tǒng)類型,64-bit操作系統(tǒng)。

3.2 測試結(jié)果分析

數(shù)據(jù)庫內(nèi)10萬筆數(shù)據(jù)量的情況下,插入并更新1,1 000,5 000,10 000,20 000,30 000,40 000,50 000筆數(shù)據(jù),運(yùn)行時間。

數(shù)據(jù)庫內(nèi)千萬筆數(shù)據(jù)量的情況下,插入并更新1,1 000,5 000,10 000,20 000,30 000,40 000,50 000筆數(shù)據(jù),運(yùn)行時間。

匯總見表1、表2及圖3、圖4。

表1 數(shù)據(jù)庫內(nèi)不同數(shù)據(jù)量情況下插入數(shù)據(jù)運(yùn)行時間Tab.1 Running time of insert data under different circumstances of database within different amounts of data

表2 數(shù)據(jù)庫內(nèi)不同數(shù)據(jù)量情況下更新數(shù)據(jù)運(yùn)行時間Tab.2 Running time of update data under different circumstances of database within different amounts of data

圖3 不同數(shù)據(jù)量插入不同筆數(shù)據(jù)運(yùn)行時間Fig3 Running time of insert different amounts of data under different circumstances of database

圖4 不同數(shù)據(jù)量更新不同筆數(shù)據(jù)運(yùn)行時間Fig4 Running time of update different amounts of data under different circumstances of database

由此可以看出,2種數(shù)據(jù)庫都隨著插入筆數(shù)的增加,其運(yùn)行時間也在增加;數(shù)據(jù)庫小量數(shù)據(jù)的情況下,MongoDB之Insert效能較佳;而千萬筆數(shù)據(jù)量基礎(chǔ)上,即大量數(shù)據(jù)的情況下,也是MongoDB之Insert效能有較為顯著的優(yōu)勢;也就是說,數(shù)據(jù)庫內(nèi)數(shù)據(jù)量越大,則MongoDB在insert方面的優(yōu)勢越明顯。

2種數(shù)據(jù)庫之更新筆數(shù)則情況有所不同,隨著執(zhí)行筆數(shù)的增加,運(yùn)行時間有增加的趨勢,且在數(shù)據(jù)庫小量數(shù)據(jù)的情況下,SQL Server之update效能較佳,而千萬筆數(shù)據(jù)量基礎(chǔ)上,則MongoDB效能有較為明顯的優(yōu)勢,即就update而言,MongoDB在數(shù)據(jù)量較大的情況下,具有較佳的效能。

取更新10萬到100萬筆數(shù)據(jù)量的情況,比較數(shù)據(jù)庫更新10 000筆數(shù)據(jù)的運(yùn)行時間的變化:

表3 數(shù)據(jù)庫內(nèi)不同數(shù)據(jù)量情況下更新10 000筆數(shù)據(jù)運(yùn)行時間Tab.3 Running time of update 10 000data under circumstances of database within different amounts of data

圖5 不同數(shù)據(jù)量更新10 000筆數(shù)據(jù)運(yùn)行時間Fig4 Running time of update 10 000data under different circumstances of database

由圖5可見,MongoDB更新運(yùn)行時間隨著數(shù)據(jù)庫內(nèi)數(shù)據(jù)量增加,變化并不明顯,而SQL Server隨著數(shù)據(jù)庫內(nèi)數(shù)據(jù)量增加,其運(yùn)行時間不斷增大,二者差距愈加明顯。故可以得出update在小數(shù)據(jù)量的情況下SQL Server具有一定優(yōu)勢,但隨著數(shù)據(jù)增加,MongoDB的效能會慢慢超越,并且越來越明顯。

4 結(jié)束語

當(dāng)數(shù)據(jù)庫內(nèi)數(shù)據(jù)量較少時,insert方面,MongoDB具有優(yōu)勢,而update方面則是SQL Server具有優(yōu)勢,但由于數(shù)據(jù)量少,數(shù)據(jù)庫運(yùn)行時間較小,所以各自的優(yōu)勢均并不明顯。

隨著數(shù)據(jù)庫內(nèi)數(shù)據(jù)量的增加,MongoDB的優(yōu)勢越來越大,千萬數(shù)量級數(shù)據(jù)量情況下,MongoDB具顯著優(yōu)勢。

Update于60萬筆數(shù)據(jù)量左右,MongoDB開始反超SQL Server,且也是隨著數(shù)據(jù)量的增加,優(yōu)勢越來越明顯,在千萬數(shù)量級數(shù)據(jù)量基礎(chǔ)上,MongoDB具有顯著的優(yōu)勢。當(dāng)然,其臨界值并不一定,而是受實(shí)際外在環(huán)境的影響,如硬件環(huán)境等。本文僅探討2種數(shù)據(jù)庫的效能特點(diǎn),變化趨勢。

本文從數(shù)據(jù)庫數(shù)據(jù)介接所涉及的兩個基本操作insert以及update,驗(yàn)證非關(guān)系型數(shù)據(jù)庫較關(guān)系型數(shù)據(jù)之優(yōu)勢,且其優(yōu)勢會隨著數(shù)據(jù)量的增加而增大。

非關(guān)系型數(shù)據(jù)庫MongoDB,在介接數(shù)據(jù)的時候,其運(yùn)行時間并不會隨著數(shù)據(jù)量的增加而大幅增加,這個特性不同于關(guān)系型數(shù)據(jù)庫SQL Server。

公交動態(tài)信息系統(tǒng)之應(yīng)用層面上,介接公交數(shù)據(jù)中心之大量數(shù)據(jù)時,可使用非關(guān)系型數(shù)據(jù)庫,以達(dá)節(jié)省時間,提高系統(tǒng)效能的目的。

[1] CATTELL R.Scalable SQL and NoSQL data stores[J].SIGMOD Rec.,2011,(39):12-27.

[2] 曾守正.數(shù)據(jù)庫系統(tǒng)的回顧與未來研究發(fā)展[D].桃園:元智大學(xué),1996.ZENG Shouzheng.Review and research development of the database system[D].Taoyuan:Yuan Ze University,1996.(in Chinese)

[3] CODD E F.A relational model for large shared data banks[J].Communications of the ACM,1983(26):64-69.

[4] LITH A.MATTSSON J.Investigating storage solutions for large data:A comparison of well performing and scalable data storage solutions for real time extraction and batch insertion of data[D].G¨oteborg,Sweden:Chalmers University of Technology,2010.

[5] HUSOO A.SARMA J S,JAIN N,et al,Hive-a petabyte scale data warehouse using Hadoop[C].Proceedings of the 2010IEEE 26th International Conference on Data Engineering,Anchorage,Alaska:IEEE,2010:996-1005.

[6] QIU Zhi,LIN Zhaowen,MA Yan.Research of Hadoop-based data flow management system[J].Science Direct,2011(18):164-168.

[7] Kun Liua,Long-jiang Dong.Research on cloud data storage technology and its[J].Procedia Engineering,2012(29):133-137.

[8] 陳春旭,余明興,李建全,譯.數(shù)據(jù)庫系統(tǒng)概論[M].臺北:儒林,1986.CHEN Chunxu,YU Mingxing,LI Jianguan Trans-lated.Database system generality[M].Taipei:Scholars Books Co.,Ltd,1986.(in Chinese)

[9] 曾守正.數(shù)據(jù)庫系統(tǒng)之理論與實(shí)務(wù)[M].臺北:華泰,2007.ZENG Shouzheng.Database Systems Theory and Practice[M].Taipei:Hwa Tai Publishing Co.,Ltd,2007.(in Chinese)

[10] 李春雄.數(shù)據(jù)庫系統(tǒng)理論:使用 SQL Server 2008實(shí)作[M].臺北:全華,2012.LI Chunxiong.Database systems theory:the use of sql server 2008[M].Taipei:Chuan Hwa Book Co.,Ltd,2012.(in Chinese)

[11] 李紹綸.數(shù)據(jù)庫系統(tǒng)理論:使用 SQL Server 2012[M].臺北:上奇信息,2013.LI Shaolun.Database systems theory:the use of sql server 2012[M].Taipei:GrandTech Information Co.,Ltd.,2013.(in Chinese)

猜你喜歡
數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)量公交
一元公交開進(jìn)太行深處
基于大數(shù)據(jù)量的初至層析成像算法優(yōu)化
計(jì)算Lyapunov指數(shù)的模糊C均值聚類小數(shù)據(jù)量法
高刷新率不容易顯示器需求與接口標(biāo)準(zhǔn)帶寬
寬帶信號采集與大數(shù)據(jù)量傳輸系統(tǒng)設(shè)計(jì)與研究
電子制作(2019年13期)2020-01-14 03:15:18
等公交
數(shù)據(jù)庫系統(tǒng)shell腳本應(yīng)用
電子測試(2018年14期)2018-09-26 06:04:24
等公交
微細(xì)銑削工藝數(shù)據(jù)庫系統(tǒng)設(shè)計(jì)與開發(fā)
實(shí)時數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)安全采集方案
双城市| 阿克陶县| 滕州市| 星子县| 绥芬河市| 竹北市| 新宁县| 如东县| 平陆县| 屏山县| 铁力市| 金塔县| 松江区| 桐柏县| 呈贡县| 武威市| 长丰县| 汉川市| 常宁市| 郯城县| 宜阳县| 商洛市| 柳州市| 宜城市| 鄂伦春自治旗| 遂昌县| 疏勒县| 黄冈市| 松原市| 琼海市| 前郭尔| 金寨县| 晋宁县| 吉木乃县| 涟水县| 安乡县| 洛浦县| 应城市| 宁阳县| 逊克县| 南京市|