![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
爱吃草莓的西瓜酱
这个作者很懒,什么都没留下…
展开
-
MySQL技术内幕Innodb存储引擎 六 锁
基本知识MyISAM引擎:表锁设计Microsoft SQL Server: 2005前是页锁,2005后开始支持乐观并发和悲观并发,在乐观并发下开始支持行级锁,但和InnoDB存储引擎的实现方式完全不同。此外,它会锁升级,行锁会升级到表锁Innodb:实现和Oracle数据库非常类似,提供一致性的非锁定读、行级锁支持。...原创 2020-12-15 10:42:44 · 141 阅读 · 0 评论 -
MySQL技术内幕Innodb存储引擎 七 事务
MySQL技术内幕Innodb存储引擎 七 事务事务的分类扁平事务(最常见)带有保存点的扁平事务链事务嵌套事务分布式事务事务的实现redo基本概念用来保证事务的原子性和持久性,通常记录的是页的物理修改操作,是物理日志当用来实现事务的持久性时,由两部分组成:内存中的redo log buffer(易失的) ;redo log file(持久的)基本上是顺序写的存放在重做日志文件中LSN表示事务写入重做日志的字节的总量,其单位是字节,占用8个字节见p303不原创 2020-12-11 11:00:56 · 159 阅读 · 0 评论 -
分布式键值系统Dynamo & Tair
QuestionDynamo 是如何实现自动负载均衡?设计考虑数据复制算法选择最终一致性,因为强一致性会影响数据的高可用性。也就是说高可用性和一致性两者间必须要做一个trade-off,联想到CAP理论中,只考虑AP和CP。(可能P2P模式下,很难保证强一致性)Dynamo采用最终一致性,不会阻拦别的事务的写操作,因为无需复制完所有的副本才可以进行写操作。这里将冲突的复杂解决方法推到reads上,确保写不会被拒绝。支持强一致性的系统不能很好处理网络分区问题但是Tair却不是这样的,它选择原创 2020-09-17 20:18:03 · 365 阅读 · 0 评论 -
What’s Really New with NewSQL 论文
先导为什么需要NewSQL?数据的急速扩增,需要数据库具有很强的扩展性,往往有两种扩展方式:垂直扩展:scale-up水平扩展: scale-out,采用中间件,做sharding的方式,即分库分表的方式NoSQL代表性的DBGoogle’s BigTable — HBASE(开源版)Amazon’s Dynamo — Cassandra(开源版)MongoDBRedis(键值型数据库)特性不保证强一致性(故不适用金融服务),需要在应用逻辑里处理最终一致性的问题不支原创 2020-08-27 16:03:00 · 475 阅读 · 0 评论 -
论文解读之Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases
Amazon Aurora: Design Considerations for High Throughput Cloud-Native Relational Databases设计想法:针对云上数据库网络所存在的瓶颈,基于一套存储计算分离架构,将日志处理下推到分布式存储层,通过架构上的优化来解决网络瓶颈。主要贡献:Aurora如何做到不仅减少了网络资源消耗,同时还能快速故障恢复且不丢失数据,接着会介绍Aurora如何做到异步模式下分布式存储节点的一致性,最后会介绍Aurora在生产环境使用原创 2020-05-26 12:03:07 · 642 阅读 · 0 评论 -
论文1
kv 单机索引,内存的物理地址内存上的优化业务 - KVS - 数据库,其中KVS只是充当cache,cache负载不了直接落在数据库上。提升kvs热点访问能力之前的工作热访问项都是随机放置在chain上,hot和cold的数据随机放的。所以如何建模? 答:item 热点放在链首。将items做成ring有效应对hotspot shift要保障ring是有序的 ,ite...原创 2020-04-15 16:12:07 · 92 阅读 · 0 评论