微课程 | 第十一课《Hint 简介和演示》
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> https://v.youku.com/v_show/id_XNDQ3OTc2MzkyNA==.html 前几期我们介绍了 Global 表和 ER 表,除此之外 DBLE 还提供了 hint 来指定路由的功能。 什么是 Hint 我们先介绍一下 hint,hint 是一种有效注释,将业务应用指定一个分库,实现中间件可以用指定的方式去下发 SQL。基本上是这样的,hint 里面是有一个路由的结果,比如我这里面 ID=1。通过拆分算法求模,我知道 ID=1 会下发给哪个库,但是真正的执行的 SQL 是另外一种 SQL,这里面这个 SQL 也不是很好,但是能表达功能。通过 hint 来计算路由,然后计算好路由以后下发的是另外一条我想下发的语句。 我们举一个例子。 比如说 insert xx select * from xxx 现在 DBLE 是不支持的,但是我们可以通过 hint 这种方式来实现。所以 hint 目的就是指定路由结果,但实际执行的是 SQL 的内容。 Hint 的分类 DBLE 的 hint 一共分这几种(如图),一个是通过 SQL 来计算路由。一个是直接指明了我要下发的节点。第三种和我们之前说的有点不一样,就是在读写分离中,我强制要求我的 select 强制走主节点,也可以通过 hint