亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種數(shù)據(jù)操作方法及系統(tǒng)與流程

文檔序號:11133480閱讀:297來源:國知局
一種數(shù)據(jù)操作方法及系統(tǒng)與制造工藝

本發(fā)明涉及計算機存儲數(shù)據(jù)載體技術(shù)領(lǐng)域,更具體地說,涉及一種數(shù)據(jù)操作方法及系統(tǒng)。



背景技術(shù):

在分布式存儲系統(tǒng)中,為了提高數(shù)據(jù)的可靠性一般采取多副本策略,而在分布式存儲系統(tǒng)中對于數(shù)據(jù)的讀寫通常是通過副本實現(xiàn)的,具體來說,對于存在主、備副本的強一致性模型,寫數(shù)據(jù)時數(shù)據(jù)必須在所有副本均寫入成功才返回ACK(Acknowledgement,確認字符),而讀數(shù)據(jù)時通常利用主副本即可完成數(shù)據(jù)的讀取。

用于實現(xiàn)上述分布式存儲系統(tǒng)中各副本的存儲介質(zhì)通常采用以HDD為代表的傳統(tǒng)存儲介質(zhì)實現(xiàn),這類存儲介質(zhì)擁有大容量、價格低、接口豐富等優(yōu)點,能夠符合分布式存儲系統(tǒng)對上述性能的要求。但是,由于分布式存儲系統(tǒng)的大數(shù)據(jù)特點,通過各副本實現(xiàn)的數(shù)據(jù)讀寫次數(shù)較多,而各副本所采用的上述傳統(tǒng)存儲介質(zhì)則表現(xiàn)出讀寫性能較差的問題。

綜上所述,現(xiàn)有技術(shù)的實現(xiàn)數(shù)據(jù)操作的技術(shù)方案存在系統(tǒng)讀寫性能較差的問題。



技術(shù)實現(xiàn)要素:

本發(fā)明的目的是提供一種數(shù)據(jù)操作方法及系統(tǒng),以解決現(xiàn)有技術(shù)的實現(xiàn)數(shù)據(jù)操作的技術(shù)方案存在的系統(tǒng)讀寫性能較差的問題。

為了實現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:

一種數(shù)據(jù)操作方法,包括:

接收數(shù)據(jù)操作請求,如果所述數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,則訪問主副本分區(qū)獲取與所述數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)并返回該數(shù)據(jù);如果所述數(shù)據(jù)操作請求為數(shù)據(jù)寫請求,則將與所述數(shù)據(jù)寫請求對應(yīng)的寫操作寫入日志分區(qū)中所述主副本分區(qū)及對應(yīng)備副本分區(qū)的日志并返回寫操作完成信息;其中,所述主副本分區(qū)及所述日志分區(qū)均采用高性能存儲介質(zhì)實現(xiàn)。

優(yōu)選的,如果所述數(shù)據(jù)操作請求為數(shù)據(jù)寫請求,則將與所述數(shù)據(jù)寫請求對應(yīng)的寫操作寫入日志分區(qū)中所述主副本分區(qū)及對應(yīng)備副本分區(qū)的日志,包括:

如果所述數(shù)據(jù)操作請求為數(shù)據(jù)寫請求,則判斷所述數(shù)據(jù)寫請求對應(yīng)的數(shù)據(jù)是否大于數(shù)據(jù)閾值,如果否,則對所述數(shù)據(jù)寫請求不做處理,直到接收到多個數(shù)據(jù)寫請求,且該多個數(shù)據(jù)寫請求對應(yīng)的數(shù)據(jù)大于數(shù)據(jù)閾值,則將該多個數(shù)據(jù)寫請求對應(yīng)的寫操作一次性寫入日志分區(qū)中所述主副本分區(qū)及對應(yīng)備副本分區(qū)的日志。

優(yōu)選的,如果所述數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,則訪問主副本分區(qū)獲取與所述數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)并返回該數(shù)據(jù),包括:

如果所述數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,則通過查詢元數(shù)據(jù)獲取所述數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)位置信息,并訪問所述主副本分區(qū)獲取與所述數(shù)據(jù)位置信息對應(yīng)位置的數(shù)據(jù)。

優(yōu)選的,還包括:

如果通過所述元數(shù)據(jù)未獲取到與所述數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)位置信息,則返回數(shù)據(jù)讀失敗信息。

