[發(fā)明專利]一種基于DSS數(shù)據(jù)系統(tǒng)快速加載大型數(shù)據(jù)群的方法有效
| 申請?zhí)枺?/td> | 201710352181.8 | 申請日: | 2017-05-18 |
| 公開(公告)號: | CN107066281B | 公開(公告)日: | 2020-08-11 |
| 發(fā)明(設(shè)計(jì))人: | 楊智勤 | 申請(專利權(quán))人: | 廈門普杰信息科技有限公司 |
| 主分類號: | G06F8/20 | 分類號: | G06F8/20 |
| 代理公司: | 廈門市新華專利商標(biāo)代理有限公司 35203 | 代理人: | 朱凌 |
| 地址: | 361000 福建省*** | 國省代碼: | 福建;35 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 dss 數(shù)據(jù) 系統(tǒng) 快速 加載 大型 方法 | ||
1.一種基于DSS數(shù)據(jù)系統(tǒng)快速加載大型數(shù)據(jù)群的方法,其特征在于,包括以下步驟:
步驟1、設(shè)計(jì)專用虛擬內(nèi)存類QTSSVMArray,該虛擬內(nèi)存類為模板類,類中包含用于初始化的時(shí)候事先預(yù)留設(shè)定量的空間的構(gòu)造函數(shù),所述空間并不在物理內(nèi)存中;
步驟2、將虛擬內(nèi)存模板類QTSSVMArray作為DSS原數(shù)據(jù)系統(tǒng)中QTSSDictionary的靜態(tài)成員變量,再根據(jù)應(yīng)用程序的需要設(shè)計(jì)存儲空間中要存放的結(jié)構(gòu)體類型;
步驟3、在QTSSDictionary初始化QTSSVMArray這個(gè)靜態(tài)成員變量,預(yù)留10MB地址空間,如果在該階段DSS服務(wù)器預(yù)留空間失敗,則重啟DSS數(shù)據(jù)服務(wù)器;
步驟4、在QTSSDictionary中新增函數(shù)SetBigValue以及qtssAttrDataTypeBigData標(biāo)志,函數(shù)SetBigValue用于設(shè)置存儲大型數(shù)據(jù)結(jié)構(gòu),qtssAttrDataTypeBigData標(biāo)志則用于設(shè)置系統(tǒng)數(shù)據(jù)類型中新增大型結(jié)構(gòu)數(shù)據(jù)類型,在所述函數(shù)SetBigValue被第一次調(diào)用時(shí)將實(shí)際提交物理存儲器,根據(jù)需要提交1MB實(shí)際物理內(nèi)存給之前預(yù)留的地址空間;所述SetBigValue函數(shù)中使用指針來進(jìn)行數(shù)據(jù)存儲,在函數(shù)中對qtssAttrDataTypeBigData標(biāo)志中的fAllocatedLen長度設(shè)置為指針數(shù)組的長度,fAttributeData.Ptr為指針數(shù)組的地址,fAttributeData.Len為指針sizeof的值;
步驟5、服務(wù)器啟動(dòng)過程將通過數(shù)據(jù)庫插件加載數(shù)據(jù)庫中的龐大數(shù)據(jù)群進(jìn)入服務(wù)器進(jìn)程內(nèi)存空間,在數(shù)據(jù)庫插件中設(shè)計(jì)對于每一行數(shù)據(jù)調(diào)用一次SetBigValue函數(shù),將每行數(shù)據(jù)存放進(jìn)虛擬內(nèi)存中的每一個(gè)結(jié)構(gòu)體中,此時(shí)SetBigValue函數(shù)將根據(jù)開辟出來的指針數(shù)組中的數(shù)組下標(biāo)對應(yīng)一塊實(shí)際物理內(nèi)存結(jié)構(gòu),及指針數(shù)組中的每根指針分別對應(yīng)提交給虛擬內(nèi)存物理空間中的一塊內(nèi)存區(qū)進(jìn)行數(shù)據(jù)存放;
步驟6、在DSS數(shù)據(jù)系統(tǒng)的GetValuePtr函數(shù)中增加對新增的qtssAttrDataTypeBigData屬性值獲取的條件,其中新增虛擬內(nèi)存物理空間的地址獲取方式和使用堆空間的獲取方式相同;
步驟7、在服務(wù)器使用過程中對提交的物理內(nèi)存進(jìn)行鎖定;
步驟8、新增QTSS_SetBigValue接口,以提供給服務(wù)器外部插件使用;
步驟9、在QTSSVMArray類中虛構(gòu)函數(shù),以使虛擬內(nèi)存生命周期的最后進(jìn)行釋放。
2.如權(quán)利要求1所述的一種基于DSS數(shù)據(jù)系統(tǒng)快速加載大型數(shù)據(jù)群的方法,其特征在于:所述步驟1還包括:設(shè)置MEM_TOP_DOWN標(biāo)志于虛擬函數(shù)VirtualAlloc,使操作系統(tǒng)從高位內(nèi)存地址開始預(yù)留空間。
3.如權(quán)利要求1所述的一種基于DSS數(shù)據(jù)系統(tǒng)快速加載大型數(shù)據(jù)群的方法,其特征在于:所述步驟2中,可根據(jù)實(shí)際需要將存儲空間存放的結(jié)構(gòu)類型設(shè)計(jì)成每個(gè)結(jié)構(gòu)體大小為1024Bytes的結(jié)構(gòu)體類型,且設(shè)計(jì)結(jié)構(gòu)體類型為目標(biāo)系統(tǒng)分頁文件大小的倍數(shù)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于廈門普杰信息科技有限公司,未經(jīng)廈門普杰信息科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710352181.8/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種差異化安全服務(wù)的網(wǎng)絡(luò)、系統(tǒng)和方法
- 擴(kuò)展物理下行鏈路控制信道
- DSS1信令監(jiān)測方法和系統(tǒng)
- D2D通信同步信道的傳輸方法及系統(tǒng)、發(fā)送端及接收端
- 一種基于統(tǒng)計(jì)度量直線特征的數(shù)字直線段識別方法
- 在無線通信系統(tǒng)中發(fā)送和接收D2D信號的方法及其裝置
- 一種水稻粒型基因DSS及其編碼蛋白質(zhì)和應(yīng)用
- 一種基于DSS框架的數(shù)據(jù)庫子系統(tǒng)設(shè)計(jì)方法
- 視頻文件的管理設(shè)備
- 一種AD-1對抗DSS誘導(dǎo)的小鼠急性結(jié)腸炎的應(yīng)用
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





