• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    面向氣象Web 應(yīng)用的數(shù)據(jù)庫(kù)訪問(wèn)性能優(yōu)化及應(yīng)用?

    2020-12-23 11:50:20楊立苑周雪瑩鄒海燕劉喆玥胡麗麗
    關(guān)鍵詞:數(shù)據(jù)表氣象動(dòng)態(tài)

    楊立苑 李 芬 周雪瑩 鄒海燕 劉喆玥 胡麗麗

    (江西省氣象信息中心 南昌 330096)

    1 引言

    近年來(lái),隨著互聯(lián)網(wǎng)技術(shù)的的快速發(fā)展,國(guó)家積極推進(jìn)“互聯(lián)網(wǎng)+”行動(dòng)[1],互聯(lián)網(wǎng)技術(shù)已經(jīng)成為包含氣象行業(yè)在內(nèi)各個(gè)行業(yè)提供服務(wù)的基石[2~4],其中Web 應(yīng)用是提供互聯(lián)網(wǎng)服務(wù)的重要手段。為了滿足氣象服務(wù)現(xiàn)代化的需要,各省氣象部門(mén)基于Web 應(yīng)用開(kāi)發(fā)框架建立了滿足各種氣象服務(wù)需求的Web應(yīng)用[5~7]。關(guān)系型數(shù)據(jù)庫(kù)是構(gòu)建Web應(yīng)用系統(tǒng)必不可少的一部分,氣象Web數(shù)據(jù)庫(kù)訪問(wèn)性能的高低嚴(yán)重影響著氣象Web應(yīng)用的服務(wù)質(zhì)量。

    目前,Web 應(yīng)用系統(tǒng)主要通過(guò)對(duì)象關(guān)系映射(Object Relational Mapping,ORM)技術(shù)訪問(wèn)數(shù)據(jù)庫(kù)[8],開(kāi)發(fā)人員使用的主流ORM 框架是基于靜態(tài)語(yǔ)言開(kāi)發(fā)的,例如Java 語(yǔ)言的Hibernate 框架[9]、C#語(yǔ)言的EF 框架[10]。在Web 應(yīng)用開(kāi)發(fā)中,ORM 技術(shù)能將面向?qū)ο蠼⒌膶?duì)象模型映射到關(guān)系型數(shù)據(jù)庫(kù)表結(jié)構(gòu),這樣開(kāi)發(fā)人員就不必再通過(guò)SQL語(yǔ)句去操作數(shù)據(jù)庫(kù),只需要操作對(duì)象實(shí)例便可以實(shí)現(xiàn)數(shù)據(jù)庫(kù)的增刪改查。

    造成這種挑戰(zhàn)的原因主要來(lái)自兩個(gè)方面。一是承載省級(jí)及以下氣象業(yè)務(wù)的服務(wù)器等基礎(chǔ)硬件設(shè)施陳舊,性能不高,二是數(shù)據(jù)表中站點(diǎn)數(shù)量多,隨著系統(tǒng)運(yùn)行時(shí)間的增長(zhǎng),數(shù)據(jù)表中數(shù)據(jù)記錄會(huì)爆炸性的增長(zhǎng),最終影響該表數(shù)據(jù)訪問(wèn)性能。例如,如果站點(diǎn)數(shù)是3000 個(gè),一年的小時(shí)數(shù)據(jù)記錄數(shù)可以達(dá)到2600 多萬(wàn)條。所以,本文主要研究的是如何在該特殊環(huán)境下去優(yōu)化氣象Web 數(shù)據(jù)庫(kù)中氣象類(lèi)數(shù)據(jù)表的ORM 訪問(wèn)性能,并且將其應(yīng)用到實(shí)際開(kāi)發(fā)應(yīng)用中。

    2 本文工作分析

    Web 數(shù)據(jù)庫(kù)訪問(wèn)性能的優(yōu)化一般是從服務(wù)器硬件性能、數(shù)據(jù)庫(kù)軟件、數(shù)據(jù)庫(kù)設(shè)計(jì)、ORM 框架性能、緩存等方面進(jìn)行[11~14]。服務(wù)器硬件性能不滿足業(yè)務(wù)需求以及增設(shè)緩存服務(wù)需要大量資金進(jìn)行升級(jí),這方面尤其在市縣級(jí)很難一時(shí)得到解決。數(shù)據(jù)庫(kù)軟件和ORM 框架技術(shù)成熟,在本文特殊環(huán)境下優(yōu)化帶來(lái)的效果不佳。

    本文優(yōu)化途徑是優(yōu)化數(shù)據(jù)庫(kù)表設(shè)計(jì),壓縮數(shù)據(jù)表中的記錄數(shù)。本文主要從兩個(gè)方面進(jìn)行數(shù)據(jù)表記錄數(shù)的壓縮,一是對(duì)數(shù)據(jù)表進(jìn)行分表操作,二是通過(guò)增加表屬性個(gè)數(shù)的方式減少同一時(shí)間段的數(shù)據(jù)記錄數(shù)。

    但是經(jīng)過(guò)優(yōu)化設(shè)計(jì)的數(shù)據(jù)表并不能很好地得到靜態(tài)語(yǔ)言O(shè)RM 框架的支持。這是因?yàn)閮?yōu)化后的數(shù)據(jù)表需要根據(jù)時(shí)次動(dòng)態(tài)的操作表屬性,使用原生的SQL語(yǔ)句可以通過(guò)字符串拼接的方式簡(jiǎn)單實(shí)現(xiàn),但使用面向?qū)ο蟮姆绞叫枰軌騽?dòng)態(tài)地改變賦值屬性。例如一段邏輯代碼的語(yǔ)義是給實(shí)例A的t時(shí)屬性賦值,那么在t+x 時(shí)該段邏輯代碼需要給A 的t+x時(shí)屬性賦值。在靜態(tài)語(yǔ)言程序中對(duì)類(lèi)實(shí)例中公共屬性的操作可以通過(guò)變量賦值的方式進(jìn)行操作,對(duì)類(lèi)實(shí)例中私有屬性的操作需要通過(guò)調(diào)用類(lèi)中定義的公共方法進(jìn)行操作。簡(jiǎn)單的變量賦值方式和調(diào)用公共方法方式都無(wú)法改變程序中操作類(lèi)實(shí)例的屬性對(duì)象,這需要采用復(fù)雜的反射技術(shù)才能實(shí)現(xiàn)。

    為了能夠更加快速簡(jiǎn)單地開(kāi)發(fā)氣象Web應(yīng)用,考慮到相比于國(guó)家級(jí),省級(jí)及以下氣象業(yè)務(wù)人員信息技術(shù)能力不強(qiáng)的現(xiàn)狀,本文基于動(dòng)態(tài)語(yǔ)言Python的Django ORM 框架實(shí)現(xiàn)了對(duì)優(yōu)化后數(shù)據(jù)表的訪問(wèn)方法,Python 語(yǔ)言可以非常容易的進(jìn)行動(dòng)態(tài)屬性賦值。最后將該方法應(yīng)用到實(shí)際Web應(yīng)用開(kāi)發(fā)中。

    3 訪問(wèn)性能優(yōu)化技術(shù)

    3.1 數(shù)據(jù)庫(kù)分表方法

    為了能夠動(dòng)態(tài)地增加分表的數(shù)量,減少分表產(chǎn)生的數(shù)據(jù)遷移量,本文使用一致性Hash 算法進(jìn)行分表操作。由于氣象類(lèi)數(shù)據(jù)中,時(shí)間屬性是用于數(shù)據(jù)檢索的重要指標(biāo),所以本文使用每條數(shù)據(jù)的時(shí)間戳作為Hash 函數(shù)的輸入。數(shù)據(jù)庫(kù)分表方法如圖1所示。一致性Hash 算法將Hash 函數(shù)的值空間構(gòu)成一個(gè)虛擬圓環(huán),值空間的取值范圍是[0,232-1]。本文將現(xiàn)有的表通過(guò)Hash 函數(shù)映射到虛擬圓環(huán)上。每條數(shù)據(jù)存儲(chǔ)的表取決于每條數(shù)據(jù)時(shí)間戳Hash值的大小。當(dāng)時(shí)間戳的Hash值大于某張表在Hash 環(huán)上的值,且該表的Hash 值離該條數(shù)據(jù)的Hash 值最近,那么該條數(shù)據(jù)存放在該表中。每次進(jìn)行數(shù)據(jù)的插入、更新、查詢也會(huì)根據(jù)時(shí)間戳判斷數(shù)據(jù)位于哪張表中。

    圖1 數(shù)據(jù)庫(kù)分表方法

    當(dāng)某張表中的數(shù)據(jù)記錄數(shù)超過(guò)了設(shè)定的閾值,那么該張表將會(huì)進(jìn)行分表。表中時(shí)間戳Hash 值大于新表Hash 值的數(shù)據(jù)將會(huì)遷移到新表中。其余表中的數(shù)據(jù)保持不變。為了不影響氣象數(shù)據(jù)服務(wù)的質(zhì)量,每次對(duì)所有表中記錄數(shù)的檢查以及分表的數(shù)據(jù)遷移操作都在凌晨一點(diǎn)執(zhí)行。由于氣象數(shù)據(jù)是時(shí)序,為了方便查詢,提高查詢效率,時(shí)間戳經(jīng)過(guò)Hash函數(shù)計(jì)算出的Hash值也會(huì)保持和輸入值一樣的大小順序,這樣時(shí)間相近的數(shù)據(jù)會(huì)盡量存放在一張表中。為了保證查詢數(shù)據(jù)的完整性,數(shù)據(jù)庫(kù)會(huì)有一張單獨(dú)的表來(lái)記錄每張分表存儲(chǔ)數(shù)據(jù)的最大和最小Hash值。

    3.2 表結(jié)構(gòu)設(shè)計(jì)方法

    如果要在保障氣象Web 數(shù)據(jù)庫(kù)某張表數(shù)據(jù)信息量不變的前提下,減少該表數(shù)據(jù)的記錄總數(shù),那么可以將時(shí)次屬性和氣象數(shù)據(jù)屬性的笛卡爾積作為數(shù)據(jù)庫(kù)表的屬性。例如,區(qū)域站小時(shí)降水表可以將每個(gè)時(shí)次降水量都作為表中一個(gè)屬性,將同一個(gè)站點(diǎn)一天24條小時(shí)降水?dāng)?shù)據(jù)壓縮至一條數(shù)據(jù)。

    FastEthernet0/1 128.2 128 19FWD 0 4096 cc00.1ca0.0001 128.2

    圖2 數(shù)據(jù)庫(kù)表優(yōu)化設(shè)計(jì)方法

    假設(shè)需要在數(shù)據(jù)庫(kù)中建表的對(duì)象屬性集合為S,對(duì)象的時(shí)間信息屬性和站點(diǎn)信息屬性集合為X,上一級(jí)時(shí)間單位包含當(dāng)前時(shí)間單位的集合為T(mén),設(shè)計(jì)的表中列屬性集合為C。數(shù)據(jù)庫(kù)表優(yōu)化設(shè)計(jì)方法如圖2 所示。集合X 中時(shí)間信息屬性主要是指該條數(shù)據(jù)的資料時(shí)間、資料更新時(shí)間等。如果當(dāng)前資料是小時(shí)數(shù)據(jù),那么資料時(shí)間單位是小時(shí),該資料的上一級(jí)時(shí)間單位是天,一天包含00 時(shí)t1、01 時(shí)t2在內(nèi)共24個(gè)時(shí)間屬性,這些時(shí)間屬性組成了集合T。集合X 中的時(shí)間屬性直接映射到集合C 中,時(shí)間單位上升一級(jí)。集合X 中的站點(diǎn)信息主要包括站點(diǎn)的站號(hào)、經(jīng)度、緯度等屬性,這些屬性可以直接映射到集合C 中。集合X 是集合S 的子集,集合S除去集合X 中的元素,剩下的元素是一系列氣象觀測(cè)要素屬性或者和氣象類(lèi)相關(guān)的要素屬性,例如到報(bào)情況。所有的要素屬性需要和集合T 中的所有屬性進(jìn)行笛卡爾積字符拼接,拼接的字符作為新的屬性映射到集合C 中。綜上所述,優(yōu)化后表的屬性集合C定義公式為C=X ∪((S-X)×T)。

    在數(shù)據(jù)庫(kù)表設(shè)計(jì)完成之后,需要對(duì)設(shè)計(jì)的數(shù)據(jù)庫(kù)表進(jìn)行范式檢查。范式檢查主要包括第一范式(1NF)、第二范式(2NF)、第三范式(3NF)這三類(lèi)范式檢查[15]。按照本文數(shù)據(jù)庫(kù)表設(shè)計(jì)方法定義的數(shù)據(jù)庫(kù)表每一列屬性沒(méi)有重復(fù)也沒(méi)有存儲(chǔ)多個(gè)值,設(shè)計(jì)的主鍵由資料時(shí)間和站號(hào)組成,該主鍵能夠唯一區(qū)分每一條數(shù)據(jù)記錄。但是數(shù)據(jù)表中站點(diǎn)屬性,如經(jīng)度、緯度、海拔高度可能出現(xiàn)在其他數(shù)據(jù)表中。所以本文設(shè)計(jì)的表符合數(shù)據(jù)庫(kù)設(shè)計(jì)第一范式和第二范式,可能會(huì)不符合第三范式。第三范式的主要作用是保障不會(huì)出現(xiàn)大量的數(shù)據(jù)冗余,這里存儲(chǔ)少量冗余經(jīng)度、緯度數(shù)據(jù)所占用的多余空間是可以接受的。并且如果這些冗余信息存儲(chǔ)在同一張表中,在進(jìn)行該表數(shù)據(jù)訪問(wèn)時(shí),就不必為獲取這些信息再進(jìn)行連表操作,這樣有助于提升數(shù)據(jù)檢索性能。

    3.3 基于Python動(dòng)態(tài)特性的ORM訪問(wèn)

    Django 是使用Python 語(yǔ)言編寫(xiě)的開(kāi)源Web 應(yīng)用開(kāi)發(fā)框架[16],Django 框架關(guān)注點(diǎn)集中在模型(Model)、模版(Template)、視圖(Views)這三個(gè)部分。其中Model 部分指的是數(shù)據(jù)存取層,處理與數(shù)據(jù)存取相關(guān)的所有事務(wù)。Django 允許用戶通過(guò)管理命令Manage migrate 進(jìn)行數(shù)據(jù)庫(kù)的遷移,該命令可以一次性幫助開(kāi)發(fā)人員創(chuàng)建Models 中定義的數(shù)據(jù)表。

    Web 應(yīng)用系統(tǒng)通過(guò)ORM 技術(shù)將軟件系統(tǒng)中的類(lèi)映射至對(duì)應(yīng)數(shù)據(jù)庫(kù)表,對(duì)數(shù)據(jù)庫(kù)表的操作主要是增(INSERT)、刪(DELETE)、改(UPDATE)、查(SELECT)這四種操作。首先是對(duì)數(shù)據(jù)庫(kù)分表的映射,本文采用開(kāi)源項(xiàng)目django-sharding 進(jìn)行分表映射,該項(xiàng)目允許用戶在執(zhí)行數(shù)據(jù)庫(kù)操作時(shí)動(dòng)態(tài)的選擇要操作的分表。其次是對(duì)數(shù)據(jù)表的面相對(duì)象操作。Python 能夠使ORM 進(jìn)行動(dòng)態(tài)操作的本質(zhì)在于可以通過(guò)字典“鍵-值對(duì)”中的鍵字符串進(jìn)行類(lèi)屬性值修改。為了能夠?qū)?duì)象實(shí)例進(jìn)行動(dòng)態(tài)屬性賦值,需要在對(duì)象的類(lèi)中定義一個(gè)動(dòng)態(tài)屬性賦值函數(shù),如下:

    def init_from_dict(self,init_dic):

    for k in init_dic:

    self.__dict__[k]=init_dic[k]

    其中init_dic 是字典數(shù)據(jù)結(jié)構(gòu),該字典每個(gè)元素的鍵是類(lèi)的屬性名,值是鍵對(duì)應(yīng)屬性的值。Python中定義的類(lèi)本質(zhì)也是一個(gè)字典,在這通過(guò)循環(huán)的方式對(duì)init_dic中包含的所有屬性進(jìn)行動(dòng)態(tài)的修改,這樣就不用去使用靜態(tài)語(yǔ)言中復(fù)雜的反射技術(shù)。

    在定義好映射類(lèi)的基礎(chǔ)上,開(kāi)發(fā)Web應(yīng)用時(shí)便可以在業(yè)務(wù)邏輯中進(jìn)行相關(guān)數(shù)據(jù)庫(kù)操作了。數(shù)據(jù)庫(kù)的動(dòng)態(tài)增操作首先要需要定義一個(gè)空字典,將所有需要更改的屬性及該屬性的值賦給字典,然后用自定義的方法init_from_dict進(jìn)行類(lèi)實(shí)例的初始化,最后通過(guò)Django ORM 的函數(shù)進(jìn)行數(shù)據(jù)庫(kù)表數(shù)據(jù)的批量增操作。數(shù)據(jù)庫(kù)的動(dòng)態(tài)查操作需要調(diào)用Django ORM 提供的Q 函數(shù),使用Q 函數(shù)只需要定義條件邏輯連接器和查詢條件即可進(jìn)行數(shù)據(jù)庫(kù)查詢,條件邏輯連接器支持與(AND)、或(OR)、非(~)邏輯,查詢條件也只需通過(guò)字典鍵值對(duì)的方式添加。數(shù)據(jù)庫(kù)的動(dòng)態(tài)刪操作是基于查操作,進(jìn)行查操作獲取返回的查詢結(jié)果對(duì)象后,只需調(diào)用delete 函數(shù)即可將該對(duì)象從數(shù)據(jù)庫(kù)中刪除。數(shù)據(jù)庫(kù)的動(dòng)態(tài)改操作類(lèi)似于數(shù)據(jù)庫(kù)的動(dòng)態(tài)增操作,但首先需要先通過(guò)查操作獲取需要更改的記錄對(duì)象,然后通過(guò)該對(duì)象的init_from_dict 函數(shù)進(jìn)行相關(guān)屬性值的修改,最后通過(guò)save 函數(shù)即可完成該條數(shù)據(jù)的修改。Django ORM動(dòng)態(tài)訪問(wèn)數(shù)據(jù)庫(kù)操作示例如表1所示。

    表1 Django ORM動(dòng)態(tài)訪問(wèn)數(shù)據(jù)庫(kù)操作示例

    4 優(yōu)化驗(yàn)證和業(yè)務(wù)應(yīng)用

    4.1 驗(yàn)證實(shí)驗(yàn)環(huán)境

    本文使用三臺(tái)虛擬機(jī)(VM)作為氣象Web數(shù)據(jù)庫(kù)訪問(wèn)性能優(yōu)化效果驗(yàn)證的實(shí)驗(yàn)環(huán)境。這三臺(tái)虛擬機(jī)部署在江西省氣象云平臺(tái)[17]當(dāng)中,具體的配置環(huán)境如表2所示。三臺(tái)虛擬機(jī)都使用CentOS 7.4作為操作系統(tǒng),其中一臺(tái)虛擬機(jī)部署數(shù)據(jù)庫(kù)MySQL 5.4,一臺(tái)虛擬機(jī)部署采用優(yōu)化技術(shù)的Django Web測(cè)試應(yīng)用,一臺(tái)虛擬機(jī)部署未采用優(yōu)化技術(shù)的Django Web 測(cè)試應(yīng)用。Django Web 測(cè)試應(yīng)用使用的Python 動(dòng)態(tài)語(yǔ)言運(yùn)行環(huán)境版本是Python 3.6。云平臺(tái)分配給部署MySQL 虛擬機(jī)的CPU 是4 核@2.1GHz,內(nèi)存大小是8GB;分配給部署Django Web測(cè)試應(yīng)用虛擬機(jī)的CPU 是2 核@2.1GHz,內(nèi)存大小是4GB。

    表2 驗(yàn)證實(shí)驗(yàn)環(huán)境虛擬機(jī)配置

    4.2 驗(yàn)證實(shí)驗(yàn)及分析

    實(shí)驗(yàn)首先需要向MySQL 數(shù)據(jù)庫(kù)注入氣象數(shù)據(jù),實(shí)驗(yàn)使用的數(shù)據(jù)是江西省2017 年全年所有區(qū)域站小時(shí)降水?dāng)?shù)據(jù),江西省區(qū)域站個(gè)數(shù)是2456個(gè)。為優(yōu)化后Django Web 測(cè)試應(yīng)用建立的數(shù)據(jù)庫(kù)表是按照本文提出的設(shè)計(jì)方法設(shè)計(jì)的,以日期和站號(hào)作為主鍵,24 個(gè)時(shí)次和小時(shí)降水量的笛卡爾積作為元素屬性。為優(yōu)化前Django Web 測(cè)試應(yīng)用建立的數(shù)據(jù)庫(kù)表是按照傳統(tǒng)氣象數(shù)據(jù)庫(kù)設(shè)計(jì)方式建立,以時(shí)次和站號(hào)作為主鍵,小時(shí)降水量作為屬性。然后用Django 技術(shù)開(kāi)發(fā)兩個(gè)簡(jiǎn)易的Web 測(cè)試應(yīng)用,測(cè)試應(yīng)用開(kāi)發(fā)完畢后部署到相應(yīng)的虛擬機(jī)中。最后,使用Web 測(cè)試應(yīng)用進(jìn)行數(shù)據(jù)庫(kù)讀寫(xiě)測(cè)試。

    進(jìn)行Web 測(cè)試應(yīng)用的數(shù)據(jù)庫(kù)讀寫(xiě)測(cè)試需要分6 次進(jìn)行。每次向數(shù)據(jù)庫(kù)中注入氣象數(shù)據(jù),使得數(shù)據(jù)表中的數(shù)據(jù)集時(shí)間跨度達(dá)到1周、1個(gè)月、3個(gè)月、6 個(gè)月、9 個(gè)月、12 個(gè)月。每次注入完數(shù)據(jù)后,分別測(cè)試Django Web 應(yīng)用的讀寫(xiě)操作。讀操作是連續(xù)進(jìn)行100 次查操作,隨機(jī)查詢某個(gè)站點(diǎn)某天某時(shí)次的降水量,統(tǒng)計(jì)完成100 次查操作的時(shí)間。寫(xiě)操作是連續(xù)進(jìn)行100次增操作,隨機(jī)插入2016年某個(gè)站點(diǎn)某天某時(shí)次的降水量,統(tǒng)計(jì)完成100 次增操作的時(shí)間。

    驗(yàn)證實(shí)驗(yàn)讀寫(xiě)測(cè)試結(jié)果如圖3、圖4 所示。在數(shù)據(jù)集時(shí)間跨度比較小情況下,采用本文所提出優(yōu)化技術(shù)開(kāi)發(fā)的Django Web測(cè)試應(yīng)用ORM 訪問(wèn)性能和傳統(tǒng)設(shè)計(jì)方法開(kāi)發(fā)的Web測(cè)試應(yīng)用ORM 訪問(wèn)性能差不多,ORM 讀測(cè)試的百次訪問(wèn)耗時(shí)都集中在9s 左右,ORM 寫(xiě)測(cè)試的百次訪問(wèn)耗時(shí)都集中在12s左右。但是,隨著數(shù)據(jù)集時(shí)間跨度的增加未采用優(yōu)化技術(shù)的應(yīng)用ORM 訪問(wèn)性能快速衰減,12 個(gè)月數(shù)據(jù)集的ORM讀測(cè)試的百次訪問(wèn)耗時(shí)達(dá)18s,12個(gè)月數(shù)據(jù)集的ORM 寫(xiě)測(cè)試的百次訪問(wèn)耗時(shí)達(dá)25s,而采用優(yōu)化技術(shù)的應(yīng)用ORM 訪問(wèn)性能總體保持平穩(wěn)不變。

    圖3 數(shù)據(jù)庫(kù)ORM讀測(cè)試結(jié)果

    圖4 數(shù)據(jù)庫(kù)ORM寫(xiě)測(cè)試結(jié)果

    4.3 氣象業(yè)務(wù)應(yīng)用

    本文將提出的氣象Web 數(shù)據(jù)庫(kù)數(shù)據(jù)小時(shí)表訪問(wèn)性能優(yōu)化方法應(yīng)用于江西省區(qū)域站數(shù)據(jù)直傳運(yùn)維保障系統(tǒng)。江西省區(qū)域站數(shù)據(jù)直傳運(yùn)維保障Web 系統(tǒng)采集入庫(kù)了每個(gè)時(shí)次全省區(qū)域站數(shù)據(jù)在每個(gè)傳輸環(huán)節(jié)的傳輸情況,包括CIMISS CTS[18]、省級(jí)區(qū)域站中心站、區(qū)域站報(bào)文來(lái)源、區(qū)域站電量供應(yīng)等環(huán)節(jié)。省、市、縣三級(jí)區(qū)域站數(shù)據(jù)傳輸業(yè)務(wù)運(yùn)維保障人員可以通過(guò)該系統(tǒng)查詢區(qū)域站每個(gè)時(shí)次每個(gè)傳輸環(huán)節(jié)是否正常。該系統(tǒng)也提供了對(duì)區(qū)域站數(shù)據(jù)傳輸情況的統(tǒng)計(jì)、分析、診斷。該系統(tǒng)分為數(shù)據(jù)存儲(chǔ)與訪問(wèn)層、業(yè)務(wù)邏輯層、數(shù)據(jù)展示層。

    本文將氣象Web 數(shù)據(jù)庫(kù)訪問(wèn)優(yōu)化技術(shù)應(yīng)用于數(shù)據(jù)存儲(chǔ)與訪問(wèn)層,設(shè)計(jì)實(shí)現(xiàn)了省級(jí)區(qū)域站數(shù)據(jù)直傳情況數(shù)據(jù)庫(kù),基于Django ORM 進(jìn)行數(shù)據(jù)庫(kù)的動(dòng)態(tài)訪問(wèn),并且向業(yè)務(wù)邏輯層提供數(shù)據(jù)訪問(wèn)接口。最后運(yùn)維人員可以通過(guò)Web 展示層進(jìn)行區(qū)域站數(shù)據(jù)直傳情況的查詢和故障診斷,圖5 是區(qū)域站數(shù)據(jù)直傳歷史情況查詢頁(yè)面示例。該運(yùn)維保障系統(tǒng)的實(shí)現(xiàn)基本上滿足了省、市、縣三級(jí)運(yùn)維保障人員對(duì)區(qū)域站數(shù)據(jù)直傳保障的需求,經(jīng)過(guò)優(yōu)化之后,系統(tǒng)查詢效率得到了一定的提升,提高了平常業(yè)務(wù)工作的效率,推動(dòng)了該運(yùn)維保障系統(tǒng)在江西省省、市、縣三級(jí)氣象部門(mén)的應(yīng)用。

    圖5 區(qū)域站數(shù)據(jù)直傳歷史情況查詢頁(yè)面

    5 結(jié)語(yǔ)

    本文設(shè)計(jì)了一種面向氣象Web 應(yīng)用的數(shù)據(jù)庫(kù)ORM 訪問(wèn)性能優(yōu)化方法,并且針對(duì)優(yōu)化后的數(shù)據(jù)庫(kù)基于Python 語(yǔ)言提供了ORM 框架下的動(dòng)態(tài)訪問(wèn)操作方法。實(shí)驗(yàn)結(jié)果表明該優(yōu)化方法是有效的,本文也將該方法應(yīng)用到江西省區(qū)域數(shù)據(jù)直傳保障系統(tǒng)開(kāi)發(fā)中。但是該方法面臨著在數(shù)據(jù)庫(kù)表屬性過(guò)多的情況下會(huì)明顯增加軟件開(kāi)發(fā)人員工作量的問(wèn)題,下一步的主要工作是研究如何進(jìn)行數(shù)據(jù)庫(kù)表和對(duì)象模型類(lèi)代碼的自動(dòng)化生成,提高Web應(yīng)用開(kāi)發(fā)人員工作效率。

    猜你喜歡
    數(shù)據(jù)表氣象動(dòng)態(tài)
    氣象
    國(guó)內(nèi)動(dòng)態(tài)
    氣象樹(shù)
    國(guó)內(nèi)動(dòng)態(tài)
    國(guó)內(nèi)動(dòng)態(tài)
    《內(nèi)蒙古氣象》征稿簡(jiǎn)則
    湖北省新冠肺炎疫情數(shù)據(jù)表
    黨員生活(2020年2期)2020-04-17 09:56:30
    動(dòng)態(tài)
    基于列控工程數(shù)據(jù)表建立線路拓?fù)潢P(guān)系的研究
    大國(guó)氣象
    九九爱精品视频在线观看| 在线播放无遮挡| 色5月婷婷丁香| 麻豆久久精品国产亚洲av| 久久久久精品久久久久真实原创| 在线观看美女被高潮喷水网站| 大香蕉97超碰在线| 亚洲久久久久久中文字幕| 午夜视频国产福利| 三级国产精品欧美在线观看| 国产男人的电影天堂91| 欧美色视频一区免费| 精品人妻一区二区三区麻豆| 三级经典国产精品| 少妇被粗大猛烈的视频| av视频在线观看入口| 国产亚洲一区二区精品| 国产免费男女视频| 国产午夜福利久久久久久| 人妻夜夜爽99麻豆av| 国产69精品久久久久777片| 热99re8久久精品国产| 久久久久久久久久久丰满| 欧美日本视频| 九草在线视频观看| 欧美区成人在线视频| 在线观看av片永久免费下载| 久久99精品国语久久久| 久久婷婷人人爽人人干人人爱| 精品久久国产蜜桃| 91久久精品国产一区二区成人| 99久国产av精品国产电影| 99热这里只有是精品在线观看| 高清在线视频一区二区三区 | 久久久久国产网址| 日本-黄色视频高清免费观看| 2022亚洲国产成人精品| 婷婷六月久久综合丁香| 国产亚洲午夜精品一区二区久久 | 午夜福利在线观看免费完整高清在| 亚洲精品,欧美精品| 最近最新中文字幕免费大全7| 99在线人妻在线中文字幕| 国产黄色小视频在线观看| 亚洲高清免费不卡视频| 一区二区三区乱码不卡18| 成人性生交大片免费视频hd| 韩国高清视频一区二区三区| 蜜桃久久精品国产亚洲av| 中文字幕人妻熟人妻熟丝袜美| 可以在线观看毛片的网站| 欧美日韩国产亚洲二区| 国产黄片美女视频| 国产免费一级a男人的天堂| 国产精品无大码| 国产精品一及| 99在线人妻在线中文字幕| 美女内射精品一级片tv| 精品久久久噜噜| 精品一区二区三区人妻视频| 色综合站精品国产| 免费在线观看成人毛片| 亚洲欧美日韩东京热| 亚洲精品日韩av片在线观看| 日本爱情动作片www.在线观看| 亚洲欧美中文字幕日韩二区| 久久精品国产鲁丝片午夜精品| 日韩一区二区视频免费看| 亚洲无线观看免费| 精品国产露脸久久av麻豆 | 网址你懂的国产日韩在线| 久久久久久九九精品二区国产| 亚洲精品日韩av片在线观看| 亚州av有码| 听说在线观看完整版免费高清| 91在线精品国自产拍蜜月| 午夜老司机福利剧场| 亚洲欧美中文字幕日韩二区| 精品久久久久久成人av| 久久这里有精品视频免费| 伦理电影大哥的女人| 边亲边吃奶的免费视频| 少妇被粗大猛烈的视频| 国产精品日韩av在线免费观看| 日韩av在线大香蕉| 精品欧美国产一区二区三| 成人亚洲精品av一区二区| 伦理电影大哥的女人| 菩萨蛮人人尽说江南好唐韦庄 | 国产探花极品一区二区| 亚洲国产精品专区欧美| 国产精品熟女久久久久浪| 亚洲三级黄色毛片| 亚洲成人精品中文字幕电影| 欧美成人一区二区免费高清观看| 啦啦啦观看免费观看视频高清| 国产精品综合久久久久久久免费| 亚洲欧洲日产国产| 亚洲av不卡在线观看| 亚洲国产精品合色在线| 亚洲精品乱久久久久久| 在线免费观看不下载黄p国产| 亚洲国产日韩欧美精品在线观看| 日韩精品有码人妻一区| 1024手机看黄色片| 18+在线观看网站| 婷婷色麻豆天堂久久 | 日本欧美国产在线视频| 青春草视频在线免费观看| 日韩av不卡免费在线播放| 噜噜噜噜噜久久久久久91| 婷婷色av中文字幕| 高清午夜精品一区二区三区| 国产男人的电影天堂91| 韩国av在线不卡| 国产成人一区二区在线| 久久久久久久久大av| 好男人在线观看高清免费视频| 免费观看精品视频网站| 国产三级在线视频| 国产免费视频播放在线视频 | .国产精品久久| 日韩大片免费观看网站 | 九九在线视频观看精品| 天堂√8在线中文| 少妇熟女欧美另类| 国产黄片美女视频| 97在线视频观看| 麻豆av噜噜一区二区三区| 日韩,欧美,国产一区二区三区 | 久久精品熟女亚洲av麻豆精品 | 在线观看一区二区三区| 欧美性感艳星| 麻豆精品久久久久久蜜桃| 亚洲三级黄色毛片| 欧美不卡视频在线免费观看| 午夜日本视频在线| 国产成人免费观看mmmm| 午夜亚洲福利在线播放| 1024手机看黄色片| 国产亚洲av片在线观看秒播厂 | 99热精品在线国产| 熟女电影av网| 精华霜和精华液先用哪个| or卡值多少钱| 人妻少妇偷人精品九色| 久久久久久久亚洲中文字幕| 看片在线看免费视频| 国产精品久久久久久久电影| 午夜a级毛片| 青青草视频在线视频观看| 亚洲成人久久爱视频| 久久人妻av系列| 人妻制服诱惑在线中文字幕| 亚洲精品自拍成人| 日韩三级伦理在线观看| 久久韩国三级中文字幕| 成人鲁丝片一二三区免费| 可以在线观看毛片的网站| 高清午夜精品一区二区三区| 久久精品久久久久久噜噜老黄 | 国产成人一区二区在线| 亚洲精品亚洲一区二区| 丰满人妻一区二区三区视频av| 亚洲精品国产成人久久av| 一级毛片我不卡| 亚洲欧美精品综合久久99| 麻豆一二三区av精品| 亚洲中文字幕日韩| 久久久成人免费电影| 国产黄色小视频在线观看| 建设人人有责人人尽责人人享有的 | 能在线免费看毛片的网站| 亚洲精品456在线播放app| av在线亚洲专区| 热99在线观看视频| 三级毛片av免费| 岛国毛片在线播放| 床上黄色一级片| 国产精品久久久久久久久免| 我的老师免费观看完整版| 18禁在线播放成人免费| 又爽又黄a免费视频| 天天躁夜夜躁狠狠久久av| 黑人高潮一二区| 欧美成人一区二区免费高清观看| 99久国产av精品| 在线a可以看的网站| 九色成人免费人妻av| 在线免费观看不下载黄p国产| 精品99又大又爽又粗少妇毛片| 成人午夜高清在线视频| 国产亚洲精品久久久com| 内地一区二区视频在线| 免费看光身美女| 欧美日韩在线观看h| 亚洲欧洲日产国产| 亚洲av电影在线观看一区二区三区 | 午夜老司机福利剧场| 久久精品国产鲁丝片午夜精品| 国产白丝娇喘喷水9色精品| 男女下面进入的视频免费午夜| 最近中文字幕高清免费大全6| 久热久热在线精品观看| 老司机影院毛片| 男女国产视频网站| 直男gayav资源| 91午夜精品亚洲一区二区三区| 一区二区三区四区激情视频| 91精品一卡2卡3卡4卡| 在线观看一区二区三区| 久久精品久久久久久久性| 国产老妇女一区| 亚洲精品国产成人久久av| 亚洲国产精品国产精品| 2021天堂中文幕一二区在线观| 美女内射精品一级片tv| 中国美白少妇内射xxxbb| 国产私拍福利视频在线观看| 在线免费观看不下载黄p国产| 国产精品电影一区二区三区| 男插女下体视频免费在线播放| 干丝袜人妻中文字幕| 91狼人影院| 波多野结衣高清无吗| 欧美性猛交╳xxx乱大交人| 天天躁日日操中文字幕| 国国产精品蜜臀av免费| av国产久精品久网站免费入址| 蜜桃久久精品国产亚洲av| 亚洲,欧美,日韩| 国产 一区精品| 久久99热这里只频精品6学生 | 久久久久久久久中文| 成人毛片a级毛片在线播放| 日韩欧美三级三区| 久久久久九九精品影院| videos熟女内射| 国产精品.久久久| 国产伦精品一区二区三区视频9| 国语对白做爰xxxⅹ性视频网站| 日本一本二区三区精品| 精品一区二区三区人妻视频| 菩萨蛮人人尽说江南好唐韦庄 | 久久久久久久午夜电影| 极品教师在线视频| 全区人妻精品视频| 久久精品综合一区二区三区| 久热久热在线精品观看| 亚洲第一区二区三区不卡| 欧美一区二区国产精品久久精品| 女人被狂操c到高潮| 少妇高潮的动态图| 亚洲av男天堂| 水蜜桃什么品种好| 亚洲色图av天堂| 成年女人永久免费观看视频| 亚洲av不卡在线观看| 在线a可以看的网站| 美女黄网站色视频| 国产美女午夜福利| 久久久久国产网址| 长腿黑丝高跟| 国产精品一二三区在线看| 国产黄片美女视频| 97超视频在线观看视频| 日韩亚洲欧美综合| 国产探花极品一区二区| 爱豆传媒免费全集在线观看| 午夜爱爱视频在线播放| 亚洲最大成人中文| 免费av毛片视频| 99在线视频只有这里精品首页| 亚洲精华国产精华液的使用体验| 国产伦精品一区二区三区视频9| 精品欧美国产一区二区三| 高清视频免费观看一区二区 | 久久久久久久久大av| 国产精品精品国产色婷婷| 亚洲av免费在线观看| 99久国产av精品国产电影| 亚洲人成网站在线观看播放| 日本与韩国留学比较| 久久韩国三级中文字幕| 久久久a久久爽久久v久久| 日韩欧美 国产精品| 一个人免费在线观看电影| 欧美成人午夜免费资源| 插逼视频在线观看| 久久人人爽人人爽人人片va| 能在线免费观看的黄片| 中国美白少妇内射xxxbb| 成人国产麻豆网| 国产精品熟女久久久久浪| 中文资源天堂在线| av免费观看日本| 97热精品久久久久久| 一级毛片aaaaaa免费看小| 村上凉子中文字幕在线| 成人午夜高清在线视频| 国产综合懂色| 亚洲激情五月婷婷啪啪| 69人妻影院| av在线老鸭窝| 观看免费一级毛片| 日韩国内少妇激情av| 国产成人免费观看mmmm| 秋霞在线观看毛片| 欧美激情久久久久久爽电影| 最近最新中文字幕免费大全7| 亚洲欧美一区二区三区国产| 伊人久久精品亚洲午夜| 我的女老师完整版在线观看| 国产美女午夜福利| 国产探花极品一区二区| 色吧在线观看| 中文字幕精品亚洲无线码一区| 亚洲,欧美,日韩| 亚洲综合色惰| 三级毛片av免费| 国产精品.久久久| АⅤ资源中文在线天堂| 国产精品久久久久久久久免| 美女脱内裤让男人舔精品视频| 国产一区二区亚洲精品在线观看| 亚洲欧美精品综合久久99| 欧美日韩综合久久久久久| 国产国拍精品亚洲av在线观看| 成人鲁丝片一二三区免费| 精品不卡国产一区二区三区| 久久久久久久午夜电影| 女的被弄到高潮叫床怎么办| 日本黄色视频三级网站网址| 日韩强制内射视频| 欧美成人午夜免费资源| 国产精品综合久久久久久久免费| 精品免费久久久久久久清纯| 国产一区有黄有色的免费视频 | 欧美日本视频| 久久婷婷人人爽人人干人人爱| 能在线免费观看的黄片| 黄色配什么色好看| 又粗又硬又长又爽又黄的视频| 久久精品久久久久久久性| 最近中文字幕2019免费版| 一级毛片电影观看 | 亚洲国产高清在线一区二区三| or卡值多少钱| 国产在视频线在精品| 欧美日本亚洲视频在线播放| 春色校园在线视频观看| 91精品一卡2卡3卡4卡| 亚洲av免费在线观看| 美女高潮的动态| 精品熟女少妇av免费看| 美女xxoo啪啪120秒动态图| 中文在线观看免费www的网站| 亚洲精品久久久久久婷婷小说 | 国产探花在线观看一区二区| 自拍偷自拍亚洲精品老妇| 好男人视频免费观看在线| 麻豆一二三区av精品| 亚洲美女视频黄频| 久久精品夜色国产| 国产黄片美女视频| 自拍偷自拍亚洲精品老妇| 观看美女的网站| 成人美女网站在线观看视频| av免费观看日本| 嫩草影院入口| 3wmmmm亚洲av在线观看| 秋霞在线观看毛片| 成年女人看的毛片在线观看| 我要搜黄色片| 亚洲丝袜综合中文字幕| 我的女老师完整版在线观看| 国产91av在线免费观看| 黄片无遮挡物在线观看| 国产精品一区www在线观看| 国产精品1区2区在线观看.| 国产黄片视频在线免费观看| kizo精华| av又黄又爽大尺度在线免费看 | 久久精品国产鲁丝片午夜精品| 大话2 男鬼变身卡| av在线天堂中文字幕| 国产在线一区二区三区精 | 看非洲黑人一级黄片| 禁无遮挡网站| 精品少妇黑人巨大在线播放 | 啦啦啦观看免费观看视频高清| 久久精品久久久久久噜噜老黄 | 亚洲精品亚洲一区二区| 好男人视频免费观看在线| 亚洲欧美成人精品一区二区| 日韩大片免费观看网站 | 日日摸夜夜添夜夜爱| 观看免费一级毛片| 成人三级黄色视频| 国产精品熟女久久久久浪| 亚洲国产精品合色在线| 色综合站精品国产| videos熟女内射| 日本色播在线视频| 亚洲国产精品成人久久小说| 免费av不卡在线播放| 日韩成人av中文字幕在线观看| 成人美女网站在线观看视频| 色噜噜av男人的天堂激情| 非洲黑人性xxxx精品又粗又长| 一级黄色大片毛片| 偷拍熟女少妇极品色| 国产淫语在线视频| 精品久久久久久电影网 | 亚洲精品自拍成人| 男人的好看免费观看在线视频| 久久精品国产亚洲av涩爱| 国产成人精品婷婷| 99久久成人亚洲精品观看| 亚洲自拍偷在线| 乱系列少妇在线播放| 国产一级毛片七仙女欲春2| 亚洲国产精品成人综合色| 国产又色又爽无遮挡免| 日韩欧美三级三区| 亚洲人成网站在线播| 日本五十路高清| 1024手机看黄色片| 国产老妇女一区| 欧美zozozo另类| 国产精品不卡视频一区二区| 天堂√8在线中文| 免费看美女性在线毛片视频| 国产日韩欧美在线精品| 日韩制服骚丝袜av| 欧美极品一区二区三区四区| 欧美三级亚洲精品| 国产亚洲5aaaaa淫片| 男插女下体视频免费在线播放| 小说图片视频综合网站| 亚洲aⅴ乱码一区二区在线播放| 91狼人影院| 国产成人免费观看mmmm| 久久久久久久久久黄片| 美女xxoo啪啪120秒动态图| 亚洲av中文字字幕乱码综合| 亚洲欧洲国产日韩| 蜜桃亚洲精品一区二区三区| 2021天堂中文幕一二区在线观| 国产淫片久久久久久久久| 国产黄片美女视频| 亚洲av福利一区| 亚洲精品一区蜜桃| 一个人看的www免费观看视频| 久久精品久久久久久久性| 国产午夜精品一二区理论片| 精华霜和精华液先用哪个| 午夜福利视频1000在线观看| 亚洲欧美成人精品一区二区| 亚洲欧美精品专区久久| 国产精品久久久久久av不卡| 亚洲丝袜综合中文字幕| 欧美日韩精品成人综合77777| 99在线视频只有这里精品首页| 国产精品乱码一区二三区的特点| 亚洲av男天堂| 桃色一区二区三区在线观看| 成年女人看的毛片在线观看| 青青草视频在线视频观看| 亚洲av不卡在线观看| 亚洲电影在线观看av| 亚洲av一区综合| 一级爰片在线观看| 国产午夜精品久久久久久一区二区三区| 一区二区三区乱码不卡18| 欧美日本视频| 国产精品,欧美在线| 成人鲁丝片一二三区免费| 精品国产一区二区三区久久久樱花 | 哪个播放器可以免费观看大片| 久久国内精品自在自线图片| 黄色配什么色好看| 久久人人爽人人爽人人片va| 麻豆精品久久久久久蜜桃| 永久网站在线| 69人妻影院| 国产 一区 欧美 日韩| 久久国产乱子免费精品| a级毛色黄片| 日日啪夜夜撸| 国产中年淑女户外野战色| 国产免费福利视频在线观看| 午夜福利在线观看吧| 国产精品一区二区三区四区免费观看| 99九九线精品视频在线观看视频| 成人一区二区视频在线观看| 亚洲综合色惰| 日本三级黄在线观看| 神马国产精品三级电影在线观看| av国产久精品久网站免费入址| 久久这里有精品视频免费| 久久99热这里只有精品18| 国产精品国产三级国产专区5o | 偷拍熟女少妇极品色| 99热这里只有是精品50| 久久精品国产自在天天线| 午夜激情欧美在线| 国产午夜福利久久久久久| 丝袜美腿在线中文| 在线播放无遮挡| 国产国拍精品亚洲av在线观看| 欧美成人午夜免费资源| 亚洲乱码一区二区免费版| 精品欧美国产一区二区三| 女人久久www免费人成看片 | 欧美一级a爱片免费观看看| 国产不卡一卡二| 国产乱来视频区| 国产成人精品久久久久久| 欧美xxxx黑人xx丫x性爽| 欧美日本视频| 成年女人永久免费观看视频| 天堂影院成人在线观看| 国产午夜精品久久久久久一区二区三区| 亚洲国产精品成人久久小说| 国产高清不卡午夜福利| 视频中文字幕在线观看| 国产亚洲精品av在线| 激情 狠狠 欧美| 亚洲性久久影院| 国产亚洲最大av| 日韩欧美在线乱码| 日韩三级伦理在线观看| 高清毛片免费看| 五月伊人婷婷丁香| 美女高潮的动态| 久久久午夜欧美精品| 在现免费观看毛片| 精品不卡国产一区二区三区| 成人漫画全彩无遮挡| 99热精品在线国产| 亚洲综合色惰| 国产精品永久免费网站| 麻豆久久精品国产亚洲av| 69人妻影院| 特级一级黄色大片| or卡值多少钱| 小蜜桃在线观看免费完整版高清| 在线免费观看的www视频| 亚洲不卡免费看| 哪个播放器可以免费观看大片| 国产乱来视频区| 日日啪夜夜撸| 非洲黑人性xxxx精品又粗又长| 精品一区二区三区人妻视频| 日韩高清综合在线| 在线观看66精品国产| 99久久无色码亚洲精品果冻| 内射极品少妇av片p| 亚洲av电影在线观看一区二区三区 | 国产毛片a区久久久久| 少妇裸体淫交视频免费看高清| 国产精品人妻久久久久久| 欧美一区二区国产精品久久精品| 成人综合一区亚洲| 免费电影在线观看免费观看| 日韩欧美国产在线观看| 亚洲怡红院男人天堂| 亚洲精品乱码久久久v下载方式| 3wmmmm亚洲av在线观看| 欧美成人免费av一区二区三区| 亚洲乱码一区二区免费版| 久久99热6这里只有精品| 国产极品天堂在线| 久久人人爽人人片av| 午夜福利在线在线| 久久久久性生活片| 男人舔奶头视频| 免费在线观看成人毛片| 亚洲精品自拍成人| 一级黄片播放器| 国产极品天堂在线| 桃色一区二区三区在线观看| 国产精品福利在线免费观看| 女人被狂操c到高潮| 国产午夜精品久久久久久一区二区三区| 国产精品一二三区在线看| 亚洲真实伦在线观看| 久久精品国产亚洲网站| 午夜日本视频在线| 国产精品一二三区在线看| 亚洲自拍偷在线| 成人鲁丝片一二三区免费| 久久国产乱子免费精品| 午夜福利成人在线免费观看| 精品国产三级普通话版| 直男gayav资源| 亚洲av男天堂| 精品久久久噜噜| 久久久久久国产a免费观看| 国产成人午夜福利电影在线观看| 久久久久久大精品| 欧美日本视频| 搡老妇女老女人老熟妇| 久久久久久久久久久免费av| 国模一区二区三区四区视频| 欧美日韩一区二区视频在线观看视频在线 | 一个人观看的视频www高清免费观看| 三级经典国产精品| 一个人观看的视频www高清免费观看| 色网站视频免费| 麻豆成人午夜福利视频| 国产精品无大码| 久热久热在线精品观看| 亚洲成人中文字幕在线播放|