ouc*_*cil 2 mysql performance index index-tuning
这可能看起来很愚蠢,但是在为我们的数据库中命名索引时试图坚持我的标准命名法时,最新的命名法有点冗长,而且像 DB 的所有事物一样,我想知道它是否会以任何方式对性能产生负面影响。我只是不确定索引名称的实际存储或使用方式与实际列数据的位置或方式。
例如,命名索引epoid
与命名索引是否有利ecm_products_options_product_id
?
后者更接近我们的标准,并且在应用层更容易阅读和识别。
简而言之:没有。
对于专门提及索引或生成提及索引的输出的语句,解析时间会有非常非常小的差异,但是与数据库引擎所做的所有其他工作相比,这微乎其微,简直就是噪音-太小以至于无法可靠地测量。
当没有明确使用索引名称时,即使这种差异也消失了:索引将通过它包含数据的列而不是它的名称来查找。如果引擎需要直接引用他的索引,它会通过一些内部 ID 来实现——你知道的名字本质上只适用于我们人类。
考虑到这一点,尤其是第二点,建议使用较长的描述性名称。但是有一个警告:如果名称太长,它就会变得笨拙,而且许多工具会对标识符的长度施加任意限制。例如,SQL Server 将所有名称限制为 128 个字符(如果您接近此限制,您可能已经走得太远了!)但是我看到一些工具(在其他方面也很糟糕...)任何超过 50 的东西。mySQL 文档应该告诉您内部名称长度限制是什么。
归档时间: |
|
查看次数: |
3655 次 |
最近记录: |