文章 2020-03-20 来自:开发者社区

内核干货 | 数据库存储引擎如何利用好CPU缓存?

由于X-Engine数据页编码格式和查找算法与很多数据库引擎(如InnoDB)是类似的,因此文中提出的方法对使用类似数据页格式的存储引擎都是普适的。 1、X-Engine数据页格式和页内查找算法 X-Engine是LSM-tree架构的存储引擎。查找一条记录,首先从内存表Memtable中查找,未命中,则从磁盘中查找。磁盘上的数据,通过索引定位到目标DataBlock,并装载进内存查找目标记录。....

内核干货 | 数据库存储引擎如何利用好CPU缓存?
文章 2020-02-11 来自:开发者社区

内存KV缓存/数据库,可以选择它? | 1分钟系列

互联网业务,绝大部分场景,会使用缓存服务。 但有时候,确实会使用到进程内存缓存/数据库,这个时候,LevelDB就能派上用场了。啥是LevelDB?LevelDB是Google开发的,一个速度非常块的KV存储库(storage library),它支持字符串的key与字符串的value,并且这种映射关系按key排序(ordered mapping)。LevelDB有什么特点?(1)key和val....

问答 2019-10-11 来自:开发者社区

数据库错误提示,清楚缓存后显示正常但第二天问题重新出现

网页打不开并数据库错误提示,清楚缓存后显示正常但第二天问题重新出现3306端口不监听,重启后监听但第二天问题依然/usr/local/mysql/bin/mysqld_safe 存在问题

问答 2019-09-19 来自:开发者社区

对于高并发请求(上万QPS)访问网站获取相关数据,而此时数据库正在更新数据,如何处理旧缓存?

请问对于高并发请求(上万QPS)访问网站获取相关数据,而此时数据库正在更新数据,如何处理旧缓存?如果直接删除缓存,怎么保证高并发量不会压垮系统和数据库? 本问题来自阿里云开发者社区的【11大垂直技术领域开发者社群】。https://developer.aliyun.com/article/706511 点击链接欢迎加入感兴趣的技术领域群。

问答 2019-08-16 来自:开发者社区

Redis与数据库,这种情况如何缓存同步?

本问题来自阿里云开发者社区的【11大垂直技术领域开发者社群】。https://developer.aliyun.com/article/706511 点击链接欢迎加入感兴趣的技术领域群。

文章 2019-08-12 来自:开发者社区

缓存与数据库一致性保证

本文主要讨论这么几个问题: (1)啥时候数据库和缓存中的数据会不一致 (2)不一致优化思路 (3)如何保证数据库与缓存的一致性 一、需求缘起 上一篇《缓存架构设计细节二三事》(点击查看)引起了广泛的讨论,其中有一个结论:当数据发生变化时,“先淘汰缓存,再修改数据库”这个点是大家讨论的最多的。 上篇文章得出这个结论的依据是,由于操作缓存与操作数据库不是原子的,非常有可能出现执行失败。 假设先写数.....

文章 2019-08-09 来自:开发者社区

究竟先操作缓存,还是数据库?

缓存存储,也是数据的冗余。 (1)数据库访问数据,磁盘IO,慢; (2)缓存里访问数据,存操作,快; (3)数据库里的热数据,可在缓存冗余一份; (4)先访问缓存,如果命中,能大大的提升访问速度,降低数据库压力; 这些,是缓存的核心读加速原理。 但是,一旦没有命中缓存,或者一旦涉及写操作,流程会比没有缓存更加复杂,这些是今天要分享的话题。 读操作,如果没有命中缓存,流程是怎么样的? 答:如下图所....

文章 2019-08-09 来自:开发者社区

缓存与数据库不一致,咋办?

缓存与数据库的操作时序,不管是《Cache Aside Pattern》中的方案,还是《究竟先操作缓存,还是数据库?》中的方案,都会遇到缓存与数据库不一致的问题。今天聊聊这个问题。 一、数据库主从不一致 先回顾下,无缓存时,数据库主从不一致问题。 如上图,发生的场景是,写后立刻读: (1)主库一个写请求(主从没同步完成) (2)从库接着一个读请求,读到了旧数据 (3)最后,主从同步完成 导致的.....

文章 2019-08-02 来自:开发者社区

如何保证缓存(redis)与数据库(MySQL)的一致性

【说明】  对于热点数据(经常被查询,但不经常被修改的数据),我们可以将其放入redis缓存中,以增加查询效率,但需要保证从redis中读取的数据与数据库中存储的数据最终是一致的。本文基于“孤独烟”与“58沈剑”两位的文章,针对一致性的问题进行了汇总总结,两位的原文链接见文末。 【前言】   客户端对数据库中的数据主要有两类操作,读(select)与写(DML)。针对放入redis中缓存的热点数....

文章 2019-06-01 来自:开发者社区

用Redis作为Mysql数据库的缓存【转】

用Redis作Mysql数据库缓存,必须解决2个问题。首先,应该确定用何种数据结构存储来自Mysql的数据;在确定数据结构之后,还要考虑用什么标识作为该数据结构的键。 直观上看,Mysql中的数据都是按表存储的;更微观地看,这些表都是按行存储的。每执行一次select查询,Mysql都会返回一个结果集,这个结果集由若干行组成。所以,一个自然而然的想法就是在Redis中找到一种对应于Mysql行的....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