欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法與系統(tǒng)的制作方法

文檔序號(hào):10594163閱讀:479來(lái)源:國(guó)知局
多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法與系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明提供一種多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法與系統(tǒng),將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體以及采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián),分別獲得第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,將采測(cè)點(diǎn)采集到的數(shù)據(jù)初始存儲(chǔ)至內(nèi)存,將第一數(shù)據(jù)表字典中數(shù)據(jù)實(shí)體隊(duì)列長(zhǎng)度大于預(yù)設(shè)閾值的采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)至本地硬盤(pán),當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),根據(jù)第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,確定各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置,提取各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,并將提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)。整個(gè)過(guò)程中,利用內(nèi)存和本地硬盤(pán)空間讀寫(xiě)數(shù)據(jù)快于數(shù)據(jù)庫(kù)讀寫(xiě),通過(guò)空間換時(shí)間,實(shí)現(xiàn)多采測(cè)點(diǎn)的大量數(shù)據(jù)高效存儲(chǔ)至數(shù)據(jù)庫(kù)。
【專(zhuān)利說(shuō)明】
多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法與系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及數(shù)據(jù)存儲(chǔ)技術(shù)領(lǐng)域,特別是涉及多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法與系統(tǒng)。
【背景技術(shù)】
[0002]在生產(chǎn)生活中,很多情況下需要大量采測(cè)點(diǎn)來(lái)采集所需數(shù)據(jù),例如采集一定區(qū)域范圍內(nèi)溫度數(shù)據(jù)、采集某一行政區(qū)域內(nèi)降雨量數(shù)據(jù)以及采集某一塊試驗(yàn)田地所有試驗(yàn)物種生長(zhǎng)狀況數(shù)據(jù)等。
[0003]目前,對(duì)于多采測(cè)點(diǎn)數(shù)據(jù)采集與分析的研究主要在數(shù)據(jù)準(zhǔn)確采集和分析兩個(gè)方面,針對(duì)采測(cè)點(diǎn)數(shù)據(jù)存儲(chǔ)相關(guān)研究相對(duì)較少。
[0004]現(xiàn)有的主流商業(yè)數(shù)據(jù)庫(kù)的數(shù)據(jù)寫(xiě)入時(shí)效率低,在采測(cè)點(diǎn)多和采集精度高的應(yīng)用場(chǎng)景時(shí),使用關(guān)系型數(shù)據(jù)庫(kù)服務(wù)器,采用的方式是定時(shí)從采集設(shè)備中讀取數(shù)據(jù)同時(shí)往數(shù)據(jù)庫(kù)中寫(xiě)入,無(wú)法實(shí)現(xiàn)在多采測(cè)點(diǎn)做到秒級(jí)存儲(chǔ)。

【發(fā)明內(nèi)容】