優(yōu)選的,還包括:

基于所述日志分區(qū)中寫入的寫操作將對應(yīng)數(shù)據(jù)寫入所述主副本分區(qū)及備副本分區(qū)中,其中,所述備副本分區(qū)采用HDD實現(xiàn)。

一種數(shù)據(jù)操作系統(tǒng),包括:

主副本分區(qū),用于存儲對應(yīng)數(shù)據(jù);

日志分區(qū),用于存儲主副本分區(qū)及對應(yīng)備副本分區(qū)的日志;

控制模塊,用于接收數(shù)據(jù)操作請求,如果所述數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,則訪問主副本分區(qū)獲取與所述數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)并返回該數(shù)據(jù);如果所述數(shù)據(jù)操作請求為數(shù)據(jù)寫請求,則將與所述數(shù)據(jù)寫請求對應(yīng)的寫操作寫入日志分區(qū)中所述主副本分區(qū)及對應(yīng)備副本分區(qū)的日志并返回寫操作完成信息;

其中,所述主副本分區(qū)及所述日志分區(qū)均采用高性能存儲介質(zhì)實現(xiàn)。

優(yōu)選的,所述控制模塊包括:

寫請求處理單元,用于如果所述數(shù)據(jù)操作請求為數(shù)據(jù)寫請求,則判斷所述數(shù)據(jù)寫請求對應(yīng)的數(shù)據(jù)是否大于數(shù)據(jù)閾值,如果否,則對所述數(shù)據(jù)寫請求不做處理,直到接收到多個數(shù)據(jù)寫請求,且該多個數(shù)據(jù)寫請求對應(yīng)的數(shù)據(jù)大于數(shù)據(jù)閾值,則將該多個數(shù)據(jù)寫請求對應(yīng)的寫操作一次性寫入日志分區(qū)中所述主副本分區(qū)及對應(yīng)備副本分區(qū)的日志。

優(yōu)選的,所述控制模塊包括:

讀請求處理單元,用于如果所述數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,則通過查詢元數(shù)據(jù)獲取所述數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)位置信息,并訪問所述主副本分區(qū)獲取與所述數(shù)據(jù)位置信息對應(yīng)位置的數(shù)據(jù)。

優(yōu)選的,所述讀請求處理單元還包括:

讀請求處理子單元,用于如果通過所述元數(shù)據(jù)未獲取到與所述數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)位置信息,則返回數(shù)據(jù)讀失敗信息。

優(yōu)選的,還包括:

副本寫模塊,用于基于所述日志分區(qū)中寫入的寫操作將對應(yīng)數(shù)據(jù)寫入所述主副本分區(qū)及備副本分區(qū)中,其中,所述備副本分區(qū)采用HDD實現(xiàn)。

本發(fā)明提供了一種數(shù)據(jù)操作方法及系統(tǒng),其中該方法包括:接收數(shù)據(jù)操作請求,如果所述數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,則訪問主副本分區(qū)獲取與所述數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)并返回該數(shù)據(jù);如果所述數(shù)據(jù)操作請求為數(shù)據(jù)寫請求,則將與所述數(shù)據(jù)寫請求對應(yīng)的寫操作寫入日志分區(qū)中所述主副本分區(qū)及對應(yīng)備副本分區(qū)的日志并返回寫操作完成信息;其中,所述主副本分區(qū)及所述日志分區(qū)均采用高性能存儲介質(zhì)實現(xiàn)。本發(fā)明公共的上述技術(shù)方案,當(dāng)數(shù)據(jù)操作請求為數(shù)據(jù)讀請求時通過訪問采用高性能存儲介質(zhì)實現(xiàn)的主副本分區(qū)完成對應(yīng)讀操作,大大提高了系統(tǒng)讀性能;當(dāng)數(shù)據(jù)操作請求為數(shù)據(jù)寫請求時通過將對應(yīng)數(shù)據(jù)寫入日志分區(qū)對應(yīng)主副本分區(qū)及備副本分區(qū)的日志即可返回操作完成信息,大大縮短了寫操作耗時,提高了寫操作性能,且日志分區(qū)為采用高性能存儲介質(zhì)實現(xiàn)的,進一步提高了系統(tǒng)寫性能??梢?,本申請公開的技術(shù)方案達到了對高性能存儲介質(zhì)的有效利用,同時通過日志分區(qū)實現(xiàn)對應(yīng)寫操作,從而大大提高了系統(tǒng)讀寫性能。

