数据库内核的快照技术实现原理 (www.ideawu.net)

【简介】

"快照(Snapshot)"是数据库领域非常重要的一个概念, 最初是用于数据备份. 如今, 快照技术已经成为数据库内核(引擎)最核心的技术特性之一. 数据库内核的绝大多数操作, 都依赖于快照, 例如, LevelDB 的每一次读取操作和遍历操作, 其内部都必须创建一个快照, 所以, 对于一个请求量非常大的系统, 数据库内核每秒种就要创建和销毁几十万次快照. 因此, 如何快速地创建和销毁快照, 成为一个数据库内核(引擎)必须要解决的问题.

本文从源头出发, 逐步推演, 探讨数据库内核是如何实现快照技术的.

点击查看全文 >>

@技术头条 2022-05-06 23:33分享 / 原作者微博:@ideawu / 0个评论
赞过的人: IT技术博客大学习
要不要再学学下面的文章?
App开放接口api安全:Token签名sign的设计与实现 (mp.weixin.qq.com)
在app开放接口api的设计中,避免不了的就是安全性问题,因为大多数接口涉及到用户的个人信息以及一些敏感的数据,所以对这些 接口需要进行身份的认证,那么这就需要用户提供一些信息,比如用户名密码等,但是为了安全起见让用户暴露的明文密码次数越少越好,我们一般在web项目 中,大多数采用保存的session中,然后在存一份到cookie中,来保持用户的回话有效性。
by @code小生 2022-05-08 23:47 分享 查看详情
使用 DeepSpeech 在你的应用中实现语音转文字 (linux.cn)
应用中的语音识别不仅仅是一个有趣的技巧,而且是一个重要的无障碍功能。

计算机的主要功能之一是解析数据。有些数据比其他数据更容易解析,而语音输入仍然是一项进展中的工作。不过,近年来该领域已经有了许多改进,其中之一就是 DeepSpeech,这是 Mozilla 的一个项目,Mozilla 是维护 Firefox 浏览器的基金会。DeepSpeech 是一个语音到文本的命令和库,使其对需要将语音输入转化为文本的用户和希望为其应用提供语音输入的开发者都很有用。
by @技术头条 2022-05-06 23:10 分享 查看详情
纯CSS实现未读消息超过100自动显示为99+ (www.zhangxinxu.com)
未读消息超过100显示为99+是常见的交互,目前主流实现一定是通过 JS 逻辑判断,其实纯 CSS 就能实现一模一样的功能,兼容性还不赖,进来看看吧。

by @技术头条 2022-05-04 16:49 分享 查看详情
技术主管和项目经理一定要读的6本书! (mp.weixin.qq.com)
如果你在今年刚刚晋升为项目经理或者技术主管,并且正在寻找资源来提升自己的软件项目管理技能,那么,你就来对地方了。

在本文中,将和大家分享一些最佳的项目管理书籍,这将有助于项目经理,团队负责人和软件架构师的工作。
by @code小生 2022-04-10 21:12 分享 查看详情
一个Go语言实现的数据库 (mp.weixin.qq.com)
rosedb 是一个稳定、高性能、快速、内嵌的 k-v 数据库,支持多种数据结构,包含 String、List、Hash、Set、Sorted Set,接口名称风格和 Redis 类似。

rosedb 数据文件布局基于 LSM Tree 和 WAL,纯 Golang 实现,易于使用、扩展。我们的愿景是打造一个高效的 k-v 存储引擎,你可以给我们提任何建议,也请给我们一个 start ✨ 吧,非常感谢!
by @code小生 2022-03-27 23:42 分享 查看详情
如何学习一门技术 (insights.thoughtworks.cn)
如何学习某个知识,在我看来,主要矛盾在于解决这三个问题。快来看看这篇文章吧。
by @Thoughtworks 2022-03-11 15:56 分享 查看详情
MySQL数据库插入100w条数据要花多久? (mp.weixin.qq.com)
问:为何对同一个表的插入多线程会比单线程快?同一时间对一个表的写操作不应该是独占的吗?

答:在数据里做插入操作的时候,整体时间的分配是这样的:
by @code小生 2022-02-20 19:59 分享 查看详情
C++中智能指针的原理、使用、实现 (mp.weixin.qq.com)
C++程序设计中使用堆内存是非常频繁的操作,堆内存的申请和释放都由程序员自己管理。程序员自己管理堆内存可以提高了程序的效率,但是整体来说堆内存的管理是麻烦的,C++11中引入了智能指针的概念,方便管理堆内存。使用普通指针,容易造成堆内存泄露(忘记释放),二次释放,程序发生异常时内存泄露等问题等,使用智能指针能更好的管理堆内存。
by @code小生 2022-02-13 22:19 分享 查看详情
frm和ibd文件数据库恢复 (www.xifenfei.com)
这次客户rm -rf /var/lib/mysql删除文件,删除一半及时终止,但是已经有很多mysql相关文件被删除,重要的ibdata文件已经被删除,并且客户尝试了大量的恢复工作,对该分区进行了大量的写入操作,导致后面通过对xfs文件系统进行分析,确认无法恢复对应的ibdata文件.比较幸运客户需要的核心的mysql库都还在(frm和ibd文件还存在)。
by @技术头条 2022-02-04 19:52 分享 查看详情
Mac 终端下 实现 安装 ipa 包到 iPhone 真机 (droidyue.com)
最近处理 Flutter 的开发工作,开始尝试使用 iOS 作为日常的真机调试工作。对于一个原技术栈为 Android的人来说,发现 iOS 有很多不太方便的地方。比如如何在 Mac 电脑上安装 ipa包到 iPhone 上。

相比来说,Android 提供了adb 可以很快捷的在 终端上执行安装。而iOS 我也希望有一个可以在终端上实现安装ipa的方式,摸索了一下,终于发现了一个可行的技术方案。
by @技术头条 2022-02-03 13:17 分享 查看详情