两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種時(shí)序數(shù)據(jù)索引方法及裝置與流程

文檔序號(hào):40609989發(fā)布日期:2025-01-07 20:52閱讀:11來源:國(guó)知局
一種時(shí)序數(shù)據(jù)索引方法及裝置與流程

本發(fā)明涉及數(shù)據(jù)庫,具體提供一種時(shí)序數(shù)據(jù)索引方法及裝置。


背景技術(shù):

1、隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,物聯(lián)網(wǎng)設(shè)備與應(yīng)用數(shù)量迅速增長(zhǎng),對(duì)高效存儲(chǔ)、管理和分析物聯(lián)網(wǎng)設(shè)備所產(chǎn)生的海量數(shù)據(jù)的需求也日益增加。

2、與傳統(tǒng)數(shù)據(jù)庫所處理的數(shù)據(jù)相比較,物聯(lián)網(wǎng)設(shè)備與應(yīng)用所產(chǎn)生的數(shù)據(jù)具有明顯的時(shí)序數(shù)據(jù)處理特征,如:

3、(1)數(shù)據(jù)總是包含時(shí)間戳屬性,并通常按照時(shí)間順序高頻、穩(wěn)定的產(chǎn)生;

4、(2)數(shù)據(jù)量巨大。以一臺(tái)傳感器在一天產(chǎn)生的數(shù)據(jù)量約1.4m為例,一個(gè)擁有千萬傳感器的工廠一年即可產(chǎn)生500t數(shù)據(jù)。而在車聯(lián)網(wǎng)、數(shù)字能源等新興行業(yè),管理數(shù)億甚至數(shù)十億設(shè)備正在成為趨勢(shì);

5、(3)數(shù)據(jù)較少更新和刪除;

6、(4)查詢通常以時(shí)間作為過濾條件,聚合分析通常在設(shè)備與時(shí)間維度上進(jìn)行。

7、由于傳統(tǒng)數(shù)據(jù)處理技術(shù)難以在如此大規(guī)模的數(shù)據(jù)上進(jìn)行高效存儲(chǔ)與分析,時(shí)序數(shù)據(jù)處理作為一項(xiàng)專門的數(shù)據(jù)處理技術(shù)應(yīng)運(yùn)而生并迅速發(fā)展。除在物聯(lián)網(wǎng)行業(yè)外,時(shí)序數(shù)據(jù)處理技術(shù)在系統(tǒng)監(jiān)控、股票交易等行業(yè)也得到廣泛應(yīng)用。

8、時(shí)序數(shù)據(jù)處理中最大的挑戰(zhàn)之一是數(shù)據(jù)索引設(shè)計(jì)。因?yàn)闀r(shí)序數(shù)據(jù)數(shù)據(jù)量巨大且對(duì)寫入性能要求很高,傳統(tǒng)的b+樹索引、哈希索引等索引形式都會(huì)占用巨大的存儲(chǔ)空間且大幅增加寫入刪除操作開銷而無法滿足時(shí)序數(shù)據(jù)處理的要求。一些時(shí)序數(shù)據(jù)庫采用lsm樹的形式對(duì)數(shù)據(jù)按時(shí)間順序存儲(chǔ),但是在處理海量時(shí)序數(shù)據(jù)時(shí),lsm樹結(jié)構(gòu)也存在比較嚴(yán)重的讀放大、寫放大問題進(jìn)而影響讀寫性能。


技術(shù)實(shí)現(xiàn)思路

1、本發(fā)明是針對(duì)上述現(xiàn)有技術(shù)的不足,提供一種實(shí)用性強(qiáng)的時(shí)序數(shù)據(jù)索引方法。

2、本發(fā)明進(jìn)一步的技術(shù)任務(wù)是提供一種設(shè)計(jì)合理,安全適用的時(shí)序數(shù)據(jù)索引裝置。

3、本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:

4、一種時(shí)序數(shù)據(jù)索引方法,時(shí)序數(shù)據(jù)索引結(jié)構(gòu)的索引項(xiàng)包括一個(gè)區(qū)間范圍內(nèi)所有數(shù)據(jù)位置統(tǒng)計(jì)信息,內(nèi)容包括:

5、(1)區(qū)間范圍開始的時(shí)間ts;

6、(2)區(qū)間范圍內(nèi)第一條記錄在存儲(chǔ)中的邏輯偏移量p;

7、(3)區(qū)間內(nèi)的數(shù)據(jù)記錄數(shù)量c;

