MySQL Cluster的结果顺序是怎样的

60次阅读
没有评论

共计 700 个字符,预计需要花费 2 分钟才能阅读完成。

本篇文章为大家展示了 MySQL Cluster 的结果顺序是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

最近搭建了 MySQL Cluster 的环境来学习,发现一个很有意思的现象,在不加 order by 的情况下,返回的结果顺序是随机的,每次都不一样,如下

[@more@]

mysql select * from test_ndb limit 3;
+—+——-+
| i | a     |
+—+——-+
| 5 | test5 |
| 1 | test1 |
| 2 | test2 |
+—+——-+
3 rows in set (0.05 sec)

mysql select * from test_ndb limit 3;
+—+——-+
| i | a     |
+—+——-+
| 7 | test7 |
| 3 | test3 |
| 6 | test6 |
+—+——-+
3 rows in set (0.03 sec)

mysql select * from test_ndb limit 3;
+—+——-+
| i | a     |
+—+——-+
| 5 | test5 |
| 1 | test1 |
| 2 | test2 |
+—+——-+
3 rows in set (0.05 sec)

我想这应试与 NDB 的存储方式有关吧,NDB 实际上将表的数据用 hash 算法分布到不同结点,NDB 表的主键并不像 InnoDB 一样是聚集索引,而是 hash 索引,所以在取数据的时候每次的顺序就不一定一样了。

上述内容就是 MySQL Cluster 的结果顺序是怎样的,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注丸趣 TV 行业资讯频道。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-19发表,共计700字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)