[0005]基于此,有必要針對(duì)現(xiàn)有多采測(cè)點(diǎn)數(shù)據(jù)存儲(chǔ)方法存儲(chǔ)效率低下的問(wèn)題,提供一種存儲(chǔ)效率高的多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法與系統(tǒng)。
[0006]—種多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法,包括步驟:
[0007]將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),獲得第一數(shù)據(jù)表字典;
[0008]將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián),獲得第二數(shù)據(jù)表字典,其中,采測(cè)點(diǎn)時(shí)間屬性包括內(nèi)存最早時(shí)間、內(nèi)存最新時(shí)間、本地硬盤(pán)最早時(shí)間、本地硬盤(pán)最新時(shí)間以及數(shù)據(jù)庫(kù)最新時(shí)間;
[0009]將采測(cè)點(diǎn)采集到的數(shù)據(jù)初始存儲(chǔ)至內(nèi)存,更新第二數(shù)據(jù)表字典;
[0010]實(shí)時(shí)更新第一數(shù)據(jù)表字典,將第一數(shù)據(jù)表字典中數(shù)據(jù)實(shí)體隊(duì)列長(zhǎng)度大于預(yù)設(shè)閾值的采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)至本地硬盤(pán),并更新第二數(shù)據(jù)表字典;
[0011]檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載,當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),根據(jù)第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,確定各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置;
[0012]從確定的存放位置中提取各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,并將提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)。
[0013]—種多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)系統(tǒng),包括:
[0014]第一關(guān)聯(lián)模塊,用于將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),獲得第一數(shù)據(jù)表字典;
[0015]第二關(guān)聯(lián)模塊,用于將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián),獲得第二數(shù)據(jù)表字典,其中,采測(cè)點(diǎn)時(shí)間屬性包括內(nèi)存最早時(shí)間、內(nèi)存最新時(shí)間、本地硬盤(pán)最早時(shí)間、本地硬盤(pán)最新時(shí)間以及數(shù)據(jù)庫(kù)最新時(shí)間;
[0016]初始存儲(chǔ)模塊,用于將采測(cè)點(diǎn)采集到的數(shù)據(jù)初始存儲(chǔ)至內(nèi)存,更新第二數(shù)據(jù)表字血.Z N I
[0017]更新存儲(chǔ)模塊,用于實(shí)時(shí)更新第一數(shù)據(jù)表字典,將第一數(shù)據(jù)表字典中數(shù)據(jù)實(shí)體隊(duì)列長(zhǎng)度大于預(yù)設(shè)閾值的采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)至本地硬盤(pán),并更新第二數(shù)據(jù)表字典;
[0018]位置確定模塊,用于檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載,當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),根據(jù)第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,確定各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置;
[0019]數(shù)據(jù)庫(kù)存儲(chǔ)模塊,用于從確定的存放位置中提取各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,并將提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)。
[0020]本發(fā)明多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法與系統(tǒng),將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體以及采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián),分別獲得第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,將采測(cè)點(diǎn)采集到的數(shù)據(jù)初始存儲(chǔ)至內(nèi)存,將第一數(shù)據(jù)表字典中數(shù)據(jù)實(shí)體隊(duì)列長(zhǎng)度大于預(yù)設(shè)閾值的采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)至本地硬盤(pán),當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),根據(jù)第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,確定各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置,提取各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,并將提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)。整個(gè)過(guò)程中,采用多次數(shù)據(jù)關(guān)聯(lián)與判斷,并結(jié)合數(shù)據(jù)庫(kù)服務(wù)器負(fù)載實(shí)際情況,確定采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存和/或?yàn)楸镜赜脖P(pán),利用內(nèi)存和本地硬盤(pán)空間讀寫(xiě)數(shù)據(jù)快于數(shù)據(jù)庫(kù)讀寫(xiě),通過(guò)空間換時(shí)間,實(shí)現(xiàn)多采測(cè)點(diǎn)的大量數(shù)據(jù)高效存儲(chǔ)至數(shù)據(jù)庫(kù)。
【附圖說(shuō)明】
[0021 ]圖1為本發(fā)明多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法第一個(gè)實(shí)施例的流程示意圖;
[0022]圖2為本發(fā)明多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法第二個(gè)實(shí)施例的流程示意圖;
[0023]圖3為本發(fā)明多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)系統(tǒng)第一個(gè)實(shí)施例的結(jié)構(gòu)示意圖;
[0024]圖4為本發(fā)明多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)系統(tǒng)第二個(gè)實(shí)施例的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0025]如圖1所示,一種多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法,包括步驟:
[0026]S100:將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),獲得第一數(shù)據(jù)表字典。
[0027]采測(cè)點(diǎn)ID是指預(yù)設(shè)給對(duì)多個(gè)采測(cè)點(diǎn)進(jìn)行編號(hào)的ID號(hào)碼。采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),在實(shí)際的編程過(guò)程中可以通過(guò)為每一個(gè)采測(cè)點(diǎn)建立一個(gè)key-value鍵值來(lái)實(shí)現(xiàn),關(guān)聯(lián)之后獲得第一數(shù)據(jù)表字典。在第一數(shù)據(jù)表字典中詳細(xì)記錄每個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,由于采測(cè)點(diǎn)ID和采測(cè)點(diǎn)數(shù)據(jù)實(shí)體已經(jīng)關(guān)聯(lián),基于采測(cè)點(diǎn)ID即可查找到對(duì)應(yīng)的采測(cè)點(diǎn)數(shù)據(jù)實(shí)體。采測(cè)點(diǎn)數(shù)據(jù)實(shí)體可以通過(guò)對(duì)數(shù)據(jù)進(jìn)行字段設(shè)置獲得,字段設(shè)置主要包括字段描述(datatime)、采集時(shí)間(val)以及數(shù)據(jù)質(zhì)量(q)三個(gè)方面。更具體來(lái)說(shuō),采測(cè)點(diǎn)數(shù)據(jù)實(shí)體是一個(gè)帶時(shí)序的數(shù)據(jù)隊(duì)列,例(^丨61:;[11161、¥311、91 ;datetime2、val2、q2...等。
[0028]S200:將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián),獲得第二數(shù)據(jù)表字典,其中,采測(cè)點(diǎn)時(shí)間屬性包括內(nèi)存最早時(shí)間、內(nèi)存最新時(shí)間、本地硬盤(pán)最早時(shí)間、本地硬盤(pán)最新時(shí)間以及數(shù)據(jù)庫(kù)最新時(shí)間。
[0029]內(nèi)存最早時(shí)間是指采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)于數(shù)據(jù)庫(kù)服務(wù)器內(nèi)存最早時(shí)間,內(nèi)存最新時(shí)間是指采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)于數(shù)據(jù)庫(kù)服務(wù)器內(nèi)存最新時(shí)序,本地硬盤(pán)最早時(shí)間是指采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)于數(shù)據(jù)庫(kù)服務(wù)器本地硬盤(pán)最早時(shí)間,本地硬盤(pán)最新時(shí)間是指采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)于數(shù)據(jù)庫(kù)服務(wù)器本地硬盤(pán)最新時(shí)序,數(shù)據(jù)庫(kù)最新時(shí)間是指采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)于數(shù)據(jù)庫(kù)服務(wù)器數(shù)據(jù)庫(kù)最新時(shí)間。在第二數(shù)據(jù)表字典中,記錄采測(cè)點(diǎn)ID和采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián)的數(shù)據(jù),基于第二數(shù)據(jù)表字典,通過(guò)采測(cè)點(diǎn)ID即可詳細(xì)了解該采測(cè)點(diǎn)時(shí)間屬性。步驟SlOO中已將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),本步驟S200中將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)的采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián),即在后續(xù)操作中,可以通過(guò)采測(cè)點(diǎn)ID準(zhǔn)確查找到采測(cè)點(diǎn)數(shù)據(jù)實(shí)體和采測(cè)點(diǎn)時(shí)間屬性。
[0030]S300:將采測(cè)點(diǎn)采集到的數(shù)據(jù)初始存儲(chǔ)至內(nèi)存,更新第二數(shù)據(jù)表字典。
[0031]采測(cè)點(diǎn)采集到的數(shù)據(jù)首先全部初始存儲(chǔ)至數(shù)據(jù)庫(kù)服務(wù)器的內(nèi)存中。數(shù)據(jù)存儲(chǔ)至內(nèi)存,則該采集點(diǎn)對(duì)應(yīng)的采測(cè)點(diǎn)時(shí)間屬性發(fā)生改變,更新第二數(shù)據(jù)表字典,以記錄這個(gè)改變的過(guò)程。具體來(lái)說(shuō),將數(shù)據(jù)放入內(nèi)存中,并內(nèi)存最新時(shí)間置為該數(shù)據(jù)記錄的時(shí)序,為了數(shù)據(jù)的連續(xù)性和一致性,內(nèi)存最早時(shí)間和本地硬盤(pán)最新時(shí)間是相同的,數(shù)據(jù)庫(kù)最新時(shí)間和本地硬盤(pán)最早時(shí)間是相同的。非必要的,在步驟S300之前還可以在數(shù)據(jù)庫(kù)服務(wù)器中創(chuàng)建數(shù)據(jù)庫(kù)連接池,根據(jù)數(shù)據(jù)庫(kù)服務(wù)器的CPU核數(shù),建立2倍CPU核數(shù)的鏈接。
[0032]S400:實(shí)時(shí)更新第一數(shù)據(jù)表字典,將第一數(shù)據(jù)表字典中數(shù)據(jù)實(shí)體隊(duì)列長(zhǎng)度大于預(yù)設(shè)閾值的采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)至本地硬盤(pán),并更新第二數(shù)據(jù)表字典。
[0033]采測(cè)點(diǎn)不斷采集數(shù)據(jù),實(shí)時(shí)更新第一數(shù)據(jù)表字典,采測(cè)點(diǎn)數(shù)據(jù)實(shí)體長(zhǎng)度隨著時(shí)間越來(lái)越長(zhǎng),例如第一時(shí)刻采測(cè)點(diǎn)數(shù)據(jù)實(shí)體可能為(^丨61:;[11161、¥311、91;(^丨61:;[11162、¥312、92,第二時(shí)刻米測(cè)點(diǎn)數(shù)據(jù)實(shí)體為date time 1、vail、ql; datetime2、val2、q2 ; datetime3、val3、q3,當(dāng)?shù)谝粩?shù)據(jù)表字典中數(shù)據(jù)實(shí)體隊(duì)列長(zhǎng)度大于預(yù)設(shè)閾值時(shí),需要將該采測(cè)點(diǎn)數(shù)據(jù)實(shí)體從原始存儲(chǔ)位置——內(nèi)存,移動(dòng)存儲(chǔ)至行的存儲(chǔ)位置——本地硬盤(pán),在改變存儲(chǔ)位置過(guò)程中,該采測(cè)點(diǎn)的時(shí)間屬性發(fā)生變化,需要再次更新第二數(shù)據(jù)表字典,以記錄下整個(gè)采測(cè)點(diǎn)時(shí)間屬性的變化情況。具體來(lái)說(shuō),將采測(cè)點(diǎn)的時(shí)間屬性中本地硬盤(pán)最新時(shí)間和內(nèi)存最早時(shí)間更新為該采測(cè)點(diǎn)的最新時(shí)間,同時(shí)將內(nèi)存最新時(shí)間置為空。預(yù)設(shè)閾值是預(yù)先設(shè)定的閾值,其可以根據(jù)實(shí)際情況的需要進(jìn)行設(shè)定,具體來(lái)說(shuō),預(yù)設(shè)閥值=內(nèi)存大小/2/N/K,其中,N=采測(cè)點(diǎn)個(gè)數(shù),K =單個(gè)采測(cè)點(diǎn)一個(gè)時(shí)序的數(shù)據(jù)字節(jié)數(shù)。
[0034]S500:檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載,當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),根據(jù)第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,確定各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置。
[0035]檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載,當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),說(shuō)明當(dāng)前數(shù)據(jù)庫(kù)服務(wù)器需要處理的任務(wù)較少,有足夠數(shù)據(jù)處理資源來(lái)執(zhí)行數(shù)據(jù)庫(kù)數(shù)據(jù)存儲(chǔ)的操作。此時(shí),根據(jù)第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,確定各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置,以便后續(xù)在確定的位置中提取相應(yīng)的采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,準(zhǔn)備存儲(chǔ)至數(shù)據(jù)庫(kù)。根據(jù)第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,確定各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置。具體來(lái)說(shuō),可以根據(jù)第一數(shù)據(jù)表字典確定優(yōu)先處理的采測(cè)點(diǎn),例如可以將數(shù)據(jù)實(shí)體長(zhǎng)度越長(zhǎng)的采測(cè)點(diǎn)優(yōu)先處理,在確定優(yōu)先處理采測(cè)點(diǎn)后根據(jù)第二數(shù)據(jù)表字典中采測(cè)時(shí)間屬性確定該采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置。具體來(lái)說(shuō),當(dāng)當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間為空時(shí),判斷當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的本地硬盤(pán)最新時(shí)間是否等于數(shù)據(jù)庫(kù)最新時(shí)間,當(dāng)?shù)扔跁r(shí),判定沒(méi)有數(shù)據(jù)需要更新,當(dāng)不等于時(shí),當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于本地硬盤(pán);當(dāng)當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間不為空時(shí),判斷當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最早時(shí)間是否等于硬盤(pán)最新時(shí)間,當(dāng)?shù)扔跁r(shí),當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存,當(dāng)不等于時(shí),當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存和本地硬盤(pán)。
[0036]S600:從確定的存放位置中提取各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,并將提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)。
[0037]在步驟S500確定采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)位置之后,從確定的位置中提取相應(yīng)的采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,將這些提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)。
[0038]本發(fā)明多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法,將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體以及采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián),分別獲得第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,將采測(cè)點(diǎn)采集到的數(shù)據(jù)初始存儲(chǔ)至內(nèi)存,將第一數(shù)據(jù)表字典中數(shù)據(jù)實(shí)體隊(duì)列長(zhǎng)度大于預(yù)設(shè)閾值的采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)至本地硬盤(pán),當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),根據(jù)第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,確定各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置,提取各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,并將提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)。整個(gè)過(guò)程中,采用多次數(shù)據(jù)關(guān)聯(lián)與判斷,并結(jié)合數(shù)據(jù)庫(kù)服務(wù)器負(fù)載實(shí)際情況,確定采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存和/或?yàn)楸镜赜脖P(pán),利用內(nèi)存和本地硬盤(pán)空間讀寫(xiě)數(shù)據(jù)快于數(shù)據(jù)庫(kù)讀寫(xiě),通過(guò)空間換時(shí)間,實(shí)現(xiàn)多采測(cè)點(diǎn)的大量數(shù)據(jù)高效存儲(chǔ)至數(shù)據(jù)庫(kù)。
[0039]在其中一個(gè)實(shí)施例中,將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),獲得第一數(shù)據(jù)表字典的步驟之后還包括:
[0040]根據(jù)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體的隊(duì)列長(zhǎng)度,對(duì)每個(gè)采測(cè)點(diǎn)進(jìn)行優(yōu)先級(jí)排序,其中,隊(duì)列長(zhǎng)度越大優(yōu)先級(jí)越高。
[0041]采測(cè)點(diǎn)數(shù)據(jù)實(shí)體的隊(duì)列長(zhǎng)度越長(zhǎng)表明該采測(cè)點(diǎn)數(shù)據(jù)已經(jīng)積壓越嚴(yán)重,例如第一組:datetime 1、vail、ql ; (^七61:;[11162、¥&12、92;(1&七61:;[11163、¥&13、93的隊(duì)列長(zhǎng)度大于第二組:(^七61:;[11161、¥311、91;(^七61:;[11162、¥312、92的隊(duì)列長(zhǎng)度,第一組的數(shù)據(jù)積壓比第二組嚴(yán)重,第一組的優(yōu)先級(jí)高于第二組。在本實(shí)施例中,引入優(yōu)先級(jí)方式,根據(jù)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體的隊(duì)列長(zhǎng)度,對(duì)每個(gè)采測(cè)點(diǎn)進(jìn)行優(yōu)先級(jí)排序,充分考慮不同采測(cè)點(diǎn)數(shù)據(jù)積壓程度(需要存儲(chǔ)至數(shù)據(jù)庫(kù)服務(wù)器的迫切程度),為后續(xù)操作中根據(jù)優(yōu)先級(jí)選擇性操作(優(yōu)先級(jí)高的優(yōu)先存儲(chǔ)至數(shù)據(jù)庫(kù)服務(wù)器)提供基礎(chǔ)。
[0042]在其中一個(gè)實(shí)施例中,檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載,當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),根據(jù)第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,確定各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置的步驟包括:
[0043]步驟一:檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載。
[0044]可以從數(shù)據(jù)庫(kù)服務(wù)器的CPU、內(nèi)存占用率和連接數(shù)三個(gè)方面來(lái)檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載情況。
[0045]步驟二:當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),從第一數(shù)據(jù)表字典中選取優(yōu)先級(jí)最高的采測(cè)點(diǎn),作為當(dāng)前處理采測(cè)點(diǎn)。
[0046]當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載較低時(shí),從第一數(shù)據(jù)表字典中選取優(yōu)先級(jí)最高的采測(cè)點(diǎn)作為當(dāng)前處理采測(cè)點(diǎn),即從第一數(shù)據(jù)表字典中選取采測(cè)點(diǎn)數(shù)據(jù)實(shí)體隊(duì)列最長(zhǎng)對(duì)應(yīng)的采測(cè)點(diǎn)作為當(dāng)前處理采測(cè)點(diǎn)。采測(cè)點(diǎn)數(shù)據(jù)實(shí)體隊(duì)列最長(zhǎng)表明其對(duì)應(yīng)的采測(cè)點(diǎn)數(shù)據(jù)積壓越嚴(yán)重,越需要盡快將數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)服務(wù)器,所以在這里應(yīng)用上述步驟中的優(yōu)先級(jí)排序,優(yōu)先將處理此采測(cè)點(diǎn)。合理使用優(yōu)先級(jí)方式,實(shí)現(xiàn)數(shù)據(jù)合理、高效以及有序處理。例如目前第一數(shù)據(jù)表字典中有采測(cè)點(diǎn)1、采測(cè)點(diǎn)2、采測(cè)點(diǎn)3以及采測(cè)點(diǎn)4共計(jì)4個(gè)采測(cè)點(diǎn),并且4個(gè)采測(cè)點(diǎn)優(yōu)先級(jí)依次升高,則選擇采測(cè)點(diǎn)4作為當(dāng)前處理采測(cè)點(diǎn),進(jìn)行下述步驟的處理,當(dāng)采測(cè)點(diǎn)4處理完成時(shí),若優(yōu)先級(jí)未出現(xiàn)變化,再對(duì)采測(cè)點(diǎn)3進(jìn)行下述步驟處理,以此類(lèi)推,通過(guò)下述步驟確定全部采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置。
[0047]步驟三:根據(jù)第二數(shù)據(jù)表字典,判斷當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間是否為空。
[0048]在第二數(shù)據(jù)表字典中詳細(xì)關(guān)聯(lián)采測(cè)點(diǎn)ID和采測(cè)點(diǎn)時(shí)間屬性,如之前,采測(cè)點(diǎn)時(shí)間屬性包括內(nèi)存最早時(shí)間、內(nèi)存最新時(shí)間、本地硬盤(pán)最早時(shí)間、本地硬盤(pán)最新時(shí)間以及數(shù)據(jù)庫(kù)最新時(shí)間,在這里,判斷當(dāng)前處理采測(cè)點(diǎn)的內(nèi)存最新時(shí)間是否為空。
[0049]步驟四:當(dāng)當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間為空時(shí),判斷當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的本地硬盤(pán)最新時(shí)間是否等于數(shù)據(jù)庫(kù)最新時(shí)間,當(dāng)?shù)扔跁r(shí),判定沒(méi)有數(shù)據(jù)需要更新,當(dāng)不等于時(shí),當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于本地硬盤(pán)。
[0050]假定當(dāng)前處理采測(cè)點(diǎn)為采測(cè)點(diǎn)I,基于第二數(shù)據(jù)表字典,當(dāng)采測(cè)點(diǎn)I相應(yīng)的內(nèi)存最新時(shí)間為空時(shí),再進(jìn)一步判斷采測(cè)點(diǎn)I相應(yīng)的本地硬盤(pán)最新時(shí)間是否等于數(shù)據(jù)庫(kù)最新時(shí)間,當(dāng)?shù)扔跁r(shí),判定當(dāng)前數(shù)據(jù)庫(kù)服務(wù)器沒(méi)有數(shù)據(jù)需要存儲(chǔ)更新,即數(shù)據(jù)庫(kù)服務(wù)器當(dāng)前不需要存入新的數(shù)據(jù),例如當(dāng)采測(cè)點(diǎn)的采測(cè)裝置未工作時(shí),此時(shí)數(shù)據(jù)庫(kù)服務(wù)器是無(wú)有效數(shù)據(jù)需要更新存儲(chǔ)的;當(dāng)不等于時(shí),直接判定采測(cè)點(diǎn)I數(shù)據(jù)實(shí)體位于數(shù)據(jù)庫(kù)服務(wù)器的本地硬盤(pán)。
[0051]步驟五:當(dāng)當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間不為空時(shí),判斷當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最早時(shí)間是否等于硬盤(pán)最新時(shí)間,當(dāng)?shù)扔跁r(shí),當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存,當(dāng)不等于時(shí),當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存和本地硬盤(pán)。
[0052]假定當(dāng)前處理采測(cè)點(diǎn)為采測(cè)點(diǎn)2,基于第二數(shù)據(jù)表字典,當(dāng)采測(cè)點(diǎn)2相應(yīng)的內(nèi)存最新時(shí)間不為空時(shí),判斷采測(cè)點(diǎn)2相應(yīng)的內(nèi)存最早時(shí)間是否等于硬盤(pán)最新時(shí)間,當(dāng)?shù)扔跁r(shí),采測(cè)點(diǎn)2數(shù)據(jù)實(shí)體位于數(shù)據(jù)庫(kù)服務(wù)器內(nèi)存;當(dāng)不等于時(shí),采測(cè)點(diǎn)2數(shù)據(jù)實(shí)體位于數(shù)據(jù)庫(kù)服務(wù)器內(nèi)存和本地硬盤(pán)。
[0053]如圖2所示,在其中一個(gè)實(shí)施例中,步驟S600包括:
[0054]S620:從確定的存放位置中提取各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體。
[0055]S640:將提取的數(shù)據(jù)拼成單條語(yǔ)句,并將單條語(yǔ)句一次性寫(xiě)入數(shù)據(jù)庫(kù)。
[0056]將提取出的數(shù)據(jù)拼成單條語(yǔ)句。具體來(lái)說(shuō),單條語(yǔ)句可以是SQL(StructuredQuery Language,結(jié)構(gòu)化查詢語(yǔ)言)語(yǔ)句,將單條語(yǔ)句一次性寫(xiě)入數(shù)據(jù)庫(kù)。
[0057]在其中一個(gè)實(shí)施例中,將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),獲得第一數(shù)據(jù)表字典的步驟之前還包括:
[0058]步驟一:為每個(gè)采測(cè)點(diǎn)分別建立獨(dú)立的數(shù)據(jù)表。
[0059]針對(duì)多采測(cè)點(diǎn)的數(shù)據(jù)量較大、較復(fù)雜的情況,在這里,對(duì)每一個(gè)采測(cè)點(diǎn)分別建立獨(dú)立的數(shù)據(jù)表,這樣可確保數(shù)據(jù)合理、清晰采集和記錄。非必要的,還可以對(duì)每個(gè)數(shù)據(jù)表分別分配唯一的身份識(shí)別標(biāo)識(shí),身份識(shí)別標(biāo)識(shí)具體可以為ID等。例如當(dāng)前有100個(gè)采測(cè)點(diǎn),對(duì)這100個(gè)采測(cè)點(diǎn)分別建立獨(dú)立的數(shù)據(jù)表,即建立100個(gè)獨(dú)立的數(shù)據(jù)表,從I至100對(duì)這些數(shù)據(jù)表進(jìn)行編號(hào),以便在后續(xù)操作中,便捷查找和識(shí)別。
[0060]步驟二:對(duì)數(shù)據(jù)表進(jìn)行字段設(shè)置,提取采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,其中,字段設(shè)置包括字段描述、采集時(shí)間以及數(shù)據(jù)質(zhì)量。
[0061]對(duì)每個(gè)數(shù)據(jù)表進(jìn)行字段設(shè)置,字段設(shè)置主要包括字段描述(datatime)、采集時(shí)間(val)以及數(shù)據(jù)質(zhì)量(q)三個(gè)方面,當(dāng)對(duì)數(shù)據(jù)表進(jìn)行字段設(shè)置完成后,可以從中讀取采測(cè)點(diǎn)數(shù)據(jù)實(shí)體。具體來(lái)說(shuō),采測(cè)點(diǎn)數(shù)據(jù)實(shí)體是一個(gè)帶時(shí)序的數(shù)據(jù)隊(duì)列,例datetime1、vail、ql ;datetime2、val2、q2..?等。
[0062]在其中一個(gè)實(shí)施例中,為每個(gè)采測(cè)點(diǎn)分別建立獨(dú)立的數(shù)據(jù)表的步驟之后還包括:對(duì)每個(gè)數(shù)據(jù)表分配唯一的身份識(shí)別標(biāo)識(shí)。將每個(gè)數(shù)據(jù)表的身份識(shí)別標(biāo)識(shí)與相應(yīng)的采測(cè)點(diǎn)ID關(guān)聯(lián),獲得初始數(shù)據(jù)表字典。
[0063]在本實(shí)施例中,針對(duì)數(shù)據(jù)表分配唯一的身份識(shí)別標(biāo)識(shí)(例如數(shù)據(jù)表ID),并將數(shù)據(jù)表的身份識(shí)別標(biāo)識(shí)與相應(yīng)的采測(cè)點(diǎn)ID關(guān)聯(lián),便于直接通過(guò)采測(cè)點(diǎn)ID即可查找相應(yīng)的數(shù)據(jù)表,有利于數(shù)據(jù)的高效管理。
[0064]非必要的,在其中一個(gè)實(shí)施例中,獲得初始數(shù)據(jù)表字典之后,還包括:創(chuàng)建哈西表,將初始數(shù)據(jù)表字典與第一數(shù)據(jù)表字典映射。將初始數(shù)據(jù)表字典與第一數(shù)據(jù)表字典映射,可以建立初始數(shù)據(jù)表字典與第一數(shù)據(jù)表字典之間的映射關(guān)系,便于在后續(xù)操作中,以數(shù)據(jù)表身份識(shí)別標(biāo)識(shí)方式顯示每個(gè)數(shù)據(jù)表的存儲(chǔ)位置,有利于用戶便捷了解數(shù)據(jù)存儲(chǔ)情況與位置。
[0065]如圖3所示,一種多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)系統(tǒng),包括:
[0066]第一關(guān)聯(lián)模塊100,用于將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),獲得第一數(shù)據(jù)表字血
Z N ?
[0067]第二關(guān)聯(lián)模塊200,用于將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián),獲得第二數(shù)據(jù)表字典,其中,采測(cè)點(diǎn)時(shí)間屬性包括內(nèi)存最早時(shí)間、內(nèi)存最新時(shí)間、本地硬盤(pán)最早時(shí)間、本地硬盤(pán)最新時(shí)間以及數(shù)據(jù)庫(kù)最新時(shí)間.
[0068]初始存儲(chǔ)模塊300,用于將采測(cè)點(diǎn)采集到的數(shù)據(jù)初始存儲(chǔ)至內(nèi)存,更新第二數(shù)據(jù)表字典。
[0069]更新存儲(chǔ)模塊400,用于實(shí)時(shí)更新第一數(shù)據(jù)表字典,將第一數(shù)據(jù)表字典中數(shù)據(jù)實(shí)體隊(duì)列長(zhǎng)度大于預(yù)設(shè)閾值的采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)至本地硬盤(pán),并更新第二數(shù)據(jù)表字典.
[0070]位置確定模塊500,用于檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載,當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),根據(jù)第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,確定各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置。
[0071]數(shù)據(jù)庫(kù)存儲(chǔ)模塊600,用于從確定的存放位置中提取各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,并將提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)。
[0072]本發(fā)明多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)系統(tǒng),第一關(guān)聯(lián)模塊100和第二關(guān)聯(lián)模塊200將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體以及采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián),分別獲得第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,初始存儲(chǔ)模塊300將采測(cè)點(diǎn)采集到的數(shù)據(jù)初始存儲(chǔ)至內(nèi)存,更新存儲(chǔ)模塊400將第一數(shù)據(jù)表字典中數(shù)據(jù)實(shí)體隊(duì)列長(zhǎng)度大于預(yù)設(shè)閾值的采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)至本地硬盤(pán),當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),位置確定模塊500根據(jù)第一數(shù)據(jù)表字典和第二數(shù)據(jù)表字典,確定各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置,數(shù)據(jù)庫(kù)存儲(chǔ)模塊600提取各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,并將提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)。整個(gè)過(guò)程中,采用多次數(shù)據(jù)關(guān)聯(lián)與判斷,并結(jié)合數(shù)據(jù)庫(kù)服務(wù)器負(fù)載實(shí)際情況,確定采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存和/或?yàn)楸镜赜脖P(pán),利用內(nèi)存和本地硬盤(pán)空間讀寫(xiě)數(shù)據(jù)快于數(shù)據(jù)庫(kù)讀寫(xiě),通過(guò)空間換時(shí)間,實(shí)現(xiàn)多采測(cè)點(diǎn)的大量數(shù)據(jù)高效存儲(chǔ)至數(shù)據(jù)庫(kù)。
[0073]在其中一個(gè)實(shí)施例中,的采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)系統(tǒng)還包括:
[0074]優(yōu)先級(jí)模塊,用于根據(jù)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體的隊(duì)列長(zhǎng)度,對(duì)每個(gè)采測(cè)點(diǎn)進(jìn)行優(yōu)先級(jí)排序,其中,隊(duì)列長(zhǎng)度越大優(yōu)先級(jí)越高。
[0075]采測(cè)點(diǎn)數(shù)據(jù)實(shí)體的隊(duì)列長(zhǎng)度越長(zhǎng)表明該采測(cè)點(diǎn)數(shù)據(jù)已經(jīng)積壓越嚴(yán)重,例如第一組:datet ime 1、vail、ql ; (^七61:;[11162、¥&12、92;(1&七61:;[11163、¥&13、93的隊(duì)列長(zhǎng)度大于第二組:datet ime 1、val 1、ql; datet ime2、val 2、q2的隊(duì)列長(zhǎng)度,第一組的數(shù)據(jù)積壓比第二組嚴(yán)重,第一組的優(yōu)先級(jí)高于第二組。在本實(shí)施例中,引入優(yōu)先級(jí)方式,優(yōu)先級(jí)模塊根據(jù)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體的隊(duì)列長(zhǎng)度,對(duì)每個(gè)采測(cè)點(diǎn)進(jìn)行優(yōu)先級(jí)排序,充分考慮不同采測(cè)點(diǎn)數(shù)據(jù)積壓程度(需要存儲(chǔ)至數(shù)據(jù)庫(kù)服務(wù)器的迫切程度),為后續(xù)操作中根據(jù)優(yōu)先級(jí)選擇性操作(優(yōu)先級(jí)高的優(yōu)先存儲(chǔ)至數(shù)據(jù)庫(kù)服務(wù)器)提供基礎(chǔ)。
[0076]在其中一個(gè)實(shí)施例中,位置確定模塊500包括:
[0077]負(fù)載檢測(cè)單元,用于檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載;
[0078]優(yōu)先級(jí)選取單元,用于當(dāng)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),從第一數(shù)據(jù)表字典中選取優(yōu)先級(jí)最高的采測(cè)點(diǎn),作為當(dāng)前處理采測(cè)點(diǎn);
[0079]判斷單元,用于根據(jù)第二數(shù)據(jù)表字典,判斷當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間是否為空;
[0080]第一處理單元,用于當(dāng)當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間為空時(shí),判斷當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的本地硬盤(pán)最新時(shí)間是否等于數(shù)據(jù)庫(kù)最新時(shí)間,當(dāng)?shù)扔跁r(shí),判定沒(méi)有數(shù)據(jù)需要更新,當(dāng)不等于時(shí),當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于本地硬盤(pán);
[0081]第二處理單元,用于當(dāng)當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間不為空時(shí),判斷當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最早時(shí)間是否等于硬盤(pán)最新時(shí)間,當(dāng)?shù)扔跁r(shí),當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存,當(dāng)不等于時(shí),當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存和本地硬盤(pán)。
[0082]如圖4所示,在其中一個(gè)實(shí)施例中,數(shù)據(jù)庫(kù)存儲(chǔ)模塊600包括:
[0083]提取單元620,用于從確定的存放位置中提取各個(gè)采測(cè)點(diǎn)數(shù)據(jù)實(shí)體。
[0084]數(shù)據(jù)庫(kù)存儲(chǔ)單元640,用于將提取的數(shù)據(jù)拼成單條語(yǔ)句,并將單條語(yǔ)句一次性寫(xiě)入數(shù)據(jù)庫(kù)。
[0085]將提取出的數(shù)據(jù)拼成單條語(yǔ)句。具體來(lái)說(shuō),單條語(yǔ)句可以是SQL(StructuredQuery Language,結(jié)構(gòu)化查詢語(yǔ)言)語(yǔ)句,將單條語(yǔ)句一次性寫(xiě)入數(shù)據(jù)庫(kù)。
[0086]以上實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)發(fā)明專(zhuān)利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專(zhuān)利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。
【主權(quán)項(xiàng)】
1.一種多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法,其特征在于,包括步驟: 將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),獲得第一數(shù)據(jù)表字典; 將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián),獲得第二數(shù)據(jù)表字典,其中,所述采測(cè)點(diǎn)時(shí)間屬性包括內(nèi)存最早時(shí)間、內(nèi)存最新時(shí)間、本地硬盤(pán)最早時(shí)間、本地硬盤(pán)最新時(shí)間以及數(shù)據(jù)庫(kù)最新時(shí)間; 將采測(cè)點(diǎn)采集到的數(shù)據(jù)初始存儲(chǔ)至內(nèi)存,更新所述第二數(shù)據(jù)表字典; 實(shí)時(shí)更新所述第一數(shù)據(jù)表字典,將所述第一數(shù)據(jù)表字典中數(shù)據(jù)實(shí)體隊(duì)列長(zhǎng)度大于預(yù)設(shè)閾值的所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)至本地硬盤(pán),并更新所述第二數(shù)據(jù)表字典; 檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載,當(dāng)所述數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),根據(jù)所述第一數(shù)據(jù)表字典和所述第二數(shù)據(jù)表字典,確定各個(gè)所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置; 從確定的存放位置中提取各個(gè)所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,并將提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)。2.根據(jù)權(quán)利要求1所述的多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法,其特征在于,所述將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),獲得第一數(shù)據(jù)表字典的步驟之后還包括: 根據(jù)所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體的隊(duì)列長(zhǎng)度,對(duì)每個(gè)所述采測(cè)點(diǎn)進(jìn)行優(yōu)先級(jí)排序,其中,所述隊(duì)列長(zhǎng)度越大優(yōu)先級(jí)越高。3.根據(jù)權(quán)利要求2所述的多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法,其特征在于,所述檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載,當(dāng)所述數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),根據(jù)所述第一數(shù)據(jù)表字典和所述第二數(shù)據(jù)表字典,確定各個(gè)所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置的步驟包括: 檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載; 當(dāng)所述數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),從所述第一數(shù)據(jù)表字典中選取優(yōu)先級(jí)最高的采測(cè)點(diǎn),作為當(dāng)前處理采測(cè)點(diǎn); 根據(jù)所述第二數(shù)據(jù)表字典,判斷所述當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間是否為空; 當(dāng)所述當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間為空時(shí),判斷所述當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的本地硬盤(pán)最新時(shí)間是否等于數(shù)據(jù)庫(kù)最新時(shí)間,當(dāng)?shù)扔跁r(shí),判定沒(méi)有數(shù)據(jù)需要更新,當(dāng)不等于時(shí),所述當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于本地硬盤(pán); 當(dāng)所述當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間不為空時(shí),判斷所述當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最早時(shí)間是否等于硬盤(pán)最新時(shí)間,當(dāng)?shù)扔跁r(shí),所述當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存,當(dāng)不等于時(shí),所述當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存和本地硬盤(pán)。4.根據(jù)權(quán)利要求1或2或3所述的多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法,其特征在于,所述從確定的存放位置中提取各個(gè)所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,并將提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)的步驟包括: 從確定的存放位置中提取各個(gè)所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體; 將提取的數(shù)據(jù)拼成單條語(yǔ)句,并將所述單條語(yǔ)句一次性寫(xiě)入數(shù)據(jù)庫(kù)。5.根據(jù)權(quán)利要求1或2或3所述的多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法,其特征在于,所述將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),獲得第一數(shù)據(jù)表字典的步驟之前還包括: 為每個(gè)采測(cè)點(diǎn)分別建立獨(dú)立的數(shù)據(jù)表; 對(duì)所述數(shù)據(jù)表進(jìn)行字段設(shè)置,提取所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,其中,所述字段設(shè)置包括字段描述、采集時(shí)間以及數(shù)據(jù)質(zhì)量。6.根據(jù)權(quán)利要求5所述的多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)方法,其特征在于,所述為每個(gè)采測(cè)點(diǎn)分別建立獨(dú)立的數(shù)據(jù)表的步驟之后還包括: 對(duì)每個(gè)所述數(shù)據(jù)表分配唯一的身份識(shí)別標(biāo)識(shí); 將每個(gè)所述數(shù)據(jù)表的身份識(shí)別標(biāo)識(shí)與相應(yīng)的所述采測(cè)點(diǎn)ID關(guān)聯(lián),獲得初始數(shù)據(jù)表字典。7.一種多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)系統(tǒng),其特征在于,包括: 第一關(guān)聯(lián)模塊,用于將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)數(shù)據(jù)實(shí)體關(guān)聯(lián),獲得第一數(shù)據(jù)表字典; 第二關(guān)聯(lián)模塊,用于將采測(cè)點(diǎn)ID與采測(cè)點(diǎn)時(shí)間屬性關(guān)聯(lián),獲得第二數(shù)據(jù)表字典,其中,所述采測(cè)點(diǎn)時(shí)間屬性包括內(nèi)存最早時(shí)間、內(nèi)存最新時(shí)間、本地硬盤(pán)最早時(shí)間、本地硬盤(pán)最新時(shí)間以及數(shù)據(jù)庫(kù)最新時(shí)間; 初始存儲(chǔ)模塊,用于將采測(cè)點(diǎn)采集到的數(shù)據(jù)初始存儲(chǔ)至內(nèi)存,更新所述第二數(shù)據(jù)表字血.Z N I 更新存儲(chǔ)模塊,用于實(shí)時(shí)更新所述第一數(shù)據(jù)表字典,將所述第一數(shù)據(jù)表字典中數(shù)據(jù)實(shí)體隊(duì)列長(zhǎng)度大于預(yù)設(shè)閾值的所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存儲(chǔ)至本地硬盤(pán),并更新所述第二數(shù)據(jù)表字典; 位置確定模塊,用于檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載,當(dāng)所述數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),根據(jù)所述第一數(shù)據(jù)表字典和所述第二數(shù)據(jù)表字典,確定各個(gè)所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體存放位置; 數(shù)據(jù)庫(kù)存儲(chǔ)模塊,用于從確定的存放位置中提取各個(gè)所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體,并將提取的數(shù)據(jù)存儲(chǔ)至數(shù)據(jù)庫(kù)。8.根據(jù)權(quán)利要求7所述的多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)系統(tǒng),其特征在于,還包括: 優(yōu)先級(jí)模塊,用于根據(jù)所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體的隊(duì)列長(zhǎng)度,對(duì)每個(gè)所述采測(cè)點(diǎn)進(jìn)行優(yōu)先級(jí)排序,其中,所述隊(duì)列長(zhǎng)度越大優(yōu)先級(jí)越高。9.根據(jù)權(quán)利要求8所述的多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)系統(tǒng),其特征在于,所述位置確定模塊包括: 負(fù)載檢測(cè)單元,用于檢測(cè)數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載; 優(yōu)先級(jí)選取單元,用于當(dāng)所述數(shù)據(jù)庫(kù)服務(wù)器的負(fù)載低于預(yù)設(shè)負(fù)載閾值時(shí),從所述第一數(shù)據(jù)表字典中選取優(yōu)先級(jí)最高的采測(cè)點(diǎn),作為當(dāng)前處理采測(cè)點(diǎn); 判斷單元,用于根據(jù)所述第二數(shù)據(jù)表字典,判斷所述當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間是否為空; 第一處理單元,用于當(dāng)所述當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間為空時(shí),判斷所述當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的本地硬盤(pán)最新時(shí)間是否等于數(shù)據(jù)庫(kù)最新時(shí)間,當(dāng)?shù)扔跁r(shí),判定沒(méi)有數(shù)據(jù)需要更新,當(dāng)不等于時(shí),所述當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于本地硬盤(pán); 第二處理單元,用于當(dāng)所述當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最新時(shí)間不為空時(shí),判斷所述當(dāng)前處理采測(cè)點(diǎn)對(duì)應(yīng)的內(nèi)存最早時(shí)間是否等于硬盤(pán)最新時(shí)間,當(dāng)?shù)扔跁r(shí),所述當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存,當(dāng)不等于時(shí),所述當(dāng)前處理采測(cè)點(diǎn)數(shù)據(jù)實(shí)體位于內(nèi)存和本地硬盤(pán)。10.根據(jù)權(quán)利要求7或8或9所述的多采測(cè)點(diǎn)的數(shù)據(jù)存儲(chǔ)系統(tǒng),其特征在于,所述數(shù)據(jù)庫(kù)存儲(chǔ)模塊包括: 提取單元,用于從確定的存放位置中提取各個(gè)所述采測(cè)點(diǎn)數(shù)據(jù)實(shí)體; 數(shù)據(jù)庫(kù)存儲(chǔ)單元,用于將提取的數(shù)據(jù)拼成單條語(yǔ)句,并將所述單條語(yǔ)句一次性寫(xiě)入數(shù)據(jù)庫(kù)。
【文檔編號(hào)】G06F17/30GK105956063SQ201610270869
【公開(kāi)日】2016年9月21日
【申請(qǐng)日】2016年4月27日
【發(fā)明人】倪紅波, 朱璽, 鄧玨, 陳曉
【申請(qǐng)人】華自科技股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
定西市| 日土县| 宕昌县| 钟山县| 曲沃县| 新乐市| 辽阳县| 韶关市| 辛集市| 琼海市| 铜川市| 湟源县| 渭南市| 科尔| 崇礼县| 康乐县| 乌恰县| 萨迦县| 丰顺县| 东乌珠穆沁旗| 社旗县| 新田县| 吉木萨尔县| 环江| 罗江县| 塘沽区| 和龙市| 基隆市| 喀喇沁旗| 仁怀市| 宁河县| 临城县| 鲁山县| 利川市| 原阳县| 定边县| 石柱| 蕲春县| 陆丰市| 江津市| 四子王旗|