8、(4)區(qū)間內(nèi)的數(shù)據(jù)的平均時(shí)間間隔i;

9、區(qū)間范圍的結(jié)束時(shí)間te按(ts+(c-1)*i)得出,因而無需存儲(chǔ)。

10、進(jìn)一步的,查找記錄r1位置的流程如下:

11、a1、通過樹形結(jié)構(gòu)查找算法查找“ts小于待查找記錄r1的時(shí)間tr1”的索引項(xiàng)中區(qū)間范圍開始的時(shí)間最大的索引項(xiàng)e1;

12、a2、如果e1不存在,則記錄r1早于索引中所有記錄,即尚未被索引覆蓋;

13、a3、如果e1存在,檢查e1是否覆蓋tr1。

14、進(jìn)一步的,在步驟a3中,進(jìn)一步包括:

15、a3-1:如果(e1范圍結(jié)束時(shí)間tee1+e1數(shù)據(jù)平均時(shí)間間隔ie1*容錯(cuò)比例)>tr1,則e1覆蓋r1的時(shí)間;

16、(a)找到存儲(chǔ)偏移量pr2=(tr1-tse1)/ie1+pe1(e1第一條記錄在存儲(chǔ)中的邏輯偏移量)對(duì)應(yīng)的記錄r2;

17、(b)如果r2的時(shí)間等于r1的時(shí)間,則找到了記錄;

18、(c)如果r2的時(shí)間小于r1的時(shí)間,從pr2位置向后查找直到找到與r1時(shí)間相等的記錄;

19、(d)如果r2的時(shí)間大于r1的時(shí)間,從pr2位置向前查找直到找到與r1時(shí)間相等的記錄;

20、a3-2:否則,e1未覆蓋r1的時(shí)間,即該索引中未有記錄r1。

21、進(jìn)一步的,索引的插入流程如下:

22、b1、當(dāng)有新記錄r1寫入數(shù)據(jù)表時(shí),需在索引中查找記錄對(duì)應(yīng)的時(shí)間tr1是否已被某索引項(xiàng)e1覆蓋;

23、b2、如果r1位置已經(jīng)被某索引項(xiàng)覆蓋,意味著r1的加入會(huì)改變?cè)饕?xiàng)的時(shí)間間隔規(guī)則,需分裂覆蓋該記錄的索引項(xiàng)e1;

24、b3、如果r1位置未被覆蓋,找到區(qū)間范圍開始時(shí)間小于等于tr1的索引項(xiàng)中區(qū)間范圍開始時(shí)間最大的索引項(xiàng)e2;

25、進(jìn)一步的,在步驟b2中,進(jìn)一步包括:

26、b2-1、如果記錄能夠合并到e1分裂后的前項(xiàng)索引項(xiàng)中,合并記錄到前項(xiàng)索引項(xiàng)中;

27、b2-2、如果記錄不能合并到e1分裂后的前項(xiàng)索引項(xiàng)中,建立新的索引項(xiàng),新增索引項(xiàng)的流程采用傳統(tǒng)樹形結(jié)構(gòu)增加節(jié)點(diǎn)的流程;

28、在步驟b3中,進(jìn)一步包括:

29、b3-1、如果r1能夠合并到e2中,合并記錄到e2中;

30、b3-2、如果r1不能合并到e2中,建立新的索引項(xiàng),新增索引項(xiàng)的流程采用傳統(tǒng)樹形結(jié)構(gòu)增加節(jié)點(diǎn)的流程。

31、進(jìn)一步的,記錄r1與前項(xiàng)索引項(xiàng)ep的合并流程如下:

32、c1、如果前項(xiàng)索引項(xiàng)ep數(shù)據(jù)記錄數(shù)量為1,則可以合并;

33、c2、如果記錄r1的位置pr1不等于ep的第一條記錄位置pep+ep的數(shù)據(jù)記錄數(shù)量cep,則意味著記錄r1與ep中的記錄在存儲(chǔ)空間上不連續(xù),不能合并,退出;

34、c3、如果前項(xiàng)索引項(xiàng)(ep的范圍結(jié)束時(shí)間teep+ep數(shù)據(jù)平均時(shí)間間隔iep*容錯(cuò)比例)>該記錄的時(shí)間戳tr1,則繼續(xù)處理,否則退出;

35、c4、計(jì)算合并后索引項(xiàng)ec的數(shù)據(jù)平均時(shí)間間隔iec=(tr1-合并后索引項(xiàng)的區(qū)間范圍開始的時(shí)間tsec)/(合并后索引項(xiàng)的數(shù)據(jù)記錄數(shù)量cec-1),如果該時(shí)間間隔與原索引項(xiàng)時(shí)間間隔差距小于預(yù)設(shè)閾值,則可以合并;否則退出;

