数据结构与数据库总结
文章平均质量分 79
数据结构与数据库总结
你是什么品种的萝卜
人生何处不迷雾,东隅已逝,桑榆非晚
展开
-
【数据库】分库分表 & 数据库迁移
2. 数据库迁移1. 分库分表。原创 2024-04-27 19:25:22 · 379 阅读 · 1 评论 -
【数据库】elasticsearch
当删除请求发送后,文档并没有真的被删除,而是在.del文件中被标记为删除。在新的文档被创建时,Elasticsearch会为该文档指定一个版本号,当执行更新时,旧版本的文档在.del文件中被标记为删除,新版本的文档被索引到一个新段。在创建索引时,可以指定主分片的数量,一旦索引创建完成,主分片的数量就不能再更改。副本分片与主分片分布在不同的节点上,当主分片所在的节点出现故障时,副本分片可以接管主分片的工作,确保服务的连续性。副本是主分片的完全复制,用于提供数据的冗余备份,增强数据的可用性和容错能力。原创 2024-04-27 19:17:49 · 448 阅读 · 2 评论 -
【数据库】mongo
而多键索引主要用于支持包含数组或嵌套文档的字段的查询,它允许数据库系统对数组中的每个元素进行索引。索引大小:非聚簇索引的大小通常取决于索引字段的值和指针的大小。而多键索引可能会增加索引的大小,因为对于每个数组元素,索引条目:非聚簇索引的索引条目是指向数据行的指针和索引字段的值。而多键索引的索引条目是数组元素或嵌套文档本身。索引本身是在高速缓存当中,相比磁盘IO操作会有大幅的性能提升。面向文档 的存储方式(bson),模式自由,不需要字段定义。单字段索引、复合索引、多键索引、哈希索引、文本索引。原创 2024-04-27 19:11:24 · 247 阅读 · 0 评论 -
【数据库】mysql
同样,如果查询条件包含范围查询,如a=1 and b>2 and c=3,那么索引匹配在b字段上就会停止,因为b字段是一个范围查询,它之后的字段(如c字段)将无法使用索引。一个表可以有多个非聚簇索引,因为非聚簇索引只是数据的副本,并不会改变数据的物理存储顺序。优化查询计划:查询优化器生成一个或多个可能的查询执行计划,优化器会评估每个计划的成本(磁盘/CPU/内存),选择成本最低的。在一个事务内执行相同的查询,但由于其他事务插入了满足其查询条件的新行,导致第二次查询返回了更多的行。原创 2024-04-27 19:08:07 · 909 阅读 · 0 评论 -
【数据结构】B树, B+树, B*树, 红黑树, 平衡二叉树
mongo的存储引擎 WiredTiger 实现lazyB树,是一种 B+ 树变种。任一节点的左子树和右子树都是平衡二叉树,且高度差不能超过1(平衡因子)(1)mongo 3.2之前用的是B树,后面改为B+树。在B+的非根和非叶子结点,增加指向兄弟的指针。(4)数据插入和删除。原创 2024-04-27 18:57:01 · 847 阅读 · 0 评论