数据存储
文章平均质量分 80
主要总结了MySql,Redis,Elasticsearch的基础知识和相关问题。
Crazy Code Farmer
码农的世界
展开
-
mysql日志( Redo Log 、Undo Log、Bin Log)
InnoDB是一个带有ACID事务支持的存储引擎,其中redo log和undo log是其实现原子性、一致性、隔离性和持久性(ACID)的重要机制。原创 2024-03-20 10:58:33 · 1077 阅读 · 0 评论 -
多路查找树(B树,B+树)
目录多路树理解B树(B-Tree树)B+树B+树应用场景B和B+的区别多路树理解多路查找树(muitl-way search tree),其每一个节点的孩子数可以多于两个,且每一个节点处可以存储多个元素。(注意:二叉树是两个叉 ,多路树一个节点不止两个叉,不清楚的查看我【重温数据结构和算法】那篇博客)B树(B-Tree树)是对二叉查找树的改进。它的设计思想是,将相关数据尽量集中在一起,以便一次读取多个数据,减少硬盘操作次数。一棵m阶的B 树 (m叉树)的特性如下:原创 2021-04-27 19:28:43 · 590 阅读 · 0 评论 -
Mysql基础概念巩固(分库分表,存储引擎,索引,备份,锁,EXPLAIN性能分析)
一.分库分表概念介绍1.什么是分库分表 简单来说,就是指通过某种特定的条件,将我们存放在同一个数据库中的数据分散 存放到多个数据库(主机)上面,以达到分散单台设备负载的效果。2.什么场景下需要分库分表 (1)单机存储容量遇到瓶颈. (2)连接数,处理能力达到上限.分库分表解决的问题: 分库分表的目的是为了解决由于数据量过大而导致数据库性能降低的问题,将原 来单体服务的数据库进行拆分.将数据大表拆分成若干数据表组成,使得单一数据库、单一数据表的数据量...原创 2021-03-25 14:10:49 · 363 阅读 · 1 评论 -
Redis基础概念巩固
一.Redis常见应用场景1.缓存:合理地使用缓存不仅可以加快数据的访问速度,而且能够有效地降低后端数据源的压力。2.共享Session :系统有些功能依赖session,,如果需要单击变为集群,可以选择redis来统一管理。3.消息队列系统:消息队列系统大型网站必备组件,因其具有异步,解耦,削峰等特性。Redis提供了发布订阅功能和阻塞队列的功能,。虽然和专业的消息队列比还不够强,对于一般的消息队列功能基本可以满足,比如份试爬虫系统中,使用redis来统一管理url队列。4.分布式锁:在分原创 2021-01-09 17:04:16 · 75 阅读 · 0 评论 -
mysql常用的数据库连接池及用法
模块二一.什么是数据连接池1.什么是连接池实际开发中“获得连接”或“释放资源”是非常消耗系统资源的两个过程,为了解决此类性能问题,通常情况我们采用连接池技术,来共享连接Connection。这样我们就不需要每次都创建连接、释放连接了,这些操作都交给了连接池.2.连接池的好处用池来管理Connection,这样可以重复使用Connection。当使用完Connection后,调用Connection的close()方法也不会真的关闭Connecti...原创 2020-10-31 10:18:01 · 2842 阅读 · 0 评论 -
Mysql易错知识点
一.mysql书写顺序和执行顺序都清楚了吗? 大家学了mysql应该都会写sql,但是sql运行执行顺序还时有一部分人比较陌生,内部运行不是按照书写顺序的,而是有一套规则,如下. Sql书写顺序和sql执行顺序(圆括号()是执行顺序,方括号编写顺序 (1)from[1](3) join[2] (2) on[3] (4) where[4] (5)group by(开始使用select中的别名,后面的语句中都可以使用)[5] (6) ...原创 2020-10-26 20:08:11 · 216 阅读 · 1 评论 -
Mysql基础概念
一.数据库设计三范式 1.第一范式 概念: 原子性, 做到列不可拆分 第一范式是最基本的范式。数据库表里面字段都是单一属性的,不可再分, 如果数据表中每个 字段都是不可再分的最小数据单元,则满足第一范式。 2. 第二范式 在第一范式的基础上更进一步,目标是确保表中的每列都和主键相关。 一张表只能描述一件事。例如:不要把学员信息和成绩信息建立在一个表,会导致数据冗余,如果删除学员信息,成绩的信息也被删除了。 3.第三范式 消除传递依赖表的信息,如果能够被推导出来,就不应...原创 2020-10-26 14:00:31 · 152 阅读 · 1 评论