温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
我们再来做一个查询测试,那这次查询测试呢,我们根据UCID来查询。好,那么这呢,我们写test by user ID。那这个UCID的条件怎么写呢?我们创建一个查询条件的这样的一个对象。上面写order。写EQ,那么user ID这个是我们要查询的列,比如说等于一。那就是我们组装的一个查询条件,然后呢,我们把这个查询条件呢,放到select list的参数当中,这样的话呢,我们的应用程序呢,就会根据user ID来进行一个查询,好我们右键运行一下。
01:11
好,我们来看一下我们这面生成的logic circle,那么logic circle呢,是select,所有的列from order where user ID等于好,User ID等于几呢?等于一,那么实际的circle呢?这面有select from t order,零,然后you all。现据并没有呢,因为根据我们的分库策略UCIID等于一的记录。上一次查询所有记录一样,查询了两个数据源,而这一次呢,他只查询了一个数据源,那么这也是为什么我们在做,那这也是为什么我们在做水平分库分片策略的时候,用UCID来做这样的一个分片条件,原因呢就是我们有可能会经常根据user ID来查询它下面的订单,也就是说查询某个用户下面的所有订单,其实是我们应用程序当中经常会用到的一个功能,那么为了提高查询的效率,所以呢,我们在分片的时候呢,巧妙的使用了UCID这样的一个列来做分片策略,这样的话呢,当根据UCIID来查询这个UCIID下面的所有订单的时候,它只需要查询一个数据源就好了。那么实际上在我们的分。
02:47
偏算法当中还有很多其他的策略,比如说呢,时间段的这个分片算法,那如果我们经常要根据一个时间段或者是一个时间范围来进行数据的查询的话,那你的分片策略呢,就可以用这样的一些分片策略了,所以呢,实际上这些不同的分片算法呢,它是适用于不同的场景的。
我来说两句