附圖說明

為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。

圖1為本發(fā)明實施例提供的一種數(shù)據(jù)操作方法的流程圖;

圖2為本發(fā)明實施例提供的一種數(shù)據(jù)操作方法的具體應(yīng)用場景中日志分區(qū)及各副本的結(jié)構(gòu)示意圖;

圖3為本發(fā)明實施例提供的一種數(shù)據(jù)操作系統(tǒng)的結(jié)構(gòu)示意圖。

具體實施方式

下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

請參閱圖1,其示出了本發(fā)明實施例提供的一種數(shù)據(jù)操作方法的流程圖,可以包括以下步驟:

S11:接收數(shù)據(jù)操作請求,如果數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,則執(zhí)行步驟S12,如果數(shù)據(jù)操作請求為數(shù)據(jù)寫請求,則執(zhí)行步驟S13。

S12:訪問主副本分區(qū)獲取與數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)并返回該數(shù)據(jù);其中,主副本分區(qū)采用高性能存儲介質(zhì)實現(xiàn)。

需要說明的是,主副本分區(qū)主要用來提供快速的數(shù)據(jù)訪問,其中,高性能存儲介質(zhì)即為所能提供的讀寫性能符合預(yù)設(shè)要求的存儲介質(zhì),如以FLASH、DRAM為代表的固態(tài)硬盤SSD與全閃存等,預(yù)設(shè)要求可以由工作人員根據(jù)實際需要進行確定。當(dāng)數(shù)據(jù)操作請求為數(shù)據(jù)讀請求時,可以直接訪問主副本分區(qū),以獲取與數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù),而由于主副本分區(qū)為采用高性能存儲介質(zhì)實現(xiàn)的,由此,大大提高了讀操作性能。

S13:將與數(shù)據(jù)寫請求對應(yīng)的寫操作寫入日志分區(qū)中主副本分區(qū)及對應(yīng)備副本分區(qū)的日志并返回寫操作完成信息;其中,日志分區(qū)采用高性能存儲介質(zhì)實現(xiàn)。

需要說明的是,日志分區(qū)主要為主副本分區(qū)及對應(yīng)備副本分區(qū)提供日志,日志主要具有兩個作用,其一為了保證用戶層面的寫操作的原子性,避免執(zhí)行多個操作時發(fā)生意外造成中間狀態(tài)而無法追溯或者回滾,提供操作進程非正常退出后再啟動的恢復(fù)依據(jù);其二可以縮短寫操作耗時,即寫請求達到時候只需要將其對應(yīng)寫操作寫入日志便可立即回復(fù)寫操作完成信息,操作完成信息具體可以為ACK,無需像現(xiàn)有技術(shù)中一樣等待數(shù)據(jù)全部寫入到主副本分區(qū)及備副本分區(qū)才返回ACK。且日志分區(qū)采用高性能存儲介質(zhì)實現(xiàn),由此,通過存儲介質(zhì)的選取及上述寫操作的實現(xiàn)兩方面實現(xiàn)了寫操作性能的提高。

本發(fā)明公共的上述技術(shù)方案,當(dāng)數(shù)據(jù)操作請求為數(shù)據(jù)讀請求時通過訪問采用高性能存儲介質(zhì)實現(xiàn)的主副本分區(qū)完成對應(yīng)讀操作,大大提高了系統(tǒng)讀性能;當(dāng)數(shù)據(jù)操作請求為數(shù)據(jù)寫請求時通過將對應(yīng)數(shù)據(jù)寫入日志分區(qū)對應(yīng)主副本分區(qū)及備副本分區(qū)的日志即可返回操作完成信息,大大縮短了寫操作耗時,提高了寫操作性能,且日志分區(qū)為采用高性能存儲介質(zhì)實現(xiàn)的,進一步提高了系統(tǒng)寫性能??梢姡旧暾埞_的技術(shù)方案達到了對高性能存儲介質(zhì)的有效利用,同時通過日志分區(qū)實現(xiàn)對應(yīng)寫操作,從而大大提高了系統(tǒng)讀寫性能。

