本技術(shù)涉及計(jì)算機(jī),特別是涉及一種煤礦數(shù)據(jù)存儲(chǔ)方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品。
背景技術(shù):
1、隨著云計(jì)算和大數(shù)據(jù)的不斷發(fā)展,煤礦行業(yè)作為一個(gè)重要的能源產(chǎn)業(yè),也逐漸朝著數(shù)字化、信息化的趨勢(shì)發(fā)展。在煤礦不斷信息化的過(guò)程中,會(huì)產(chǎn)生大量的煤礦數(shù)據(jù),其包括煤礦水文數(shù)據(jù),通過(guò)對(duì)這些數(shù)據(jù)進(jìn)行分析,能夠揭示出礦區(qū)水文地質(zhì)條件的演變規(guī)律,為煤礦的開采設(shè)計(jì)、排水系統(tǒng)設(shè)計(jì)、災(zāi)害預(yù)警等提供了良好的科學(xué)依據(jù)。由于煤礦工作環(huán)境的危險(xiǎn)性和復(fù)雜性,如何對(duì)煤礦數(shù)據(jù)進(jìn)行有效存儲(chǔ)顯得尤為重要。
2、目前,對(duì)于每個(gè)礦區(qū),水文系統(tǒng)在每隔預(yù)設(shè)時(shí)間從礦區(qū)對(duì)應(yīng)的井下分站獲取一次數(shù)據(jù)并存儲(chǔ),從而產(chǎn)生了海量數(shù)據(jù),然而當(dāng)需要從水文系統(tǒng)中查詢相關(guān)數(shù)據(jù)時(shí),由于數(shù)據(jù)量較大會(huì)產(chǎn)生十多秒的時(shí)延,并且隨著系統(tǒng)運(yùn)行時(shí)間的增長(zhǎng),可能會(huì)使得時(shí)延更長(zhǎng),導(dǎo)致煤礦數(shù)據(jù)處理效率較低。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)的目的是提供一種煤礦數(shù)據(jù)存儲(chǔ)方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品,可減小單個(gè)數(shù)據(jù)庫(kù)表中的數(shù)據(jù)量,縮小了數(shù)據(jù)時(shí)延,有效提高了單次數(shù)據(jù)查詢的效率,優(yōu)化了數(shù)據(jù)存儲(chǔ)方式。
2、為實(shí)現(xiàn)上述目的,本技術(shù)提供了如下方案:
3、第一方面,本技術(shù)提供了一種煤礦數(shù)據(jù)存儲(chǔ)方法,包括:
4、當(dāng)接收到煤礦數(shù)據(jù)時(shí),獲取煤礦數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)源標(biāo)識(shí);數(shù)據(jù)源標(biāo)識(shí)是預(yù)先對(duì)各個(gè)礦區(qū)初始化構(gòu)建的;
5、建立與數(shù)據(jù)源標(biāo)識(shí)對(duì)應(yīng)的數(shù)據(jù)庫(kù)之間的連接;數(shù)據(jù)庫(kù)包括即時(shí)數(shù)據(jù)庫(kù)表和歷史數(shù)據(jù)庫(kù)表,即時(shí)數(shù)據(jù)庫(kù)表用于存儲(chǔ)采集時(shí)間大于臨界時(shí)間且小于等于當(dāng)前時(shí)間的數(shù)據(jù),歷史數(shù)據(jù)庫(kù)表用于存儲(chǔ)采集時(shí)間小于等于臨界時(shí)間的數(shù)據(jù),臨界時(shí)間小于當(dāng)前時(shí)間;
6、將煤礦數(shù)據(jù)存儲(chǔ)至即時(shí)數(shù)據(jù)庫(kù)表中;
7、在系統(tǒng)穩(wěn)定時(shí)間段內(nèi),將采集時(shí)間小于等于臨界時(shí)間的煤礦數(shù)據(jù)作為待遷移數(shù)據(jù),將待遷移數(shù)據(jù)從即時(shí)數(shù)據(jù)庫(kù)表中遷移存儲(chǔ)至歷史數(shù)據(jù)庫(kù)表中。
8、可選地,將待遷移數(shù)據(jù)從即時(shí)數(shù)據(jù)庫(kù)表中遷移存儲(chǔ)至歷史數(shù)據(jù)庫(kù)表中,具體包括:
9、遍歷哈希表鍵數(shù)組,根據(jù)哈希表判斷是否創(chuàng)建有與采集時(shí)間對(duì)應(yīng)的歷史數(shù)據(jù)庫(kù)表;
10、當(dāng)未創(chuàng)建時(shí),創(chuàng)建與采集時(shí)間對(duì)應(yīng)的歷史數(shù)據(jù)庫(kù)表,并將待遷移數(shù)據(jù)從即時(shí)數(shù)據(jù)庫(kù)表中遷移存儲(chǔ)至歷史數(shù)據(jù)庫(kù)表中;
11、當(dāng)已創(chuàng)建時(shí),將待遷移數(shù)據(jù)從即時(shí)數(shù)據(jù)庫(kù)表中遷移存儲(chǔ)至歷史數(shù)據(jù)庫(kù)表中。
12、可選地,根據(jù)哈希表判斷是否創(chuàng)建有與采集時(shí)間對(duì)應(yīng)的歷史數(shù)據(jù)庫(kù)表,包括:
13、根據(jù)哈希表,將采集時(shí)間小于等于臨界時(shí)間的數(shù)據(jù)所屬年份對(duì)應(yīng)月份數(shù)組作為第一數(shù)組,將從數(shù)據(jù)庫(kù)的關(guān)系數(shù)據(jù)庫(kù)表中查詢到的所屬年份對(duì)應(yīng)月份數(shù)組作為第二數(shù)組;
14、將第一數(shù)組與第二數(shù)組進(jìn)行比對(duì),得到比對(duì)結(jié)果;
15、當(dāng)比對(duì)結(jié)果用于表征第一數(shù)組與第二數(shù)組比對(duì)不一致時(shí),則哈希表中未創(chuàng)建有與采集時(shí)間對(duì)應(yīng)的歷史數(shù)據(jù)庫(kù)表;
16、當(dāng)比對(duì)結(jié)果用于表征第一數(shù)組與第二數(shù)組比對(duì)一致時(shí),則哈希表中創(chuàng)建有與采集時(shí)間對(duì)應(yīng)的歷史數(shù)據(jù)庫(kù)表。
17、可選地,方法還包括:
18、當(dāng)接收到其他系統(tǒng)發(fā)送的可視化展示請(qǐng)求時(shí),解析可視化展示請(qǐng)求,確定可視化展示所需數(shù)據(jù)的數(shù)據(jù)標(biāo)識(shí);
19、從即時(shí)數(shù)據(jù)庫(kù)表中獲取與數(shù)據(jù)標(biāo)識(shí)對(duì)應(yīng)的目標(biāo)數(shù)據(jù);
20、將目標(biāo)數(shù)據(jù)發(fā)送至其他系統(tǒng),以使其他系統(tǒng)基于目標(biāo)數(shù)據(jù)進(jìn)行可視化展示。
21、可選地,方法還包括:
22、當(dāng)接收到其他系統(tǒng)發(fā)送的數(shù)據(jù)查詢請(qǐng)求時(shí),解析數(shù)據(jù)查詢請(qǐng)求,獲取待查詢數(shù)據(jù)對(duì)應(yīng)的目標(biāo)時(shí)間段;
23、確定當(dāng)前時(shí)間戳,并根據(jù)臨界時(shí)間確定歷史時(shí)間戳;當(dāng)前時(shí)間戳大于歷史時(shí)間戳;
24、判斷目標(biāo)時(shí)間段是否小于等于當(dāng)前時(shí)間戳且大于歷史時(shí)間戳;
25、當(dāng)目標(biāo)時(shí)間段小于等于當(dāng)前時(shí)間戳且大于歷史時(shí)間戳?xí)r,在即時(shí)數(shù)據(jù)庫(kù)表中獲取待查詢數(shù)據(jù)并發(fā)送至其他系統(tǒng)。
26、可選地,方法還包括:
27、判斷目標(biāo)時(shí)間段是否小于等于歷史時(shí)間戳;
28、當(dāng)目標(biāo)時(shí)間段小于等于歷史時(shí)間戳?xí)r,遍歷數(shù)據(jù)庫(kù)中的關(guān)系數(shù)據(jù)庫(kù)表,獲取包含目標(biāo)時(shí)間段的數(shù)據(jù)庫(kù)表名;
29、基于數(shù)據(jù)庫(kù)表名,從歷史數(shù)據(jù)庫(kù)表中獲取待查詢數(shù)據(jù)與即時(shí)數(shù)據(jù)庫(kù)表中的數(shù)據(jù)進(jìn)行組合并發(fā)送至其他系統(tǒng)。
30、可選地,將煤礦數(shù)據(jù)存儲(chǔ)至即時(shí)數(shù)據(jù)庫(kù)表中,具體包括:
31、獲取煤礦數(shù)據(jù)的數(shù)據(jù)時(shí)間,判斷注冊(cè)表中是否存在煤礦數(shù)據(jù)的采集時(shí)間;
32、當(dāng)不存在采集時(shí)間時(shí),將數(shù)據(jù)時(shí)間存儲(chǔ)至注冊(cè)表中,并將煤礦數(shù)據(jù)存儲(chǔ)至即時(shí)數(shù)據(jù)庫(kù)表中。
33、可選地,在判斷注冊(cè)表中是否存在煤礦數(shù)據(jù)的采集時(shí)間之后,方法還包括:
34、當(dāng)注冊(cè)表中中存在采集時(shí)間時(shí),將數(shù)據(jù)時(shí)間與采集時(shí)間進(jìn)行比對(duì);
35、若數(shù)據(jù)時(shí)間與采集時(shí)間比對(duì)不一致,更新注冊(cè)表中的采集時(shí)間為數(shù)據(jù)時(shí)間,并將煤礦數(shù)據(jù)存儲(chǔ)至即時(shí)數(shù)據(jù)庫(kù)表中。
36、第二方面,本技術(shù)提供了一種煤礦數(shù)據(jù)存儲(chǔ)裝置,包括:
37、獲取模塊,用于當(dāng)接收到煤礦數(shù)據(jù)時(shí),獲取所述煤礦數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)源標(biāo)識(shí);所述數(shù)據(jù)源標(biāo)識(shí)是預(yù)先對(duì)各個(gè)礦區(qū)初始化構(gòu)建的;
38、建立連接模塊,用于建立與所述數(shù)據(jù)源標(biāo)識(shí)對(duì)應(yīng)的數(shù)據(jù)庫(kù)之間的連接;所述數(shù)據(jù)庫(kù)包括即時(shí)數(shù)據(jù)庫(kù)表和歷史數(shù)據(jù)庫(kù)表,所述即時(shí)數(shù)據(jù)庫(kù)表用于存儲(chǔ)采集時(shí)間大于臨界時(shí)間且小于等于當(dāng)前時(shí)間的數(shù)據(jù),所述歷史數(shù)據(jù)庫(kù)表用于存儲(chǔ)采集時(shí)間小于等于所述臨界時(shí)間的數(shù)據(jù),所述臨界時(shí)間小于所述當(dāng)前時(shí)間;
39、即時(shí)存儲(chǔ)模塊,用于將所述煤礦數(shù)據(jù)存儲(chǔ)至所述即時(shí)數(shù)據(jù)庫(kù)表中;
40、遷移存儲(chǔ)模塊,用于在系統(tǒng)穩(wěn)定時(shí)間段內(nèi),將采集時(shí)間小于等于所述臨界時(shí)間的煤礦數(shù)據(jù)作為待遷移數(shù)據(jù),將所述待遷移數(shù)據(jù)從所述即時(shí)數(shù)據(jù)庫(kù)表中遷移存儲(chǔ)至所述歷史數(shù)據(jù)庫(kù)表中。
41、第三方面,本技術(shù)提供了一種計(jì)算機(jī)設(shè)備,包括:存儲(chǔ)器、處理器以存儲(chǔ)在存儲(chǔ)器上并可在處理器上運(yùn)行的計(jì)算機(jī)程序,所述處理器執(zhí)行所述計(jì)算機(jī)程序以實(shí)現(xiàn)上述中任一項(xiàng)所述的煤礦數(shù)據(jù)存儲(chǔ)方法的步驟。
42、第四方面,本技術(shù)提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述中任一項(xiàng)所述的煤礦數(shù)據(jù)存儲(chǔ)方法的步驟。
43、第五方面,本技術(shù)提供了一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,該計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)上述中任一項(xiàng)所述的煤礦數(shù)據(jù)存儲(chǔ)方法的步驟。
44、根據(jù)本技術(shù)提供的具體實(shí)施例,本技術(shù)公開了以下技術(shù)效果:
45、本技術(shù)提供了一種煤礦數(shù)據(jù)存儲(chǔ)方法、裝置、設(shè)備、介質(zhì)及產(chǎn)品,當(dāng)接收到煤礦數(shù)據(jù)時(shí),獲取煤礦數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)源標(biāo)識(shí),并建立與數(shù)據(jù)源標(biāo)識(shí)對(duì)應(yīng)的數(shù)據(jù)庫(kù)之間的連接,該數(shù)據(jù)庫(kù)包括即時(shí)數(shù)據(jù)庫(kù)表和歷史數(shù)據(jù)庫(kù)表,即時(shí)數(shù)據(jù)庫(kù)表用于存儲(chǔ)采集時(shí)間大于臨界時(shí)間且小于等于當(dāng)前時(shí)間的數(shù)據(jù),該歷史數(shù)據(jù)庫(kù)表用于存儲(chǔ)采集時(shí)間小于等于臨界時(shí)間的數(shù)據(jù),臨界時(shí)間小于當(dāng)前時(shí)間,將煤礦數(shù)據(jù)存儲(chǔ)至即時(shí)數(shù)據(jù)庫(kù)表中,在系統(tǒng)穩(wěn)定時(shí)間段內(nèi),將采集時(shí)間小于等于臨界時(shí)間的煤礦數(shù)據(jù)作為待遷移數(shù)據(jù),將待遷移數(shù)據(jù)從即時(shí)數(shù)據(jù)庫(kù)表中遷移存儲(chǔ)至歷史數(shù)據(jù)庫(kù)表中。與現(xiàn)有技術(shù)相比,本技術(shù)的技術(shù)方案由于在數(shù)據(jù)庫(kù)中設(shè)置了即時(shí)數(shù)據(jù)庫(kù)表和歷史數(shù)據(jù)庫(kù)表,能夠根據(jù)采集時(shí)間對(duì)不同時(shí)間段的煤礦數(shù)據(jù)進(jìn)行合理分配存儲(chǔ),從而在數(shù)據(jù)庫(kù)的層面將不同功能的數(shù)據(jù)進(jìn)行分離,減小了單個(gè)數(shù)據(jù)庫(kù)表中的數(shù)據(jù)量,有效提高了單次數(shù)據(jù)查詢的效率,降低了系統(tǒng)單次數(shù)據(jù)查詢的時(shí)延;并通過(guò)將采集時(shí)間大于臨界時(shí)間且小于等于當(dāng)前時(shí)間的數(shù)據(jù)存儲(chǔ)至即時(shí)數(shù)據(jù)庫(kù)表中,并將采集時(shí)間小于等于臨界時(shí)間的數(shù)據(jù)遷移存儲(chǔ)至歷史數(shù)據(jù)庫(kù)表中,采用數(shù)據(jù)遷移的方式降低了單表的數(shù)據(jù)存儲(chǔ)量,優(yōu)化了數(shù)據(jù)存儲(chǔ)方式,很大程度上提高了煤礦數(shù)據(jù)處理效率。