Google leveldb学习笔记一:基本架构与安装使用

本文介绍了Google的LevelDB,一个键值存储库,采用LSM树作为存储引擎。LSM树通过批量写入磁盘避免随机写入问题。LevelDB的存储结构包括内存的MemTable、SSTable文件等。读取时,可能涉及多个磁盘文件的合并。文章还详细阐述了LevelDB的安装和测试过程。
摘要由CSDN通过智能技术生成

简介

LevelDB是一个Google编写的快速键值存储库,它提供从字符串键到字符串值的有序映射。

基本架构

LSM树存储引擎

先说什么是存储引擎

  • 存储引擎是存储系统的发动机,直接决定了存储系统能够提供的性能和功能
  • 存储系统的基本功能包括:增删读改,读取操作又可以分为随机读取和顺序扫描

    1. 哈希存储引擎是哈希表的持久化表现,不支持顺序扫描,对应的存储系统为键值存储系统
    2. B-Tree存储引擎是B-Tree的持久化实现,支持顺序扫描,对应的存储系统为关系数据库
    3. LSM树存储引擎和B-Tree支持顺序扫描,它通过批量转储技术规避磁盘随机写入问题

LevelDB的LSM存储引擎

LSM树的想法很简单,就是将对数据的修改增量保持在内存中,达到能指定的大小限制后将这些修改操作批量写入磁盘,读取时需要合并磁盘中的历史数据和内存中最近的修改操作。LSM树有效的规避了磁盘随机写入的问题,丹读取时可能需要访问较多的磁盘文件

存储结构

这里写图片描述

  • 如图所示,LevelDB存储引擎主要包括:内存中的MemTable和不可变
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值