System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 亚洲AV无码一区二区三区性色 ,最新无码专区视频在线,色综合99久久久无码国产精品
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種基于可配置MMU的分塊式KV存儲方法及系統技術方案

    技術編號:43395960 閱讀:12 留言:0更新日期:2024-11-19 18:12
    本發明專利技術公開了一種基于可配置MMU的分塊式KV存儲方法及系統,涉及數據存儲技術領域。該方法包括:選擇并配置MMU中所需的NSID類型,確定對應的section大小和Hash類型;根據Hash類型確定Hash?table的大小,計算出section的數量;為每個section分配一個指針,并采用內存塊來存儲不同section對應的指針;通過MMU配置接口提交所有參數,硬件根據配置的參數自動管理Hash?table和物理地址空間的映射關系,并進行動態調整和優化。本發明專利技術通過動態配置和優化NSID及其對應的section,在提高系統讀寫性能的同時,實現了物理地址空間的靈活管理。

    【技術實現步驟摘要】

    本專利技術涉及數據存儲,尤其涉及一種基于可配置mmu的分塊式kv存儲方法及系統。


    技術介紹

    1、kv存儲,即鍵值存儲(key-value?store),是一種非常簡單且高效的數據存儲方式。它將數據以鍵值對的形式存儲,每個鍵(key)是唯一的,類似于字典中的“詞條”,而每個值(value)則是與這個鍵關聯的數據。kv存儲被廣泛應用于需要快速存取大量數據的場景,比如緩存系統(如redis、memcached)、數據庫(如cassandra、dynamodb)等。

    2、kv存儲技術主要依賴于lsm-tree(log-structured?merge-tree)和hash表(hashtable)兩種實現方式。lsm-tree通過合并不同層次的數據來優化寫入性能,但讀取時可能涉及多個層次的查找,導致讀取延遲較高,且lsm-tree的實現通常較為復雜,對系統資源的消耗也相對較大。hash表主要解決查找效率問題,其實現方法相對容易,因此現有的kv-ssd(鍵值固態硬盤)主要基于hash表實現。

    3、在傳統的hash表中,不同的數據有時會被分配到同一個位置,這就是?“hash沖突”。當發生hash沖突時,通常會將沖突的數據鏈式存儲在同一個位置下,這叫“鏈地址法”,即為每一個hash沖突建立一個鏈表。數據量較大時這些鏈會變得很長,例如對于大小為m的hash表(hash?table),有m條連續的鏈,從0到(m-1),導致數據查找速度變慢,系統性能下降。同時,hash表的數據通常被固定地存儲在某一種類型的存儲介質中,比如速度快但容量小的dram或容量大但速度慢的tlc,對于不同類型的存儲介質(如dram、slc、mlc、tlc等),單一的hash表存儲策略難以滿足同時滿足高速、大容量等多樣化的性能需求。

    4、此外,現有的kv存儲系統主要依賴軟件來管理和更新hash表,這會占用大量的主機資源,尤其在數據量很大時,主機的計算壓力會顯著增加,導致性能下降。在數據存儲過程中,存儲空間往往會被碎片化,也就是說數據被分散存儲在不連續的存儲塊中,導致空間利用率降低,大量存儲空間浪費,而且查找數據時也會變慢。


    技術實現思路

    1、針對鏈地址法在hash沖突中的局限性、單一的固定存儲路徑無法同時兼顧高性能和大容量的需求、軟件實現的kv存儲方式導致系統性能下降、缺乏對碎片空間的有效利用等問題,本專利技術提出一種基于可配置mmu的分塊式kv存儲方法及系統,結合硬件和mmu技術,既提升了系統性能,又優化了存儲空間的利用。

    2、為了實現上述目的,本專利技術通過如下的技術方案來實現:

    3、一種基于可配置mmu的分塊式kv存儲方法,所述方法包括:

    4、根據系統讀寫性能和存儲量的要求,選擇并配置mmu中所需的nsid類型;

    5、根據nsid類型確定與所述nsid類型對應的section大小和hash類型;

    6、根據所述hash類型確定hash?table的大小,基于hash?table的大小和section大小計算出section的數量;

    7、在mmu配置接口中,為每個section分配一個指針,并采用內存塊來存儲不同section對應的指針,所述指針指向物理地址空間中的實際位置,用于存儲section的數據;

    8、配置完成后,通過mmu配置接口提交所有參數,硬件根據配置的參數自動管理hashtable和物理地址空間的映射關系;

    9、系統運行過程中,硬件根據實時的讀寫操作需求進行動態調整和優化。

    10、本專利技術的進一步改進在于,同一個nsid所對應的所有section的指針存儲于同一個內存塊的連續地址區間,系統首先自動配置與該nsid對應的第一個section的指針所在的內存地址,然后根據該內存地址,自動計算并配置其余各個section的指針的內存地址。

    11、本專利技術的進一步改進在于,所述硬件根據配置的參數自動管理hash?table和物理地址空間的映射關系,具體包括:根據鍵值對的鍵進行hash計算,以確定鍵在hash?table中的位置,然后硬件通過mmu找到對應section的指針,根據指針定位到物理地址空間的具體位置,執行相應的增、刪、改、查操作。

    12、本專利技術的進一步改進在于,所述mmu能夠配置多個nsid,每個nsid配置多個section,每個section對應一個指針;同一nsid下的每個section在物理地址空間中的存儲位置是連續的,同一nsid下的不同section在物理地址空間中的存儲位置是離散的、非連續的。

    13、本專利技術的進一步改進在于,所述動態調整和優化,包括:

    14、所述mmu能夠用于多個nsid的動態配置,包括改變nsid對應的section的大小,以及為調整后的section重新分配指針,并通過硬件加速實現對應hash?table的動態變更。

    15、本專利技術的進一步改進在于,所述動態調整和優化還包括mmu能夠進一步通過動態變更section對應的指針來調整物理地址空間,包括在同一存儲介質內調整section的位置或將section從一種存儲介質遷移到另一種存儲介質,并通過硬件加速執行從舊hashtable到新hash?table的轉換,所述轉換通過配置rehash命令的使能來實現。

    16、本專利技術的進一步改進在于,所述通過配置rehash命令的使能來實現,包括以下步驟:

    17、將當前的hash?table進行鎖定,禁止新的讀寫操作;

    18、依據新的section分布情況生成新的hash?table,在所有section的地址重新分配完成后,釋放鎖定并啟用新的hash?table用于后續的鍵值對管理。

    19、一種基于可配置mmu的分塊式kv存儲系統,所述系統包括:

    20、mmu單元,用于根據配置的參數自動管理hash?table和物理地址空間的映射關系,根據實時的讀寫操作需求進行動態調整和優化;

    21、一個mmu配置接口,用于根據系統的讀寫性能和存儲量要求,選擇并配置所需的nsid類型,并基于所述nsid類型確定section大小和hash類型,進而配置hash?table的大小,分配section的指針,并將指針映射到物理地址空間中的實際位置;

    22、多個存儲單元,用于存儲分塊式kv數據,其中每個存儲單元包括多個section;

    23、一個hash?table,用于根據鍵值對中的鍵確定鍵在hash?table中的位置。

    24、本專利技術的有益效果是:基于可配置的mmu映射關系,將hash?table離散化并映射到不同區域,可以充分利用碎片化的空間,并擴展新的存儲空間,同時通過硬件加速實現mmu映射表的動態變更,減輕主機壓力。通過分塊(section)管理hash?table,減少了映射表的開銷,并將連續的地址區間碎片化,更有效地利用離散的空間,提本文檔來自技高網...

    【技術保護點】

    1.一種基于可配置MMU的分塊式KV存儲方法,其特征在于,所述方法包括:

    2.根據權利要求1所述的一種基于可配置MMU的分塊式KV存儲方法,其特征在于,同一個NSID所對應的所有section的指針存儲于同一個內存塊的連續地址區間,系統首先自動配置與該NSID對應的第一個section的指針所在的內存地址,然后根據該內存地址,自動計算并配置其余各個section的指針的內存地址。

    3.?根據權利要求1所述的一種基于可配置MMU的分塊式KV存儲方法,其特征在于,所述硬件根據配置的參數自動管理Hash?table和物理地址空間的映射關系,具體包括:根據鍵值對的鍵進行Hash計算,以確定鍵在Hash?table中的位置,然后硬件通過MMU找到對應section的指針,根據指針定位到物理地址空間的具體位置,執行相應的增、刪、改、查操作。

    4.根據權利要求3所述的一種基于可配置MMU的分塊式KV存儲方法,其特征在于,所述MMU能夠配置多個NSID,每個NSID配置多個section,每個section對應一個指針;同一NSID下的每個section在物理地址空間中的存儲位置是連續的,同一NSID下的不同section在物理地址空間中的存儲位置是離散的、非連續的。

    5.根據權利要求1所述的一種基于可配置MMU的分塊式KV存儲方法,其特征在于,所述動態調整和優化,包括:

    6.?根據權利要求5所述的一種基于可配置MMU的分塊式KV存儲方法,其特征在于,所述動態調整和優化還包括MMU能夠進一步通過動態變更section對應的指針來調整物理地址空間,包括在同一存儲介質內調整section的位置或將section從一種存儲介質遷移到另一種存儲介質,并通過硬件加速執行從舊Hash?table到新Hash?table的轉換,所述轉換通過配置Rehash命令的使能來實現。

    7.根據權利要求6所述的一種基于可配置MMU的分塊式KV存儲方法,其特征在于,所述通過配置Rehash命令的使能來實現,包括以下步驟:

    8.基于權利要求1-7任一項所述的一種基于可配置MMU的分塊式KV存儲方法的存儲系統,其特征在于,所述系統包括:

    ...

    【技術特征摘要】

    1.一種基于可配置mmu的分塊式kv存儲方法,其特征在于,所述方法包括:

    2.根據權利要求1所述的一種基于可配置mmu的分塊式kv存儲方法,其特征在于,同一個nsid所對應的所有section的指針存儲于同一個內存塊的連續地址區間,系統首先自動配置與該nsid對應的第一個section的指針所在的內存地址,然后根據該內存地址,自動計算并配置其余各個section的指針的內存地址。

    3.?根據權利要求1所述的一種基于可配置mmu的分塊式kv存儲方法,其特征在于,所述硬件根據配置的參數自動管理hash?table和物理地址空間的映射關系,具體包括:根據鍵值對的鍵進行hash計算,以確定鍵在hash?table中的位置,然后硬件通過mmu找到對應section的指針,根據指針定位到物理地址空間的具體位置,執行相應的增、刪、改、查操作。

    4.根據權利要求3所述的一種基于可配置mmu的分塊式kv存儲方法,其特征在于,所述mmu能夠配置多個nsid,每個nsid配置多個section,每個section對應一個指針...

    【專利技術屬性】
    技術研發人員:王明軒王曉寄楊凡
    申請(專利權)人:鵬鈦存儲技術南京有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 久久久久久国产精品无码超碰| 亚洲av永久无码精品网址| 精品无码三级在线观看视频| 少妇中文无码高清| 亚洲av无码一区二区三区乱子伦| 中文字幕AV无码一区二区三区| 亚洲精品无码久久久久AV麻豆| 久久国产精品无码一区二区三区| 男人av无码天堂| 无码137片内射在线影院| 日韩精品无码免费视频| 亚洲AV综合色区无码二区偷拍| 国产无码一区二区在线| 18禁成年无码免费网站无遮挡 | 无码一区二区三区视频| 内射无码专区久久亚洲| 无码中文字幕一区二区三区| 午夜无码国产理论在线| 少妇性饥渴无码A区免费| 人妻无码一区二区三区| 国产精品爆乳奶水无码视频| 18禁免费无码无遮挡不卡网站| 亚洲日韩精品无码一区二区三区| 亚洲一区无码精品色| 亚欧无码精品无码有性视频| 成人无码精品一区二区三区| 亚洲精品无码成人片久久不卡| AAA级久久久精品无码片| 日韩丰满少妇无码内射| 人妻无码一区二区不卡无码av| 中文字幕乱偷无码AV先锋| 国内精品人妻无码久久久影院导航| 人妻av无码专区| 久久久无码精品亚洲日韩软件| 日韩精品无码免费专区午夜 | 无码午夜成人1000部免费视频| 国产成人无码一区二区在线播放| 在线精品无码字幕无码AV| 国产精品多人p群无码| 亚洲av永久无码精品网站| 久久精品aⅴ无码中文字字幕|