自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 资源 (3)
  • 收藏
  • 关注

原创 mvcc和next-key

在mysql中,提供了两种事务隔离技术,第一个是mvcc,第二个是next-key技术。这个在使用不同的语句的时候可以动态选择。不加lock inshare mode之类的就使用mvcc。否则使用next-key。mvcc的优势是不加锁,并发性高。缺点是不是实时数据。next-key的优势是获取实时数据,但是需要加锁。同时需要注意几点:1.事务的快照时间点是以第一个select来确认的。所以即便事务先开始。但是select在后面的事务的update之类的语句后进行,那么它是可以获取后面的事务的对应的数据。2

2020-07-14 21:22:41 526

原创 覆盖索引

MySQL 可以直接通过遍历索引取得数据,而无需回表,这减少了很多的随机 io 操作。减少 io 操作,特别是随机 io 其实是 DBA 主要的优化策略。所以,在真正的实际应用中,覆盖索引是主要的提升性能的优化手段之一。今年3月份时候,线上发生一次大事故。公司主要后端服务器发生宕机,所有接口超时。宕机半小时后,又自动恢复正常。通过接口日志,发现MySQL数据库无法响应服务器。在阿里云的技术支持的帮助下,发现了MySQL数据库中存在大量慢查询,导致CPU负载过高。最后,根据慢查询日志,定位到了出问题的SQ

2020-06-29 07:44:58 156

原创 MySQL与PG之间的区别

innodb的基于回滚段实现的MVCC机制,相对PG新老数据一起存放的基于XID的MVCC机制,是占优的。新老数据一起存放,需要定时触 发VACUUM,会带来多余的IO和数据库对象加锁开销,引起数据库整体的并发能力下降。而且VACUUM清理不及时,还可能会引发数据膨胀。2)MySQL采用索引组织表,这种存储方式非常适合基于主键匹配的查询、删改操作,但是对表结构设计存在约束。3)MySQL的优化器较简单,系统表、运算符、数据类型的实现都很精简,非常适合简单的查询操作。4)MySQL相对于PG在国内的流行度

2020-06-12 07:57:41 738

原创 HBase行锁原理

HBase 行锁实现原理HBase 行锁是利用 Java 并发包 concurrent 里的 CountDownLatch(1) 来实现的。它的主要思想就是在服务器端每个访问者单独一个数据处理线程,每个处理线程针对特定行数据修改时必须获得该行的行锁,而其他客户端线程想要修改数据的话,必须等待前面的线程释放锁后才被允许,这就利用了 Java 并发包中的 CountDownLatch , CountDownLatch 为 Java 中的一个同步辅助类,在完成一组正在其他线程中进行的操作之前,它允许一个或多个线

2020-05-28 07:51:45 217

原创 pg的rc隔离级别

我们可以简单概括为:1.别人事务的增删改,如果事务未提交,增删改的行记录最新状态在当前事务会话中无法读取。2.自己当前事务的增删改,即使未提交,增删改的行记录最新状态在自己的当前事务内,当然能读取。3.无论是别人事务还是自己当前事务发起的增删改,如果事务异常中断,则所有会话都无法读取。...

2020-05-22 15:33:26 374

原创 MySQL 中的分区

一.InnoDB逻辑存储结构首先要先介绍一下InnoDB逻辑存储结构和区的概念,它的所有数据都被逻辑地存放在表空间,表空间又由段,区,页组成段段就是上图的segment区域,常见的段有数据段、索引段、回滚段等,在InnoDB存储引擎中,对段的管理都是由引擎自身所完成的。区区就是上图的extent区域,区是由连续的页组成的空间,无论页的大小怎么变,区的大小默认总是为1MB。为了保证区中的...

2020-05-05 09:17:31 300

原创 MySQL基础架构

我们可以把 MySQL 拆解成几个零件,如下图所示大致上来说,MySQL 可以分为 Server层和 存储引擎层。Server 层包括连接器、查询缓存、分析器、优化器、执行器,包括大多数 MySQL 中的核心功能,所有跨存储引擎的功能也在这一层实现,包括 存储过程、触发器、视图等。存储引擎层包括 MySQL 常见的存储引擎,包括 MyISAM、InnoDB 和 Memory 等,最常用的是 ...

2020-04-29 08:05:46 132

原创 MySQL的MVCC控制机制

在MySQL中,MVCC的实现是通过保存数据在某个时间点的快照来实现的。也就是说,不管需要执行多长时间,每个事务看到的数据都是一致的。根据事务开始时间的不同,每个事务对同一张表,同一时刻看到的数据可能不一样。不用存储引擎的MVCC的实现不尽相同,典型的有乐观(optimistic)并发控制和悲观(pessimistic)并发控制。下面我们通过InnoDB存储引擎来说明,MySQL的MVCC是如何...

2020-04-28 17:47:12 106

关于UCOS-II在STM32中的移植的论文

论文开发 关于嵌入式 STM32 ucosii 技术开发

2012-12-11

基于单片机的车载时钟控制系统研究

单片机 车载时钟 基于单片机的车载时钟控制系统研究

2011-04-25

智能路灯节能控制系统研究

智能路灯节能控制系统研究 PDF 智能路灯

2011-04-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除