
数据库
文章平均质量分 95
杰特JET
这个作者很懒,什么都没留下…
展开
-
BoltDB 源码分析
BoltDB 源码分析nodeCopyOnWrite解决读写冲突Elementbucketcursor内存分配inline bucketCursorrebalancemetabacth操作事务原子性(Atomicity)一致性(Consistency)隔离性(Isolation)持久性(Durability)参考链接BoltDB直接使用mmap, 直接将所有的页, 也就是整个数据大文件, 全部映射到内存内,从而免去了自己实现pagecache等等,简化了实现,并且数据持久化没有编解码,因此也避免了序列化原创 2021-05-24 18:28:00 · 710 阅读 · 2 评论 -
分布式数据库产品总结
PivotalGreenplum Database(GPDB)**Greenplum Database(GPDB)**是一款基于开源 PostgreSQL 扩展的 MPP(massively parallel processing),可支持大规模水平扩展的分布式数据库。 GPDB 采用的是 master-worker 模式,每个 worker process 运行在不同的机器上,拥有各自的存储和运算资源。**客户端通过 master 把查询语句分发到各个机器上,以达到并行计算来处理海量数据。**集群节点原创 2021-05-21 14:54:09 · 1638 阅读 · 1 评论 -
mysql知识总结
概述MySQL 可以分为 Server 层和存储引擎层两部分。Server 层包括连接器(和客户端交互、权限管理)、查询缓存(已经查询的请求会缓存在内存中,但是mysql经常会遇到缓存失效频繁的问题,例如table scan)、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。而存储引擎层负责数据的存储和提取。其架构模式是插件式的,支持 InnoDB、MyISAM、原创 2021-05-21 14:50:49 · 465 阅读 · 0 评论 -
分布式事务简述
分布式事务的原子性保证实现事务原子性的协议面向应用层的 TCC2PC 数据库领域最常用的事务方案两者比较改进Percolator (NewSQL)PGXC如果分开来看的话,事务可以理解为包含一系列操作的序列,原子则代表不可分割的最小粒度。而合起来看的话,事务的原子性就是让包含若干操作的事务表现得像一个最小粒度的操作。这个操作一旦被执行,只有“成功”或者“失败”这两种结果。这就好像比特(bit),只能代表 0 或者 1,没有其他选择。关于事务的原子性,图灵奖得主、事务处理大师詹姆斯·格雷(Jim Gr原创 2021-05-11 18:10:24 · 537 阅读 · 0 评论 -
LevelDB源码解读
LevelDB源码解读提供的功能read and writeGroup commitsequence numberdeleteAtomic Updates同步写Synchronous Writes遍历 iteration快照 SnapshotsSlice比较器 Comparatorsconcurrency保证compactionLevelDB的性能优化参数Block sizeCompressionCache键分布 Key LayoutFilters校验和 ChecksumApproximate SizesE原创 2021-04-27 09:31:48 · 1426 阅读 · 0 评论 -
深入理解LSM-Tree
深入理解LSM-Tree基础概念compaction策略Size-tired compaction strategy(STCS)/Tieredleveled compactionLeveled-NHybridTime-Window比较工业实现leveldbRocksDBWrite StallsscyllaDB/cassandrahbaseTiKV/Titan学术研究Dostoevsky参考链接lsm-tree的背景、定义和适用场景本文不再详述。本文意在论述LSM的存储引擎、工业取舍以及发展现状。基础概原创 2021-04-27 09:29:26 · 2024 阅读 · 0 评论 -
分布式表格系统Google Bigtable详解
分布式表格系统Google Bigtable详解概述Bigtable架构数据分布保证副本位置与负载均衡存储表的分裂与合并存储引擎垃圾回收总结概述bigtable系统由表格组成,每行有一个主键(Row Key),每行又包含很多列(Column),某一行的某一列构成一个单元(Cell),每个单元包含多个版本的数据。整体上看,Bigtable是一个分布式多维映射表:(row:string,column:string,timestamp:int64)−>string(row:string, colum原创 2021-04-10 11:15:34 · 2475 阅读 · 1 评论 -
LevelDB简介
LevelDB简介综述leveldb整体架构提供接口db.h技术memtableWALsstableManifestcacheLRU cacheLRU的优缺点filterlevelDB初始化compactioncompaction的触发参考链接综述level是使用lsm tree作为单机数据结构的存储引擎内存中的 MemTable 写满后,会转换为 Immutable MemTable,然后被后台线程 compact 成按 key 有序存储的 SSTable(顺序写)。 SSTable 按照数据从新到原创 2021-03-24 15:41:22 · 2896 阅读 · 0 评论