摘要: 一、MyCat分库原理 1、非分片字段查询 Mycat中的路由结果是通过分片字段和分片方法来确定的。例如下图中的一个Mycat分库方案: 根据 tt_waybill 表的 id 字段来进行分片 分片方法为 id 值取 3 的模,根据模值确定在DB1,DB2,DB3中的某个分片 如果查询条件中有 id 阅读全文
posted @ 2018-06-12 00:18 yifanSJ 阅读(472) 评论(0) 推荐(0) 编辑
摘要: 二叉查找树 二叉树具有以下性质:左子树的键值小于根的键值,右子树的键值大于根的键值。 如下图所示就是一棵二叉查找树, 对该二叉树的节点进行查找发现深度为1的节点的查找次数为1,深度为2的查找次数为2,深度为n的节点的查找次数为n,因此其平均查找次数为 (1+2+2+3+3+3) / 6 = 2.3次 阅读全文
posted @ 2018-06-11 22:44 yifanSJ 阅读(875) 评论(0) 推荐(0) 编辑
摘要: 今天和同学探讨说MySQL哪些存储引擎支持hash索引,因为所看书籍MySQL版本和现有的MySQL版本有出入,故中间出了点歧义。所以就手动敲了一下代码,测试了一下MySQL8.0中的存储引擎是如何支持hash索引的。 我们都知道MySQL最常用的存储引擎为InnoDB和MyISAM。它们默认的存储 阅读全文
posted @ 2018-06-11 22:24 yifanSJ 阅读(994) 评论(0) 推荐(0) 编辑
摘要: Ok,我们知道了,引擎就是一个程序的核心组件。 简单来说,存储引擎就是指表的类型以及表在计算机上的存储方式。 存储引擎的概念是MySQL的特点,Oracle中没有专门的存储引擎的概念,Oracle有OLTP和OLAP模式的区分。不同的存储引擎决定了MySQL数据库中的表可以用不同的方式来存储。我们可 阅读全文
posted @ 2018-06-11 17:17 yifanSJ 阅读(2505) 评论(0) 推荐(0) 编辑
摘要: 一、EXPLAIN介绍 MySql提供了EXPLAIN语法用来进行查询分析,在SQL语句前加一个"EXPLAIN"即可。比如我们要分析如下SQL语句: 运行上面的sql语句后你会看到,下面的表头信息: table | type | possible_keys | key | key_len | re 阅读全文
posted @ 2018-06-11 15:12 yifanSJ 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 查看表定义: show create table users; 查看表的索引: show index from users; 你要获取第一个表的所有信息,你说全表扫描快呢还是索引扫描快呢?所以当你查找库(包括left join中的临时库)的所有信息时,数据库会选择最优方法——全表扫描!!! /*s表 阅读全文
posted @ 2018-06-11 11:56 yifanSJ 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 普通索引 添加INDEX ALTER TABLE `table_name` ADD INDEX index_name (`column`) 主键索引 添加PRIMARY KEY ALTER TABLE `table_name` ADD PRIMARY KEY (`column`) 唯一性约束 添加U 阅读全文
posted @ 2018-06-11 11:55 yifanSJ 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 一、区别 1. HttpURLConnection是Java的标准类,它继承自URLConnection,可用于向指定网站发送GET请求、POST请求。采用流式处理,比较便于流量管控、处理大的文件或参数 2. HttpClient 是Apache的一个三方网络框架,网络请求做了完善的封装,api众多 阅读全文
posted @ 2018-06-04 15:35 yifanSJ 阅读(959) 评论(0) 推荐(0) 编辑
摘要: 为何要使用同步? java允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时(如数据的增删改查), 将会导致数据不准确,相互之间产生冲突,因此加入同步锁以避免在该线程没有完成操作之前,被其他线程的调用, 从而保证了该变量的唯一性和准确性。 1. 同步方法 即有synchronized关键字 阅读全文
posted @ 2018-06-04 11:35 yifanSJ 阅读(401) 评论(0) 推荐(0) 编辑
摘要: java 线程池的实现原理,threadpoolexecutor关键参数解释 hashmap的原理,容量为什么是2的幂次 为什么要同时重写hashcode和equals ConcurrentHashMap如何实现线程安全? 介绍Java多线程的5大状态,以及状态图流转过程 介绍下Synchroniz 阅读全文
posted @ 2018-06-03 14:40 yifanSJ 阅读(398) 评论(0) 推荐(0) 编辑