本發(fā)明實施例提供的一種數(shù)據(jù)操作方法,如果數(shù)據(jù)操作請求為數(shù)據(jù)寫請求,則將與數(shù)據(jù)寫請求對應(yīng)的寫操作寫入日志分區(qū)中主副本分區(qū)及對應(yīng)備副本分區(qū)的日志,可以包括:

如果數(shù)據(jù)操作請求為數(shù)據(jù)寫請求,則判斷數(shù)據(jù)寫請求對應(yīng)的數(shù)據(jù)是否大于數(shù)據(jù)閾值,如果否,則對數(shù)據(jù)寫請求不做處理,直到接收到多個數(shù)據(jù)寫請求,且該多個數(shù)據(jù)寫請求對應(yīng)的數(shù)據(jù)大于數(shù)據(jù)閾值,則將該多個數(shù)據(jù)寫請求對應(yīng)的寫操作一次性寫入日志分區(qū)中主副本分區(qū)及對應(yīng)備副本分區(qū)的日志。

其中,數(shù)據(jù)閾值可以根據(jù)實際需要進行確定,如果數(shù)據(jù)寫請求對應(yīng)的數(shù)據(jù)不大于數(shù)據(jù)閾值,則說明該數(shù)據(jù)寫請求為隨機小IO,此時可以繼續(xù)等待接收其他數(shù)據(jù)寫請求,直到接收到的未處理的數(shù)據(jù)寫請求對應(yīng)數(shù)據(jù)大于數(shù)據(jù)閾值,則實現(xiàn)對應(yīng)寫操作。由此,將隨機小IO轉(zhuǎn)化為順序IO,解決了隨機小IO對應(yīng)的頻繁寫操作帶來的性能問題,進一步提高了系統(tǒng)寫性能。

本發(fā)明實施例提供的一種數(shù)據(jù)操作方法,如果數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,則訪問主副本分區(qū)獲取與數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)并返回該數(shù)據(jù),可以包括:

如果數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,則通過查詢元數(shù)據(jù)獲取數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)位置信息,并訪問主副本分區(qū)獲取與數(shù)據(jù)位置信息對應(yīng)位置的數(shù)據(jù)。

其中元數(shù)據(jù)為系統(tǒng)用于維護系統(tǒng)中重要的狀態(tài)位圖和映射信息的數(shù)據(jù)信息,如果數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,可以通過對元數(shù)據(jù)的查詢獲取與數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)的數(shù)據(jù)位置信息,進而實現(xiàn)對數(shù)據(jù)位置信息的數(shù)據(jù)的獲取,完成對應(yīng)的讀操作;從而進一步縮短了讀操作所需時間,提高了系統(tǒng)讀性能。

本發(fā)明實施例提供的一種數(shù)據(jù)操作方法,還可以包括:

如果通過元數(shù)據(jù)未獲取到與數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)位置信息,則返回數(shù)據(jù)讀失敗信息。

返回數(shù)據(jù)讀失敗信息,可以方便發(fā)起數(shù)據(jù)讀請求的發(fā)起方及時獲知讀操作的實現(xiàn)情況,進而做出對應(yīng)的補救措施。

本發(fā)明實施例提供的一種數(shù)據(jù)操作方法,還可以包括:

基于日志分區(qū)中寫入的寫操作將對應(yīng)數(shù)據(jù)寫入主副本分區(qū)及備副本分區(qū)中,其中,備副本分區(qū)采用HDD實現(xiàn)。

其中,在將寫操作寫入日志分區(qū)并返回操作完成信息后,可以將日志分區(qū)中的寫操作對應(yīng)數(shù)據(jù)寫入職對應(yīng)的主副本分區(qū)及備副本分區(qū),最終完成寫操作。本申請中,備副本分區(qū)采用HDD實現(xiàn),HDD具有容量大、價格低及接口豐富等優(yōu)點,由此,本申請中在充分利用高性能存儲介質(zhì)的讀寫性能的同時,結(jié)合傳統(tǒng)存儲介質(zhì)容量高的優(yōu)點,使得系統(tǒng)的性能及容量均達到較高水平。

