数据结构与算法

Django haystack + whoosh + jieba 全文搜索

简介 业务场景 搜索栏输入塑料玩具时,希望优先搜索出 名称 或 简介 中带有 塑料玩具 的条目, 并同时匹配出 塑料 、玩具、玩具塑料、塑料玩巨等信息,按照匹配度排序,且支持匹配英文大小写。 技术选型 Django自带的模糊匹配 icontains 表示 Mysql的 like,不满足业务分词需求,且随着数据量增大,消耗的资源和时间都会线性增长,因此考虑使用专门的搜索框架 haystack 搜索

MySql存储引擎介绍

一、存储引擎概念: 存储引擎:MySQL服务自带的功能程序,MySQL服务支持多种存储引擎,例如:MySQL 5.0/5.1 (MyISAM)、MySQL 5.5/5.6 (InnoDB) 每种存储引擎功能和数据存储方式各不相同(存储引擎就是MySQL服务的功能分类) 当对表里的数据做select 、insert 、 update 、delete 访问时,MySQL服务根据表使用的存储引擎对

【算法】——会了快速排序,排序数组简直so easy

🔥前言:快速排序——分治艺术的极致演绎在算法的璀璨星河中,快速排序(Quick Sort)犹如一颗耀眼的超新星✨。由计算机科学泰斗Tony Hoare于1959年提出的这个算法,用其优雅的分治策略和惊人的实践效率,常年霸占着受欢迎排序算法"的宝座👑。想象一下:你

MySQL 崩溃恢复过程分析

天有不测风云,数据库有旦夕祸福。 前面写 Redo 日志的文章介绍过,数据库正常运行时,Redo 日志就是个累赘。 现在,终于到了 Redo 日志扬眉吐气,大显身手的时候了。 本文我们一起来看看,MySQL 在崩溃恢复过程中都干了哪些事情,Redo 日志又是怎么大显身手的。 本文介绍的崩溃恢复过程,包含 server 层和 InnoDB,不涉及其它存储引擎,内容基于 MySQL 8.0.29 源

顺序表和链表,时间和空间复杂度--数据结构初阶(1)(C/C++)

文章目录 前言 时间复杂度和空间复杂度 理论部分 习题部分 顺序表和链表 理论部分 作业部分 前言这期的话会给大家讲解复杂度,顺序表和链表的一些知识和习题部分(重点是习题部分,因为这几个理念都比较简单) 时间复杂度和空间复杂度 理论部分时间复杂度和空间复杂度的计算一般都是遵循大O表示法,然后的话时间复杂度的计算都

windows下安装mysql

下载 安装 以管理员身份启动cmd mysqld --initialize --console 生成密码 可设置环境变量 也可也不设置 设置后不用去安装目录bin去执行 mysqld -install 启动mysql服务 输入 net start mysql 或 s

MySQL 查询优化(八):分组查询该怎么优化?

分组查询 MySQL 在处理 GROUP BY 和 DISTINCT 查询的方式在大多数情况下类似,事实上,在优化过程中有时候会把在这两种方式中转换。两类查询都能够从索引中受益,通常,这也是优化这两种查询最为重要的方式。 在无法使用索引时,MySQL 对于 GROUP BY 查询有两种策略:使用临时表或者 filesort 执行分组。对于给定的查询,两种方式都没法更高效。我们可以通

MySql高可用集群测试操作

一、停止主数据库服务器host66 主数据库服务器host66 添加客户端连接使用的用户 2台从服务器会自动同步用户 create database db1; create table db1.a(id int); grant select ,insert on db1.* to yaya@"%" identified by "123qqq...A"; 客户端连接VIP地址访问数据库服务

MySQL慢查询八戒(寻常之见)

1. 避免使用子查询 由于子查询会产生大量的临时表也没有索引,所以会消耗过多的CPU和IO资源,产生大量的慢查询 【子查询性能差的原因】 我觉得:可以把子查询转化为关联查询进行优化 网友:???(你有没有很多问号) 2. in 查询的避免(我经理,所以这痛楚…我懂,k+) in 的值不要超过500个(且会利用索引) 3. 尽量避免使用外键约束 会降低性能,因为:外键会影响父表和子表的