分布式唯一ID 一、逻辑要求 1. 全局唯一:相同业务和不同业务id都要保证不重复,以满足分布式部署、弹性伸缩、数据治理、追溯等要求。 2. 趋势递增:需要对BTree数据结构友好,保证查询性能。 3. 单调递增:在相同业务内保证后生成的id一定比先生成的大,满足事务版本号、IM实时消息、排序等要求 ...
分类:
其他好文 时间:
2020-05-14 12:49:23
阅读次数:
86
MySQL官方对索引的定义为:索引是帮助MySQL高效获取数据的数据结构。 索引的本质:索引是数据结构,可以简单的理解为“排好序的快速查找B+树数据结构” B+树:B代表平衡(balance)而不是二叉(binary) 检索原理: mysql索引结构: BTREE: B树(Balance Tree多 ...
分类:
数据库 时间:
2020-05-14 01:14:41
阅读次数:
72
首先我们要知道mysql中 myisam,innodb默认使用的是 Btree索引,至于btree的数据结构是怎样的都不重要,只需要知道结果,既然是索引那这个数据结构最后是排好序;就像新华字典他的目录就是按照a,b,c..这样排好序的; 所以你在找东西的时候才快,比如你找 “中” 这个字的解释,你肯 ...
分类:
数据库 时间:
2020-05-09 00:40:45
阅读次数:
80
题目链接: 思路:dfs序+暴力匹配 1. 错误的想法:直接把?ss?和?tt?先转换成 DFS 序,然后看?tt?的 DFS 序是否是?ss?的 DFS 序的「子串」。 反例如下: 2. 为了解决这个问题,我们可以引入两个空值 lNull 和 rNull,当一个节点的左孩子或者右孩子为空的时候,就 ...
分类:
其他好文 时间:
2020-05-07 11:59:42
阅读次数:
65
1.MyISAM 特点:不支持事务、外键。支持3种不同的存储格式:静态表,动态表,压缩表 优点:访问速度快,对事务完整性没有要求(select、insert) 2.InnoDB 特点:提供了具有提交、回滚和崩溃恢复能力的事务安全。支持自动增长列、外键 相比MyISAM,写的处理效率差,占用多的磁盘空 ...
分类:
数据库 时间:
2020-05-07 00:34:19
阅读次数:
80
"题目链接" 题意 给出$n$个点$m$条边的无向图与$k$个特殊点,要在两个特殊点间添加一条边,求从$1$到$n$最短路的最大值。 题解 $p_i$表示从$1$出发到$i$的最短路,$q_i$表示从$n$出发到$i$的最短路。选择两个特殊点$a$和$b$使$\min(p_a+q_b+1,q_a+p ...
分类:
其他好文 时间:
2020-05-05 23:19:50
阅读次数:
86
1.mysql逻辑框架简介 和其它数据库相比,MySQL 有点与众不同,它的架构可以在多种不同场景中应用并发挥良好作用。主要体现在存储引擎的架构上,插件式的存储引擎架构将查询处理和其它的系统任务以及数据的存储提取相分离。这种架构可以根据业务的需求和实际需要选择合适的存储引擎。 各层介绍: 1.1 连 ...
分类:
数据库 时间:
2020-05-04 23:02:55
阅读次数:
115
实际的开发中,对数据库的操作常常会涉及到多张表,这在面向对象中就涉及到了对象与对象之间的关联关系。 针对多表之间的操作,MyBatis提供了关联映射,通过关联映射就可以很好的处理对象与对象之间的关联关系。 [TOC] 你需要了解的知识点 1、关联关系种类 数据库: 在关系型数据库中,多表之间存在着三 ...
分类:
其他好文 时间:
2020-05-03 20:58:35
阅读次数:
78
"题目" 地图是一棵无根树,pty从某个点出发,每次可以往某一条边走,“逃离”定义为可以在不遇到怪(点或边上相遇)的情况下,到达叶子节点。 若干个叶子节点上一开始可以放若干个怪,每次这些怪都可以往某一边走。 问对于每个点,最少要放多少怪才能保证抓住pty。 $n \leq 70000$ 实际上可以做 ...
分类:
其他好文 时间:
2020-05-02 23:17:02
阅读次数:
95
一、按算法、结构分: 1.BTREE索引就是一种将索引值按一定的算法,存入一个树形的数据结构中,如二叉树一样,每次查询都是从树的入口root开始,依次遍历node,获取leaf. 通常说的索引,多指BTREE 2.位图索引:位图索引适合只有几个固定值的列,基数值比较小的列;比如boolean类型的列 ...
分类:
数据库 时间:
2020-05-02 22:33:38
阅读次数:
102