36、c5、合并后索引項(xiàng)的數(shù)據(jù)記錄數(shù)量cec=cep+1;

37、c6、合并后索引項(xiàng)的數(shù)據(jù)平均時(shí)間間隔iec=(新記錄時(shí)間戳tr1-合并后索引項(xiàng)的區(qū)間范圍開始的時(shí)間tsec)/(cec-1)。

38、進(jìn)一步的,索引項(xiàng)e的分裂流程如下:

39、d1、確定索引項(xiàng)分裂的時(shí)間點(diǎn)t;

40、d2、找到時(shí)間點(diǎn)t對(duì)應(yīng)的在存儲(chǔ)文件中的邏輯偏移,用序號(hào)pt代表;

41、d3、原索引項(xiàng)es更新;

42、包括:

43、d3-1、原索引項(xiàng)區(qū)間內(nèi)的數(shù)據(jù)記錄數(shù)量ces=pt-第一條記錄在存儲(chǔ)中的邏輯偏移量pe;

44、d3-2、原索引項(xiàng)區(qū)間內(nèi)的數(shù)據(jù)平均時(shí)間間隔ies=(pt位置記錄的時(shí)間-原索引項(xiàng)的區(qū)間范圍開始的時(shí)間tse)/(ces-1);

45、d4、新索引項(xiàng)en建立;

46、包括:

47、d4-1、找到pt的下一條記錄pt’;

48、d4-2、新索引項(xiàng)的區(qū)間范圍開始的時(shí)間tsen=pt’對(duì)應(yīng)記錄的時(shí)間;

49、d4-3、新索引項(xiàng)區(qū)間內(nèi)的數(shù)據(jù)記錄數(shù)量cen=ce-ces;

50、d4-4、新索引項(xiàng)區(qū)間內(nèi)的數(shù)據(jù)平均時(shí)間間隔ien=(原索引項(xiàng)的區(qū)間范圍結(jié)束的時(shí)間tee-pt’位置記錄的時(shí)間)/(cen-1)。

51、進(jìn)一步的,索引的刪除流程如下:

52、e1、當(dāng)有記錄r被刪除,需在索引中查找記錄對(duì)應(yīng)的時(shí)間在索引上所在的位置;

53、e2、記錄r時(shí)間分裂覆蓋r的索引項(xiàng);

54、e3、對(duì)于分類后的索引項(xiàng)中的前項(xiàng)e:

55、索引項(xiàng)e區(qū)間內(nèi)的數(shù)據(jù)記錄數(shù)量ce=ce-1,如果e的數(shù)據(jù)記錄數(shù)量為0,刪除索引項(xiàng)。

56、一種時(shí)序數(shù)據(jù)索引裝置,包括:至少一個(gè)存儲(chǔ)器和至少一個(gè)處理器;

57、所述至少一個(gè)存儲(chǔ)器,用于存儲(chǔ)機(jī)器可讀程序;

58、所述至少一個(gè)處理器,用于調(diào)用所述機(jī)器可讀程序,執(zhí)行一種時(shí)序數(shù)據(jù)索引方法。

59、本發(fā)明的一種時(shí)序數(shù)據(jù)索引方法及裝置和現(xiàn)有技術(shù)相比,具有以下突出的有益效果:

60、本發(fā)明提出在索引項(xiàng)中記錄鍵值區(qū)間內(nèi)數(shù)據(jù)統(tǒng)計(jì)信息而非原始數(shù)據(jù),從而大幅降低索引所需要存儲(chǔ)的索引項(xiàng)數(shù)目,進(jìn)而減少索引的存儲(chǔ)空間并提升索引的數(shù)據(jù)寫入、查找、更新和刪除效率。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
白水县| 遂溪县| 万年县| 衡山县| 泸水县| 乐亭县| 荆州市| 广宗县| 高清| 琼中| 读书| 五莲县| 禄劝| 钦州市| 通渭县| 策勒县| 观塘区| 尉犁县| 浦东新区| 松潘县| 富川| 乐清市| 桐乡市| 海兴县| 玛纳斯县| 张家川| 易门县| 永登县| 天柱县| 安西县| 利川市| 察隅县| 汾西县| 柞水县| 雷州市| 青神县| 绩溪县| 古蔺县| 阳城县| 昭觉县| 西城区|