Zis*_*han 3 mysql mysql-connector
我有一个 MySql 表,其中主键是自动增量列,然后我还有一个带有binary(16)唯一索引的列,用于存储 UUID。
有MySqlConnector一个连接选项GuidFormat,我对TimeSwapBinary16其中LittleEndianBinary16哪一个是更好的选择以及为什么感到困惑。
binary(16)当涉及插入、索引、在子句中选择列等过程中的效率和性能时,以某种顺序排列 UUID 字节是否会带来好处WHERE?
有人可以解释一下这些吗?
有一个一般原则,即按升序向索引插入新值会产生效率更高的索引。
虽然 MySQL 的默认 UUID 格式包含从时间戳生成的字节,但它们并不位于 UUID 内的字节位置,因此符合“按升序插入”目标。在 MySQL 8.0 中,他们引入了一个函数UUID_TO_BIN(),该函数可以选择重新排列字节,以便在生成 UUID 值时,它们按时间戳排序。
连接TimeSwapBinary16器选项采用该选项,因此索引插入性能更好。
如果您有兴趣,本博客文章中将通过详细基准显示非有序和有序 UUID 之间的性能差异: https: //www.percona.com/blog/2014/12/19/store-uuid-optimized-方式/
| 归档时间: |
|
| 查看次数: |
3188 次 |
| 最近记录: |