[發(fā)明專利]一種基于LevelDB的海量數(shù)據(jù)離線批量加載方法在審
| 申請?zhí)枺?/td> | 202011558077.2 | 申請日: | 2020-12-25 |
| 公開(公告)號: | CN112328547A | 公開(公告)日: | 2021-02-05 |
| 發(fā)明(設(shè)計)人: | 馮凌峰 | 申請(專利權(quán))人: | 馮凌峰 |
| 主分類號: | G06F16/13 | 分類號: | G06F16/13;G06F16/16;G06F16/25;G06F8/61 |
| 代理公司: | 江蘇圣典律師事務(wù)所 32237 | 代理人: | 程化銘 |
| 地址: | 210000 江蘇省*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 leveldb 海量 數(shù)據(jù) 離線 批量 加載 方法 | ||
1.一種基于LevelDB的海量數(shù)據(jù)離線批量加載(BulkLoad)方法,其步驟如下:
步驟1. 使用Mapreduce將數(shù)據(jù)文件轉(zhuǎn)換為SST文件
步驟1.1. 實現(xiàn)SST文件的輸出類SstOutputFormat,繼承于基類FileOutputFormat;實現(xiàn)基類FileOutputFormat的抽象方法getRecordWriter,返回一個RecordWriter對象,用于SST格式文件的輸出;返回該對象時,使用LevelDB的寫數(shù)據(jù)至磁盤的LogWriter對象重寫RecordWriter的write和close方法;
步驟1.2. Map階段:根據(jù)輸入數(shù)據(jù),調(diào)用LevelDB的K-V組織方式,封裝K-V,并作為Map階段的輸出;
步驟1.3. Reduce階段:實現(xiàn)K-V比較器,對Map階段傳遞過來的K-V進行排序,并將有序的K-V寫到輸出流;
步驟1.4. 設(shè)置MapReduce JOB信息,根據(jù)輸入數(shù)據(jù)的大小估算Reduce的個數(shù),每個Reduce數(shù)據(jù)大小為SST文件的大小;
步驟2:生成LevelDB的元數(shù)據(jù)文件
步驟2.1. 生成CURRENT文件:批量生成.sst文件,所有的.sst文件的層級均默認設(shè)置為7,批量離線入庫的.sst文件無需進行Compaction;同時,一個DB的MANIFEST僅存在一個文件MANIFEST-0,CURRENT永遠指向MANIFEST-0;
步驟2.2. 生成MANIFEST文件:配置MapReduce作業(yè)時,根據(jù)DB定義全局變量MapString, MultimapInteger, FileMetaData(MapDB名稱, Multimap文件索引, 文件元數(shù)據(jù)信息),記錄每個DB的文件元數(shù)據(jù)信息;DB的MapReduce作業(yè)完成后,將對應(yīng)的MultimapInteger, FileMetaData對象刷入MANIFEST文件中;
步驟3:BulkLoad實現(xiàn)DB的加載:將生成的數(shù)據(jù)文件和元數(shù)據(jù)文件移動到指定的LevelDB目錄中,生成一個LevelDB的DB實例。
該專利技術(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/202011558077.2/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種面向海量小文件存儲系統(tǒng)的Key-Value存儲方法
- 一種固態(tài)硬盤的緩存控制方法及裝置
- leveldb數(shù)據(jù)庫中數(shù)據(jù)對寫入的方法、裝置及系統(tǒng)
- 一種基于分層分配的多層數(shù)據(jù)庫的布隆過濾器構(gòu)造方法
- 數(shù)據(jù)處理方法、系統(tǒng)以及存儲介質(zhì)
- 數(shù)據(jù)傳輸方法、裝置、設(shè)備及存儲介質(zhì)
- 一種基于區(qū)塊鏈的服務(wù)器文件安全存儲方法
- 基于LSM-Tree的壓縮日志緩存方法及裝置
- 一種基于LevelDB的海量數(shù)據(jù)離線批量加載方法
- 一種基于聯(lián)盟鏈的數(shù)據(jù)快速查詢方法
- 一種數(shù)據(jù)庫海量數(shù)據(jù)比對的方法
- 基于云計算的海量數(shù)據(jù)訪問處理系統(tǒng)
- 一種實現(xiàn)海量數(shù)據(jù)離線分析的方法
- 一種海量矢量切片數(shù)據(jù)云存儲方法及系統(tǒng)
- 一種多源海量數(shù)據(jù)處理系統(tǒng)及方法
- 快速實現(xiàn)海量數(shù)據(jù)準實時全量統(tǒng)計的方法、裝置及系統(tǒng)
- 一種海量數(shù)據(jù)分析系統(tǒng)及方法
- 在線繪制地圖海量線的方法
- 一種海量點數(shù)據(jù)聚合渲染方法、裝置、設(shè)備及存儲介質(zhì)
- 一種海量不確定XML數(shù)據(jù)存儲方法
- 數(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)裝置





