前言:记录下最近gbdb折腾时阅读innodb源码的记录。正文:之前说过Mtr,有很多书写的Mtr能够控制memo内的锁结构,然而加锁过程其实来自于buf 下的 buf_page_get_gen 函数, mtr_memo_push 不包含加锁流程,而mtr中有释放锁的方法mtr_memo_slot_release 这个方法可用于处理获得page的锁及其……继续阅读 » cyanprobe 5年前 (2019-09-03) 5266浏览 1评论2个赞
前言:瞎写了一阵子gbdb,发现问题很多,瞅着时间看了下innodb的代码。主要是缓存池和mtr部分。记录:buffer_pool 初始化过程 开辟内存空间block 绑定 frame(包含页方法) 由于开辟的空间是连续的所以可以通过block的内存空间指针来寻址,然后查找对应的frame就能拿到页的信息(学到了…之前一直还在传递页和sp……继续阅读 » cyanprobe 6年前 (2019-06-15) 2202浏览 0评论0个赞
前言: 写一下关于最近接触到的问题.正文: 间隙锁问题: 间隙锁产生原因检索范围或者不存在的记录. 例如 检索id 为1-8,或者检索 id = 16 但此记录不存在.无论rc还是rr隔离级别,检索不存在的记录都会产生间隙锁(即使是非范围的索引).锁定的范围是上一个id索引存在记录到下一个索引存在记录如 id = 13 存在……继续阅读 » cyanprobe 6年前 (2019-04-18) 2353浏览 1个赞
前言:看到我居然还有博友…昨天还有人要友链我…好吧,出来冒下泡吧。其实最近我只是死掉了而已。最近再看数据库相关的东西,买了4本mysql相关的书籍。《数据库系统实现》《mysql运维内参》《mysql Innodb引擎实现》《mysql从删库到跑路》。 强烈推荐运维内参正文基术方面:实在没什么分享的,因为进度很吃紧,本来准……继续阅读 » cyanprobe 7年前 (2018-02-04) 7929浏览 5评论4个赞
前言:此话题说来话长,老大让写多个查询接口,尽量考虑索引使用,因为数据非常多,不使用索引查询很慢,于是乎,我写了一个通用查询接口,指定索引生成query对象。根据mongo权威指南的说法 建立复合索引 A_1_B_1_C_1 此时可用索引为 A-B-C |A-B| A 三种, 跟DBA说了讨论了这个问题(PS:我也不想讨论但是已经写完了真的懒得改了),老……继续阅读 » cyanprobe 7年前 (2017-10-10) 4954浏览 1评论1个赞
前言:复合索引原理我要等看mongo指南,手册上看不太懂。正文:默认_id存在索引,内嵌域和内嵌文档皆可以创建索引。创建索引时,数据库读写操作会被阻塞,使用background选项后台创建索引,但shell实例会被阻塞。2.4以后可以并发进行后台索引创建。复合索引:单项索引支持从2个方向读取索引,而复合索引索引方向决定了是否使用该索引。db.eve……继续阅读 » cyanprobe 8年前 (2017-05-03) 3917浏览 2评论0个赞
前言:汪汪汪正文:聚合方式3种 分别是 聚合管道( Aggregation Pipeline),映射化简(Map-Reduce),单目的聚合操作(Single Purpose Aggregation Operations)。 Aggregation Pipeline 是map-reduce 的替代方案因为更加灵活。但在类型和结果大小上有限……继续阅读 » cyanprobe 8年前 (2017-05-02) 4746浏览 2评论0个赞
前言:重新撸mongo,对应官网API,深入一下,原来的mongo权威指南太老了,而且也没有仔细看。正文:$type 修饰符可以对文档类型值进行判断,对应一个类型值表1-16;$elemMatch 同一元素无视字段顺序匹配,匹配第一个符合要求数组元素$currentDate: { lastModified: true } lastModified……继续阅读 » cyanprobe 8年前 (2017-05-01) 2797浏览 0评论0个赞
前言:话说这是一枚Teambition的面试+分题,闲(菜)的没事干,就拿过来撸了,一开始什么概念都没有,果断下载Kue,看了Kue的源码和实现。难道我要写高仿Kue咯 。不得不叹服人家对redis的把弄和设计,redis队列状态流程借鉴了kue。wujohns 司机问为什么起名为fxqueue,简单来说,不想让大家知道我抄的像kue哈哈。 传送门……继续阅读 » cyanprobe 8年前 (2017-03-24) 3930浏览 1评论0个赞
前言:纯属意淫,希望撸过的大神分享正确思路,前几天吃饿了么吃撑了,写个练手的项目也用到了红包模块。没有查任何资料,纯属自我意淫。要做到饿了么那种形式。废话不多说,下订单,订单完成可以来一发红包。。。正文:这里的coupon,退单后发现后面的用户已经没法领取了,而且不存在什么鸟评论,一个红包有10人可领取,生成链接生存期,子包有生存期。这里我意淫用Re……继续阅读 » cyanprobe 8年前 (2016-10-17) 4197浏览 0评论0个赞