[發(fā)明專利]一種基于文件的區(qū)塊鏈區(qū)塊存儲(chǔ)和讀取方法有效
| 申請(qǐng)?zhí)枺?/td> | 201810534022.4 | 申請(qǐng)日: | 2018-05-29 |
| 公開(kāi)(公告)號(hào): | CN108829772B | 公開(kāi)(公告)日: | 2020-01-10 |
| 發(fā)明(設(shè)計(jì))人: | 邱煒偉;李啟雷;李偉;梁秀波;尹可挺 | 申請(qǐng)(專利權(quán))人: | 杭州趣鏈科技有限公司 |
| 主分類號(hào): | G06F3/06 | 分類號(hào): | G06F3/06 |
| 代理公司: | 33200 杭州求是專利事務(wù)所有限公司 | 代理人: | 邱啟旺 |
| 地址: | 310012 浙江省杭州*** | 國(guó)省代碼: | 浙江;33 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 區(qū)塊 讀取 寫(xiě)入 區(qū)塊信息 存儲(chǔ) 當(dāng)前文件 常規(guī)的 鏈節(jié)點(diǎn) 更新 索引 重寫(xiě) 成功 重復(fù) 應(yīng)用 網(wǎng)絡(luò) 保證 | ||
1.一種基于文件的區(qū)塊鏈區(qū)塊存儲(chǔ)和讀取方法,其特征在于,所述的存儲(chǔ)包括如下步驟:
(1)讀取最后一次成功提交的區(qū)塊號(hào),將其存儲(chǔ)為變量名為L(zhǎng)astCommit的鍵值對(duì);
(2)根據(jù)最后一次提交的區(qū)塊號(hào),定位到當(dāng)前文件寫(xiě)入的位置,然后寫(xiě)入最新的區(qū)塊信息;
(3)根據(jù)寫(xiě)入的區(qū)塊信息獲得該區(qū)塊在文件中的偏移量,根據(jù)區(qū)塊號(hào)和偏移量定義為當(dāng)前區(qū)塊號(hào)的索引信息,寫(xiě)入索引文件中;
(4)更新最后一次成功提交的區(qū)塊號(hào),重復(fù)步驟(1)-(3),完成整個(gè)區(qū)塊的寫(xiě)入;
(5)經(jīng)過(guò)區(qū)塊鏈網(wǎng)絡(luò)若干個(gè)節(jié)點(diǎn)共識(shí),若此時(shí)發(fā)現(xiàn)某個(gè)節(jié)點(diǎn)的區(qū)塊寫(xiě)入錯(cuò)誤,則從其他節(jié)點(diǎn)獲取正確寫(xiě)入的區(qū)塊號(hào),更新錯(cuò)誤節(jié)點(diǎn)最后一次成功提交的區(qū)塊號(hào),重復(fù)步驟(1)-(4),直到區(qū)塊鏈網(wǎng)絡(luò)達(dá)成網(wǎng)絡(luò)共識(shí);
基于文件的區(qū)塊鏈區(qū)塊讀取包括如下步驟:
根據(jù)需要讀取的區(qū)塊號(hào)讀取相應(yīng)區(qū)塊的索引信息,根據(jù)索引信息定位到區(qū)塊位于文件的具體偏移量,根據(jù)偏移量讀取區(qū)塊信息。
2.根據(jù)權(quán)利要求1所述的基于文件的區(qū)塊鏈區(qū)塊存儲(chǔ)和讀取方法,其特征在于,所述的讀取進(jìn)一步包括如下步驟:
定義迭代器,選擇初始遍歷的區(qū)塊號(hào),根據(jù)初始區(qū)塊號(hào)讀取相應(yīng)區(qū)塊的索引信息,根據(jù)索引信息定位到區(qū)塊位于文件的具體偏移量,依次遍歷整個(gè)文件,根據(jù)需要讀取所需要區(qū)塊的區(qū)塊信息。
3.根據(jù)權(quán)利要求1所述的基于文件的區(qū)塊鏈區(qū)塊存儲(chǔ)和讀取方法,其特征在于,所述的步驟(2)中,當(dāng)寫(xiě)入最新的區(qū)塊信息后文件大于500M,則放棄此次寫(xiě)入,新建區(qū)塊存儲(chǔ)文件和區(qū)塊索引文件,重新寫(xiě)入最新區(qū)塊信息。
4.根據(jù)權(quán)利要求1所述的基于文件的區(qū)塊鏈區(qū)塊存儲(chǔ)和讀取方法,其特征在于,所述的區(qū)塊號(hào)和索引文件按如下規(guī)則進(jìn)行命名:
將新建區(qū)塊存儲(chǔ)以及索引文件后第一個(gè)區(qū)塊號(hào)作為文件名,文件后綴分別為.LOG和.IDX。
5.根據(jù)權(quán)利要求1所述的基于文件的區(qū)塊鏈區(qū)塊存儲(chǔ)和讀取方法,其特征在于,所述的區(qū)塊在文件中的存儲(chǔ)方式如下:前8個(gè)字節(jié)代表偏移量,9-12字節(jié)代表區(qū)塊的大小,其他字節(jié)代表區(qū)塊具體信息。
6.根據(jù)權(quán)利要求1所述的基于文件的區(qū)塊鏈區(qū)塊存儲(chǔ)和讀取方法,其特征在于,所述的區(qū)塊索引文件的存儲(chǔ)方式如下:前4個(gè)字節(jié)代表當(dāng)前區(qū)塊號(hào)相對(duì)于該文件中第一個(gè)區(qū)塊號(hào)的偏移值,第5-8個(gè)字節(jié)代表當(dāng)前區(qū)塊在區(qū)塊存儲(chǔ)文件中的物理偏移量。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于杭州趣鏈科技有限公司,未經(jīng)杭州趣鏈科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810534022.4/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 上一篇:主播推薦方法、裝置、計(jì)算機(jī)存儲(chǔ)介質(zhì)及服務(wù)器
- 下一篇:移動(dòng)終端閱讀推薦方法、移動(dòng)終端及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F3-00 用于將所要處理的數(shù)據(jù)轉(zhuǎn)變成為計(jì)算機(jī)能夠處理的形式的輸入裝置;用于將數(shù)據(jù)從處理機(jī)傳送到輸出設(shè)備的輸出裝置,例如,接口裝置
G06F3-01 .用于用戶和計(jì)算機(jī)之間交互的輸入裝置或輸入和輸出組合裝置
G06F3-05 .在規(guī)定的時(shí)間間隔上,利用模擬量取樣的數(shù)字輸入
G06F3-06 .來(lái)自記錄載體的數(shù)字輸入,或者到記錄載體上去的數(shù)字輸出
G06F3-09 .到打字機(jī)上去的數(shù)字輸出
G06F3-12 .到打印裝置上去的數(shù)字輸出
- 沿縱向拓展的區(qū)塊鏈的生成方法及系統(tǒng)
- 沿橫向拓展的區(qū)塊鏈的生成方法及系統(tǒng)
- 區(qū)塊鏈輕量化處理方法、區(qū)塊鏈節(jié)點(diǎn)及存儲(chǔ)介質(zhì)
- 餐廳配備裝置總成
- 區(qū)塊鏈處理方法、裝置及區(qū)塊鏈節(jié)點(diǎn)
- 本地區(qū)塊同步的檢驗(yàn)方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 用于使用現(xiàn)有區(qū)塊鏈節(jié)點(diǎn)來(lái)托管新區(qū)塊鏈的方法和系統(tǒng)
- 一種錐體區(qū)塊、錐體區(qū)塊鏈結(jié)構(gòu)和方法
- 一種錐體區(qū)塊鏈共識(shí)系統(tǒng)、方法及網(wǎng)絡(luò)
- 區(qū)塊分布式區(qū)塊鏈的區(qū)塊數(shù)據(jù)結(jié)構(gòu)、存儲(chǔ)介質(zhì)及電子設(shè)備
- 寫(xiě)入裝置、半導(dǎo)體存儲(chǔ)卡、寫(xiě)入程序及寫(xiě)入方法
- 圖形寫(xiě)入裝置和圖形寫(xiě)入方法
- 寫(xiě)入裝置及寫(xiě)入方法
- 優(yōu)化寫(xiě)入方法、優(yōu)化寫(xiě)入設(shè)備及數(shù)據(jù)產(chǎn)生和寫(xiě)入設(shè)備
- 光寫(xiě)入裝置和光寫(xiě)入方法
- 數(shù)據(jù)寫(xiě)入系統(tǒng)與數(shù)據(jù)寫(xiě)入方法
- 數(shù)據(jù)的寫(xiě)入方法及寫(xiě)入裝置
- 寫(xiě)入輔助
- 芯片數(shù)據(jù)寫(xiě)入設(shè)備及寫(xiě)入方法
- 減輕寫(xiě)入干擾的寫(xiě)入操作





