比特币代码分析11 比特币存储机制
发表于:2025-02-02 作者:千家信息网编辑
千家信息网最后更新 2025年02月02日,比特币存储机制比特币存储系统由两部分组成: kv 数据库(levelDB)索引和普通数据文件。普通文件用于存储区块链数据,kv 数据库用于存储区块链元数据。用于存储区块链数据的普通文件以 blk000
千家信息网最后更新 2025年02月02日比特币代码分析11 比特币存储机制
比特币存储机制
比特币存储系统由两部分组成: kv 数据库(levelDB)索引和普通数据文件。普通文件用于存储区块链数据,kv 数据库用于存储区块链元数据。用于存储区块链数据的普通文件以 blk00000.dat , blk00001.dat 文件名格式组成。其中 index 目录存储用于存储区块元数据。
普通区块数据文件
为了快速检索区块数据,每个文件的大小是128 M Bytes。区块里的数据(区块头和区块里的所有交易)都会序列成字节码的形式写入 dat 文件中。在序列化的过程中,如果检测到当前写入文件尺寸加上区块尺寸大于 128 M Bytes,则会重新生成一个 dat 文件。
kv数据索引
区块的索引元数据格式如
交易的元数据格式如
上述所有元数据都将写入 kv 数据库中,其中 blockhash/txHash 将作为后续查询具体数据在 dat 文件中的索引使用。
LevelDB
Google 的 LevelDB 数据库存储区块链元数据。Leveldb是一个google实现的非常高效的kv数据库,并且是开源的。
它的一个主要特点就是写的性能非常好,适用于比特币客户端这种应用场景。
levelDB虽然是个数据库,但是并不像其它的主流数据库(mysql ,oracle等)可以提供客户端连接服务。它只是一个基于c++的lib库而已,所以我们使用起来也很简单,直接在工程里链接lib库文件。
数据
文件
区块
存储
数据库
格式
普通
索引
位置
客户
客户端
尺寸
序列
交易
起始
机制
一致
主流
只是
场景
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
1t的文件传到服务器上
农安网络技术服务保障
腾讯云服务器运行日志在哪
乐园数据库
软件开发具体实施方案
光学分析软件开发
网络技术公司业务谈判
河北立体化软件开发发展现状
光大银行网络安全控件
网络安全培训日志
网络安全的一些知识
增加服务器是什么问题
word导入至数据库
联想服务器保修期查询
计算机网络技术基础教学大纲
cnki学问论文数据库
中国光大银行软件开发中心合肥
最新代理服务器列表
软件开发分为哪几个方向
营养分析软件数据库
出租房公共网络安全吗
浙江智能软件开发价钱
丰台区网络技术服务哪个好
法院软件开发合同纠纷鉴定
计算机网络技术单招
数据库表添加多个字段的值
歌曲笔记软件开发
天津监管仓软件开发定制网站
软件开发出差是干嘛
浪潮服务器带外管理配置