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

一種異構(gòu)環(huán)境下面向?qū)ο蟮臄?shù)據(jù)存儲(chǔ)系統(tǒng)及方法與流程

文檔序號(hào):11677674閱讀:281來(lái)源:國(guó)知局
本發(fā)明涉及數(shù)據(jù)存儲(chǔ)技術(shù),尤其是一種異構(gòu)環(huán)境下面向?qū)ο蟮臄?shù)據(jù)存儲(chǔ)系統(tǒng)及方法。
背景技術(shù)
::現(xiàn)有的數(shù)據(jù)存儲(chǔ)方案主要有兩種,一種是關(guān)系數(shù)據(jù)庫(kù)存儲(chǔ),一種是關(guān)系數(shù)據(jù)庫(kù)索引、磁盤(pán)文件存儲(chǔ)。關(guān)系數(shù)據(jù)庫(kù)適合存儲(chǔ)少量的結(jié)構(gòu)化數(shù)據(jù)(通常不大于gb級(jí)別),對(duì)查詢功能支持較好。關(guān)系數(shù)據(jù)庫(kù)存儲(chǔ)的缺陷主要包括維護(hù)成本高、存儲(chǔ)效率低、難以動(dòng)態(tài)擴(kuò)容等。首先,關(guān)系數(shù)據(jù)庫(kù)存儲(chǔ)前均需設(shè)計(jì)數(shù)據(jù)庫(kù)存儲(chǔ)模型,然后利用一系列sql語(yǔ)句進(jìn)行數(shù)據(jù)的存取操作,當(dāng)數(shù)據(jù)模型發(fā)生變化時(shí),需更改數(shù)據(jù)庫(kù)存儲(chǔ)模型、sql語(yǔ)句等,大大降低了軟件開(kāi)發(fā)與維護(hù)效率;其次,關(guān)系數(shù)據(jù)庫(kù)存儲(chǔ)前需進(jìn)行數(shù)據(jù)的完整性、一致性等檢查,存儲(chǔ)速率低,難以滿足實(shí)時(shí)數(shù)據(jù)存儲(chǔ)要求;最后,關(guān)系數(shù)據(jù)庫(kù)由于數(shù)據(jù)庫(kù)表的各種約束很難進(jìn)行分布式設(shè)計(jì),整體存儲(chǔ)容量受限于單個(gè)磁盤(pán)的容量,難以進(jìn)行動(dòng)態(tài)擴(kuò)容,無(wú)法滿足海量數(shù)據(jù)存儲(chǔ)要求。關(guān)系數(shù)據(jù)庫(kù)索引、磁盤(pán)文件存儲(chǔ)在一定程度上能夠解決容量問(wèn)題,但此方式破壞了數(shù)據(jù)的整體性,磁盤(pán)文件容易發(fā)生變動(dòng)從而引發(fā)數(shù)據(jù)失效。伴隨著國(guó)產(chǎn)化進(jìn)程的推進(jìn),多操作系統(tǒng)、多存儲(chǔ)介質(zhì)、多編程語(yǔ)言環(huán)境下數(shù)據(jù)的互聯(lián)互通成為大系統(tǒng)研制的關(guān)鍵與挑戰(zhàn),而單機(jī)關(guān)系數(shù)據(jù)庫(kù)存儲(chǔ)或簡(jiǎn)單的磁盤(pán)文件存儲(chǔ)已無(wú)法勝任未來(lái)的數(shù)據(jù)存儲(chǔ)與交換要求。技術(shù)實(shí)現(xiàn)要素:針對(duì)當(dāng)前一些應(yīng)用環(huán)境復(fù)雜、數(shù)據(jù)量大、存儲(chǔ)時(shí)效性高等要求的數(shù)據(jù)存儲(chǔ)應(yīng)用場(chǎng)景,本發(fā)明提供了一種基于混合存儲(chǔ)介質(zhì)的數(shù)據(jù)存儲(chǔ)方式以及面向?qū)ο蟮臄?shù)據(jù)訪問(wèn)與交換機(jī)制?;旌洗鎯?chǔ)介質(zhì)是指包括內(nèi)存鍵值數(shù)據(jù)庫(kù)、磁盤(pán)鍵值數(shù)據(jù)庫(kù)和磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)等多種類型的數(shù)據(jù)存儲(chǔ)方式。各存儲(chǔ)介質(zhì)統(tǒng)一通過(guò)跨平臺(tái)數(shù)據(jù)交換格式進(jìn)行面向?qū)ο蟮臄?shù)據(jù)存儲(chǔ)和訪問(wèn)。本發(fā)明提供的異構(gòu)環(huán)境下面向?qū)ο蟮臄?shù)據(jù)存儲(chǔ)系統(tǒng),包括:統(tǒng)一對(duì)象訪問(wèn)單元,用于向用戶提供統(tǒng)一的數(shù)據(jù)訪問(wèn)接口并接收用戶根據(jù)數(shù)據(jù)訪問(wèn)接口輸入的數(shù)據(jù)訪問(wèn)請(qǐng)求;請(qǐng)求分發(fā)單元,用于接收數(shù)據(jù)訪問(wèn)請(qǐng)求,并根據(jù)訪問(wèn)請(qǐng)求指定的數(shù)據(jù)庫(kù)將訪問(wèn)請(qǐng)求映射為該數(shù)據(jù)庫(kù)能識(shí)別的訪問(wèn)指令,并將訪問(wèn)指令發(fā)送給指定的數(shù)據(jù)庫(kù);數(shù)據(jù)混合存儲(chǔ)單元,包括多個(gè)數(shù)據(jù)庫(kù);各個(gè)數(shù)據(jù)庫(kù)用于存儲(chǔ)數(shù)據(jù)并根據(jù)訪問(wèn)指令完成相應(yīng)的數(shù)據(jù)操作。進(jìn)一步,數(shù)據(jù)混合存儲(chǔ)單元包括內(nèi)存鍵值數(shù)據(jù)庫(kù)、磁盤(pán)鍵值數(shù)據(jù)庫(kù)以及磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)。進(jìn)一步,所述統(tǒng)一的數(shù)據(jù)訪問(wèn)接口為api接口,用戶的數(shù)據(jù)訪問(wèn)請(qǐng)求中包含反應(yīng)指定數(shù)據(jù)庫(kù)的存儲(chǔ)鍵參數(shù)。進(jìn)一步,請(qǐng)求分發(fā)單元用于解析數(shù)據(jù)訪問(wèn)請(qǐng)求中的存儲(chǔ)鍵參數(shù),當(dāng)存儲(chǔ)鍵參數(shù)指向內(nèi)存鍵值數(shù)據(jù)庫(kù)或磁盤(pán)鍵值數(shù)據(jù)庫(kù)時(shí)直接將訪問(wèn)請(qǐng)求發(fā)送給內(nèi)存鍵值數(shù)據(jù)庫(kù)或磁盤(pán)鍵值數(shù)據(jù)庫(kù);當(dāng)存儲(chǔ)鍵參數(shù)指向磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)時(shí),則將訪問(wèn)請(qǐng)求映射為sql訪問(wèn)指令并發(fā)送給磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)。進(jìn)一步,數(shù)據(jù)訪問(wèn)接口包括數(shù)據(jù)存儲(chǔ)接口、數(shù)據(jù)獲取接口、數(shù)據(jù)查詢接口、數(shù)據(jù)刪除接口以及數(shù)據(jù)發(fā)布訂閱接口。本發(fā)明還提供了一種異構(gòu)環(huán)境下面向?qū)ο蟮臄?shù)據(jù)存儲(chǔ)方法,包括:向用戶提供統(tǒng)一的數(shù)據(jù)訪問(wèn)接口并接收用戶根據(jù)數(shù)據(jù)訪問(wèn)接口輸入的數(shù)據(jù)訪問(wèn)請(qǐng)求;根據(jù)訪問(wèn)請(qǐng)求指定的數(shù)據(jù)庫(kù)將訪問(wèn)請(qǐng)求映射為該數(shù)據(jù)庫(kù)能識(shí)別的訪問(wèn)指令,并將訪問(wèn)指令發(fā)送給指定的數(shù)據(jù)庫(kù);接收到訪問(wèn)指令的數(shù)據(jù)庫(kù)根據(jù)所述訪問(wèn)指令完成相應(yīng)的數(shù)據(jù)操作。進(jìn)一步,數(shù)據(jù)混合存儲(chǔ)單元包括內(nèi)存鍵值數(shù)據(jù)庫(kù)、磁盤(pán)鍵值數(shù)據(jù)庫(kù)以及磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)。進(jìn)一步,所述統(tǒng)一的數(shù)據(jù)訪問(wèn)接口為api接口,用戶的數(shù)據(jù)訪問(wèn)請(qǐng)求中包含反應(yīng)指定數(shù)據(jù)庫(kù)的存儲(chǔ)鍵參數(shù)。進(jìn)一步,還包括以下步驟:解析數(shù)據(jù)訪問(wèn)請(qǐng)求中的存儲(chǔ)鍵參數(shù),當(dāng)存儲(chǔ)鍵參數(shù)指向內(nèi)存鍵值數(shù)據(jù)庫(kù)或磁盤(pán)鍵值數(shù)據(jù)庫(kù)時(shí)直接將訪問(wèn)請(qǐng)求發(fā)送給內(nèi)存鍵值數(shù)據(jù)庫(kù)或磁盤(pán)鍵值數(shù)據(jù)庫(kù);當(dāng)存儲(chǔ)鍵參數(shù)指向磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)時(shí),則將訪問(wèn)請(qǐng)求映射為sql訪問(wèn)指令并發(fā)送給磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)。進(jìn)一步,數(shù)據(jù)訪問(wèn)接口包括數(shù)據(jù)存儲(chǔ)接口、數(shù)據(jù)獲取接口、數(shù)據(jù)查詢接口、數(shù)據(jù)刪除接口以及數(shù)據(jù)發(fā)布訂閱接口。由于采用了上述技術(shù)方案,本發(fā)明具有以下有益效果:1.本發(fā)明提出混合存儲(chǔ)體制,內(nèi)存鍵值數(shù)據(jù)庫(kù)能夠?qū)崿F(xiàn)數(shù)據(jù)的快速訪問(wèn),磁盤(pán)數(shù)據(jù)庫(kù)能夠滿足數(shù)據(jù)存儲(chǔ)量大、易擴(kuò)展的要求,同時(shí)解決了實(shí)時(shí)數(shù)據(jù)、海量數(shù)據(jù)和事務(wù)數(shù)據(jù)混合存儲(chǔ)的難題。2.現(xiàn)有的硬編碼數(shù)據(jù)定義方式難以適應(yīng)不斷變化的業(yè)務(wù)需求,本發(fā)明采用統(tǒng)一的數(shù)據(jù)交換格式,當(dāng)業(yè)務(wù)發(fā)生變化時(shí)僅需變動(dòng)數(shù)據(jù)格式的定義而無(wú)須變更數(shù)據(jù)的序列化/反序列化、數(shù)據(jù)的訪問(wèn)接口等。3.提供了異構(gòu)環(huán)境下數(shù)據(jù)互聯(lián)互通能力。本發(fā)明通過(guò)對(duì)數(shù)據(jù)交換格式的統(tǒng)一、對(duì)混合存儲(chǔ)介質(zhì)傳輸協(xié)議的適配、對(duì)編程語(yǔ)言的適配,實(shí)現(xiàn)了跨操作系統(tǒng)、跨編程語(yǔ)言和跨存儲(chǔ)介質(zhì)之間的數(shù)據(jù)的互聯(lián)互通。附圖說(shuō)明本發(fā)明將通過(guò)例子并參照附圖的方式說(shuō)明,其中:圖1為本發(fā)明系統(tǒng)原理框圖。具體實(shí)施方式本說(shuō)明書(shū)中公開(kāi)的所有特征,或公開(kāi)的所有方法或過(guò)程中的步驟,除了互相排斥的特征和/或步驟以外,均可以以任何方式組合。本說(shuō)明書(shū)中公開(kāi)的任一特征,除非特別敘述,均可被其他等效或具有類似目的的替代特征加以替換。即,除非特別敘述,每個(gè)特征只是一系列等效或類似特征中的一個(gè)例子而已。如圖1所示,本發(fā)明提供的異構(gòu)環(huán)境下面向?qū)ο蟮臄?shù)據(jù)存儲(chǔ)系統(tǒng),包括:統(tǒng)一對(duì)象訪問(wèn)單元、請(qǐng)求分發(fā)單元以及數(shù)據(jù)混合存儲(chǔ)單元。本實(shí)施例中數(shù)據(jù)庫(kù)主要包括內(nèi)存鍵值數(shù)據(jù)庫(kù)、磁盤(pán)鍵值數(shù)據(jù)庫(kù)和磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)。其中內(nèi)存鍵值數(shù)據(jù)庫(kù)駐留在內(nèi)存,以key-value的方式存儲(chǔ)數(shù)據(jù),具備輕量、高速等特點(diǎn),適合存儲(chǔ)小量實(shí)時(shí)數(shù)據(jù);磁盤(pán)鍵值數(shù)據(jù)庫(kù)以key-value方式存儲(chǔ)數(shù)據(jù),具備高速、擴(kuò)展性好等特點(diǎn),適合存儲(chǔ)海量數(shù)據(jù);磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)以數(shù)據(jù)庫(kù)表的方式存儲(chǔ)數(shù)據(jù),具備一致性好和完整性好等特點(diǎn),適合存儲(chǔ)結(jié)構(gòu)化數(shù)據(jù)和對(duì)事務(wù)要求較高的數(shù)據(jù)。統(tǒng)一對(duì)象訪問(wèn)單元主要向用戶提供統(tǒng)一的數(shù)據(jù)訪問(wèn)接口,通過(guò)用戶對(duì)接口的調(diào)用提出數(shù)據(jù)訪問(wèn)請(qǐng)求。本實(shí)施例利用標(biāo)準(zhǔn)數(shù)據(jù)轉(zhuǎn)換協(xié)議對(duì)數(shù)據(jù)結(jié)構(gòu)進(jìn)行定義和轉(zhuǎn)換,統(tǒng)一了數(shù)據(jù)在不同操作系統(tǒng)和編程語(yǔ)言之間交換的標(biāo)準(zhǔn)。具體訪問(wèn)接口包括數(shù)據(jù)存儲(chǔ)接口、數(shù)據(jù)獲取接口、數(shù)據(jù)查詢接口、數(shù)據(jù)刪除接口和數(shù)據(jù)發(fā)布訂閱接口等。請(qǐng)求分發(fā)單元主要實(shí)現(xiàn)了基于約定的方式將訪問(wèn)請(qǐng)求動(dòng)態(tài)轉(zhuǎn)換或者映射為數(shù)據(jù)庫(kù)命令并分發(fā)至具體的數(shù)據(jù)庫(kù)。本實(shí)施例中的數(shù)據(jù)訪問(wèn)接口均包含存儲(chǔ)鍵參數(shù),用于標(biāo)識(shí)每每一條數(shù)據(jù)。分發(fā)策略如下:存儲(chǔ)鍵參數(shù)中包含memory關(guān)鍵字時(shí),認(rèn)為該訪問(wèn)請(qǐng)求指向內(nèi)存鍵值數(shù)據(jù)庫(kù),將訪問(wèn)請(qǐng)求分發(fā)至內(nèi)存鍵值數(shù)據(jù)庫(kù);存儲(chǔ)鍵參數(shù)中包含disk關(guān)鍵字時(shí),認(rèn)為該訪問(wèn)請(qǐng)求指向磁盤(pán)鍵值數(shù)據(jù)庫(kù),將訪問(wèn)請(qǐng)求分發(fā)至磁盤(pán)鍵值數(shù)據(jù)庫(kù);存儲(chǔ)鍵參數(shù)中包含table關(guān)鍵字時(shí),認(rèn)為訪問(wèn)請(qǐng)求指向磁盤(pán)關(guān)系數(shù)據(jù)庫(kù),將訪問(wèn)請(qǐng)求分發(fā)至磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)。由于適配了各存儲(chǔ)介質(zhì)的傳輸協(xié)議,外部應(yīng)用能夠透明的訪問(wèn)混合存儲(chǔ)介質(zhì)而無(wú)須了解請(qǐng)求分發(fā)的細(xì)節(jié)。各個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)有數(shù)據(jù)并根據(jù)訪問(wèn)指令完成相應(yīng)的數(shù)據(jù)操作。在又一具體實(shí)施例中,統(tǒng)一的數(shù)據(jù)訪問(wèn)接口為api接口。當(dāng)存儲(chǔ)鍵參數(shù)指向內(nèi)存鍵值數(shù)據(jù)庫(kù)或磁盤(pán)鍵值數(shù)據(jù)庫(kù)時(shí)直接將訪問(wèn)請(qǐng)求發(fā)送給內(nèi)存鍵值數(shù)據(jù)庫(kù)或磁盤(pán)鍵值數(shù)據(jù)庫(kù);當(dāng)存儲(chǔ)鍵參數(shù)指向磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)時(shí),則將訪問(wèn)請(qǐng)求映射為sql訪問(wèn)指令并發(fā)送給磁盤(pán)關(guān)系數(shù)據(jù)庫(kù)。下面以獲取數(shù)據(jù)為例,闡述本發(fā)明系統(tǒng)的工作過(guò)程:用戶調(diào)用系統(tǒng)向用戶提供統(tǒng)一的數(shù)據(jù)獲取接口,發(fā)出數(shù)據(jù)獲取請(qǐng)求,請(qǐng)求中的存儲(chǔ)鍵參數(shù)為memory。系統(tǒng)的統(tǒng)一對(duì)象訪問(wèn)單元獲取用戶的訪問(wèn)請(qǐng)求,并傳輸給請(qǐng)求分發(fā)單元。請(qǐng)求分發(fā)單元解析訪問(wèn)請(qǐng)求中的存儲(chǔ)鍵參數(shù),得知該請(qǐng)求訪問(wèn)是指向內(nèi)存鍵值數(shù)據(jù)庫(kù)的,因此無(wú)需對(duì)api接口的訪問(wèn)請(qǐng)求進(jìn)行映射或轉(zhuǎn)換,便可直接將該訪問(wèn)請(qǐng)求發(fā)送給指定的內(nèi)存鍵值數(shù)據(jù)庫(kù)。接收到訪問(wèn)指令的內(nèi)存鍵值數(shù)據(jù)庫(kù)將目標(biāo)數(shù)據(jù)取出并返回給用戶。本發(fā)明并不局限于前述的具體實(shí)施方式。本發(fā)明擴(kuò)展到任何在本說(shuō)明書(shū)中披露的新特征或任何新的組合,以及披露的任一新的方法或過(guò)程的步驟或任何新的組合。當(dāng)前第1頁(yè)12當(dāng)前第1頁(yè)12
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
红原县| 蕉岭县| 永和县| 斗六市| 垦利县| 阳江市| 建始县| 金阳县| 临桂县| 青海省| 佛坪县| 确山县| 彭山县| 泸定县| 信阳市| 开化县| 达拉特旗| 从化市| 扎赉特旗| 滨州市| 三都| 耒阳市| 娄底市| 中方县| 浮山县| 大宁县| 靖边县| 六枝特区| 唐河县| 南昌县| 梅河口市| 房山区| 安康市| 吴堡县| 茶陵县| 大化| 贵溪市| 望谟县| 岳西县| 班戈县| 星座|