下面在具體應(yīng)用場景中說明本發(fā)明實施例提供的上述技術(shù)方案,如圖2所示,高性能存儲介質(zhì)設(shè)備主要包括兩部分:日志分區(qū)和主副本分區(qū),其中日志分區(qū)同時為后端大容量普通HDD設(shè)備組成的備副本分區(qū)以及主副本分區(qū)提供日志服務(wù);高性能存儲介質(zhì)設(shè)備和普通HDD設(shè)備掛載在同一臺主機下,故障域以主機為單位劃分;對于一次寫操作,首先經(jīng)過crush算法計算出place group id,然后查詢place group的位置信息,現(xiàn)有技術(shù)中為根據(jù)獲取的place group與各副本分區(qū)的映射信息直接對各副本分區(qū)進行寫操作,而本申請中寫操作首先落在對應(yīng)的日志上,然后返回ACK,至此,寫操作完成;對于一次讀操作,首先查詢所訪問數(shù)據(jù)的數(shù)據(jù)位置信息,然后直接從主副本分區(qū)的數(shù)據(jù)位置信息讀取數(shù)據(jù)。

本發(fā)明實施例還提供了一種數(shù)據(jù)操作系統(tǒng),如圖3所示,可以包括:

主副本分區(qū)11,用于存儲對應(yīng)數(shù)據(jù);

日志分區(qū)12,用于存儲主副本分區(qū)及對應(yīng)備副本分區(qū)的日志;

控制模塊13,用于接收數(shù)據(jù)操作請求,如果數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,則訪問主副本分區(qū)獲取與數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)并返回該數(shù)據(jù);如果數(shù)據(jù)操作請求為數(shù)據(jù)寫請求,則將與數(shù)據(jù)寫請求對應(yīng)的寫操作寫入日志分區(qū)中主副本分區(qū)及對應(yīng)備副本分區(qū)的日志并返回寫操作完成信息;

其中,主副本分區(qū)及日志分區(qū)均采用高性能存儲介質(zhì)實現(xiàn)。

本發(fā)明實施例提供的一種數(shù)據(jù)操作系統(tǒng),控制模塊可以包括:

寫請求處理單元,用于如果數(shù)據(jù)操作請求為數(shù)據(jù)寫請求,則判斷數(shù)據(jù)寫請求對應(yīng)的數(shù)據(jù)是否大于數(shù)據(jù)閾值,如果否,則對數(shù)據(jù)寫請求不做處理,直到接收到多個數(shù)據(jù)寫請求,且該多個數(shù)據(jù)寫請求對應(yīng)的數(shù)據(jù)大于數(shù)據(jù)閾值,則將該多個數(shù)據(jù)寫請求對應(yīng)的寫操作一次性寫入日志分區(qū)中主副本分區(qū)及對應(yīng)備副本分區(qū)的日志。

本發(fā)明實施例提供的一種數(shù)據(jù)操作系統(tǒng),控制模塊可以包括:

讀請求處理單元,用于如果數(shù)據(jù)操作請求為數(shù)據(jù)讀請求,則通過查詢元數(shù)據(jù)獲取數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)位置信息,并訪問主副本分區(qū)獲取與數(shù)據(jù)位置信息對應(yīng)位置的數(shù)據(jù)。

本發(fā)明實施例提供的一種數(shù)據(jù)操作系統(tǒng),讀請求處理單元還可以包括:

讀請求處理子單元,用于如果通過元數(shù)據(jù)未獲取到與數(shù)據(jù)讀請求對應(yīng)的數(shù)據(jù)位置信息,則返回數(shù)據(jù)讀失敗信息。

本發(fā)明實施例提供的一種數(shù)據(jù)操作系統(tǒng),還可以包括:

副本寫模塊,用于基于日志分區(qū)中寫入的寫操作將對應(yīng)數(shù)據(jù)寫入主副本分區(qū)及備副本分區(qū)中,其中,備副本分區(qū)采用HDD實現(xiàn)。

本發(fā)明實施例提供的一種數(shù)據(jù)操作方法及系統(tǒng)可以應(yīng)用于包含有主、備副本的分布式存儲系統(tǒng)中,當(dāng)然還可以應(yīng)用于包含有主、備副本的其他系統(tǒng)中,均在本發(fā)明的保護范圍之內(nèi);而本發(fā)明實施例提供的一種數(shù)據(jù)操作系統(tǒng)中相關(guān)部分的說明請參見本發(fā)明實施例提供的一種數(shù)據(jù)操作方法中對應(yīng)部分的詳細說明,在此不再贅述。

對所公開的實施例的上述說明,使本領(lǐng)域技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實施例的多種修改對本領(lǐng)域技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實施例中實現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的范圍。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1