数据库开发
文章平均质量分 90
记录个人的数据库技能学习
叫我DPT
若有错误与不足请指出,关注DPT一起进步吧!!!
展开
-
mysql中InnoDB索引与MyISAM索引
InnoDB 的聚簇索引和二级索引设计使其更适合事务处理和多用户并发访问,而 MyISAM 的非聚簇索引和全文索引支持使其在特定的读密集型应用中表现更佳。覆盖索引是优化查询性能的重要手段,通过创建合适的索引,可以显著提高数据库的查询效率。如果所需的全部列是A,C,但是有一个复合索引A,B,C,此时也不需要多余的回表查询,因为索引都包含所需数据。包含了查询中所需的全部列,因此查询可以直接从索引中获取数据,而不需要访问实际的数据行。如果查询中所需的三个列,它们各自都有索引,这个查询也不算覆盖索引查询。原创 2024-11-05 18:07:39 · 325 阅读 · 0 评论 -
MySQL索引从基础到原理,看这一篇就够了
https://developer.aliyun.com/article/841106原创 2024-10-31 18:31:01 · 457 阅读 · 0 评论 -
Mysql数据库Buffer Pool缓冲池详解
Innodb 存储引擎设计了一个缓冲池(,来提高数据库的读写性能。Buffer Pool 以页为单位缓冲数据,可以通过参数调整缓冲池的大小,默认是 128 M。Free List (空闲页链表),管理空闲页;Flush List (脏页链表),管理脏页;LRU List,管理脏页+干净页,将最近且经常查询的数据缓存在其中,而不常查询的数据就淘汰出去。;将 LRU 链表 分为young 和 old 两个区域,加入缓冲池的页,优先插入 old 区域;原创 2024-10-31 10:58:51 · 842 阅读 · 0 评论 -
mongodb集群
分片键(Shard Key): 首先,你需要选择一个分片键,这通常是文档中的一个字段或多个字段的组合。分片键用于确定文档应该存储在哪个分片上。数据分裂(Splitting): 当文档被插入到一个分片中时,如果该分片上的数据量达到一定阈值(由chunkSize控制),那么这个分片就会被分裂成两个或更多的新分片。数据迁移(Migration): 分片集群中的平衡器(balancer)会监控数据分布,并自动将分片从一个分片移动到另一个分片,以保持数据的均衡分布。原创 2024-10-08 12:28:38 · 1443 阅读 · 0 评论 -
python操作mongodb
在python当中,一般常用于开发中操作monoDB的模块无非三个:pymongo, mongoengine(相当于mysql中的sqlalchemy), moter。moter是python中基于pymongo实现的异步操作库,类似于aiomysql,aiomysql也是python基于pymysql实现的异步库。若有错误与不足请指出,关注DPT一起进步吧!原创 2024-10-08 09:43:25 · 459 阅读 · 0 评论 -
MongoDB基础
MongoDB 是由C++语言编写并基于分布式文件存储的开源数据库,属于NOSQL。MongoDB 是一款介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的NOSQL数据库。它面向文档存储,而且安装和操作起来都比较简单和容易,而且它支持各种流行编程语言进行操作,如Python,Node.js,Java,C++,PHP,C#等。目前在大数据、内容管理、持续交付、移动应用、社交应用、用户数据管理、数据中心等领域皆有广泛被使用。原创 2024-10-07 20:36:12 · 1341 阅读 · 0 评论 -
Elasticsearch快速入门
倒排索引(Inverted Index),是Elasticsearch中的索引工作机制。Elasticsearch的工作流程如下,因为使用倒排索引产生的文档记录要比mysql数据行少多了,所以会比较快。Elasticsearch是面向文档的,以json格式存储数据的NoSQL数据库,也是一个全文搜索引擎。es提供了retfulAPI风格操作接口给开发者对索引、类型、文档、字段、映射等进行增删查改操作。注意:es中的类型在es7.x版本中已经没有,在后面的8.x版本中被彻底删除掉。PUT / 索引名称。原创 2024-09-25 16:54:34 · 988 阅读 · 0 评论 -
django项目添加测试数据的三种方式
文档:https://docs.djangoproject.com/zh-hans/3.2/howto/custom-management-commands/在子应用目录下添加一个包目录,然后这个commands里面处理以外其他文件的文件名将作为django-admin或者python manage.py的命令选项了。注意:文件名不能以_开头,否则不会被识别为命令。接着我们可以在commands包下根据自己的业务需要,编写对应的命令。原创 2024-09-21 20:06:54 · 1633 阅读 · 0 评论 -
redis
mysql是一种关系型数据库(RDB、RMDBS)。原创 2024-09-20 12:04:22 · 1679 阅读 · 0 评论 -
redis基础
Redis(Remote Dictionary Server ,远程字典服务) 是一个使用ANSI C编写的开源、支持网络、基于内存、可选持久性的键值对存储数据库,是NoSQL数据库。redis的出现主要是为了替代早期的Memcache缓存系统的。map内存型(数据存放在内存中)的非关系型(nosql)key-value(键值存储)数据库,原创 2024-07-26 21:31:10 · 786 阅读 · 0 评论 -
数据库开发:mysql基础一
MySQL是一种开源的关系型数据库管理系统(RDBMS),它是最流行和广泛使用的数据库系统之一。1996年,MySQL 1.0,由瑞典公司MySQL AB开发2008年1月16号 Sun公司收购MySQL。2009年4月20,Oracle收购Sun公司。MySQL以其高性能、稳定性和可靠性而闻名,由于其体积小、速度快,尤其是开放源码这一特点,并被广泛应用于各种规模的应用程序和网站。(5)启动MySQL服务方式1:启动服务进程。原创 2024-07-04 10:20:52 · 899 阅读 · 0 评论 -
数据库开发:MySQL基础(二)
一对一关系(One-to-One Relationship)指的是两个实体之间存在一种对应关系,其中一个实体的每个记录只能对应另一个实体的一条记录,而另一个实体的每个记录也只能对应一个实体的记录。如果“表2”的某行在“表1”中没有匹配行,那么在返回结果中,“表1”的字段值均为空值(NULL)。如果“表1”的某行在“表2”中没有匹配行,那么在返回结果中,“表2”的字段值均为空值(NULL)。对于两个具有关联关系的表而言,相关联字段中主键所在的表就是主表(父表),外键所在的表就是从表(子表)。原创 2024-07-25 11:09:27 · 1417 阅读 · 0 评论