[發明專利]一種高并發的存儲裝置在審
| 申請號: | 201510703531.1 | 申請日: | 2015-10-26 |
| 公開(公告)號: | CN105183922A | 公開(公告)日: | 2015-12-23 |
| 發明(設計)人: | 周盛寬 | 申請(專利權)人: | 北京美數信息科技有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100124 北京市朝陽區百子灣西*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 并發 存儲 裝置 | ||
技術領域
本發明涉及一種內存數據庫裝置,特別是涉及一種高并發的存儲裝置。
背景技術
現有數據庫分為關系型和非關系型數據庫。關系型數據庫便于存儲結構化數據,支持復雜查詢和數據分析,但是查詢速度較慢。
隨著互聯網web2.0網站的興起,傳統的關系數據庫在應付web2.0網站,特別是超大規模和高并發的SNS類型的web2.0純動態網站已經顯得力不從心,暴露了很多難以克服的問題,而非關系型的數據庫則由于其本身的特點得到了非常迅速的發展。NoSQL數據庫的產生就是為了解決大規模數據集合多重數據種類帶來的挑戰,尤其是大數據應用難題。
非關系型數據庫可存取非結構化數據,速度相對關系數據庫有較大提升,但是高并發的情況下依然不能滿足高速存取的效率問題。
發明內容
本發明的目的是提出一種低延時、多進程、高吞吐的高并發的存儲裝置,已解決高并發的情況下高效、高速地存儲數據。
為實現上述目的,本發明提供了一種高并發的存儲裝置,包括應用程序進行訪問操作的統一訪問接口、擴展數據庫存儲引擎的存儲結構單元,所述存儲結構單元中的內存分配使用共享內存分配管理,所述裝置在統一訪問接口中對數據預先進行分片處理;
所述分片處理包括如下步驟:獲得鍵,并對鍵計算哈希數,將所得哈希數對分片數量取余,結果即為鍵的分片序號,之后所述裝置根據所述分片號獲取分片;
所述統一訪問接口包括查詢接口、累加接口,并且所述應用程序進行數據查詢、累加操作時,所述裝置不需要獲得鎖服務。
優選地,所述存儲結構單元至少包括固定大小的哈希、帶有鍵描述的哈希、同一位置排序的哈希、帶有過期時間的哈希。
優選地,所述裝置在執行數據查詢、累加操作的同時通過模擬鎖服務進行數據插入、刪除、更新操作。
優選地,所述模擬鎖服務在哈希結構的每個哈希位置通過原子操作進行。
優選地,所述通過原子操作模擬鎖機制至少包括如下步驟:所述裝置首先獲取哈希位置的互斥鎖,并且在獲取鎖服務的時候,所述裝置依據原子操作函數將每個哈希位置包含的整數進行置位;
之后原子操作函數先返回數值,然后進行或運算;
若返回數值為0,則獲得鎖成功;若返回數值為1,則放棄時間片,并重復之前的操作,直到獲得鎖。
基于上述技術方案,本發明的優點是:
本發明具有的統一訪問接口不僅提高了程序的擴展性,在應用程序使用過程中可根據不同的需求對存儲結構單元直接進行修改替換而不必修改應用程序接口,可以避免大量的繁瑣工作,降低耦合性。本裝置采用純內存操作,在寫入過程中,直接將操作記錄追加到文件的末尾處,有效地提高了寫入效率,降低延遲。
本裝置在不涉及內存修改的操作過程如查詢、累加則不需要獲得鎖服務,而在執行插入、刪除、更新等涉及內存修改的操作時可通過模擬鎖服務進行,所以本裝置在查詢、累加的過程中,插入、刪除、更新可以同時進行,沒有互斥關系,能夠有效地提升裝置效率。
進一步,本裝置是一個低延時、高并發、高吞吐的數據管理裝置,單次查詢延時小于1ms,每秒插入查詢次數可達50萬次。
附圖說明
此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:
圖1為高并發的存儲裝置示意圖;
圖2為分片處理步驟示意圖;
圖3為模擬鎖服務示意圖;
圖4為查詢請求執行示意圖;
圖5為累加請求執行示意圖。
具體實施方式
下面通過附圖和實施例,對本發明的技術方案做進一步的詳細描述。
實施例1
本裝置是一個非關系型數據庫系統,基于共享內存的內存數據庫。本裝置大體結構如圖1所示,裝置對外提供增刪查改等數據庫主要功能接口,存取鍵值對(key-value)類型的數據。
具體地,本高并發的存儲裝置,包括應用程序進行訪問操作的統一訪問接口101、擴展數據庫存儲引擎的存儲結構單元102。本裝置不提供端口監聽以及網絡訪問,而是直接對進程提供統一訪問接口101。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京美數信息科技有限公司,未經北京美數信息科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510703531.1/2.html,轉載請聲明來源鉆瓜專利網。





