![]() |
1
7
|
![]() |
2
7
索引(或索引)并不糟糕。在过去的几十年里,很多非常聪明的人花了相当多的时间来确保这一点。 然而,你的模式,缺乏同样的专业知识和努力,可能会非常糟糕。
YMMV公司。 |
![]() |
3
3
简而言之: 指标糟糕吗:是和否 更长的答案: 如果使用得当的话,它们不会很烂。也许你应该开始阅读索引是如何工作的,为什么它们可以工作,为什么有时它们不工作。 |
![]() |
4
3
没有索引是不好的,但是您必须注意如何使用它们,否则它们会影响查询的性能。
第二:索引
对于索引扫描来说,数据库表中有多少记录并不重要。由于使用了(平衡的)二叉树搜索,将记录数量加倍只会导致一个额外的搜索步骤。 确定表的主键后,SQL将自动在该列上放置聚集索引。聚集索引的性能非常好。此外,还可以在SELECT、JOIN、WHERE、GROUP BY和ORDER BY语句中经常使用的列上放置非聚集索引。请记住,索引有一定的重叠,尽量不要将聚集索引包含到非聚集索引中。 同样有趣的是索引上的填充因子。是否要优化表的读取(高填充因子-更少存储,更少IO)或写入(低填充因子-更多存储,更少重建数据库页)。
第三:分区
衡量就是知道
|
![]() |
5
2
索引大小将与行数和索引值的长度成比例。
索引不仅保留索引值,还保留指向行的某种指针(
如果你有
事实上,这种技术有时在这种所谓的分区索引中使用。它有它的优点和缺点。 |
![]() |
6
2
标准的b树索引最适合于具有相当选择性的索引,本例不适合这种情况。您不会说您使用的是什么DBMS;Oracle有另一种类型的索引,称为位图索引,它更适合OLAP环境中的低选择性索引(因为这些索引维护成本高昂,不适合OLTP环境)。 乐观主义者将根据统计数据来决定是否认为索引将有助于在最快的时间获取数据;如果不这样做,optmiser将不会使用它。
|
![]() |
7
1
对不起,我不太明白你说的“大”是什么意思。
|
![]() |
8
0
索引纯粹是为了性能。如果索引不能提高您感兴趣的查询的性能,那么它就很糟糕。 至于磁盘的使用,你必须权衡一下你的担忧。不同的SQL提供程序构建索引的方式不同,但是作为客户机,您通常相信它们尽了最大的努力。在您所描述的情况下,聚集索引可能对大小和性能都是最佳的。 |
![]() |
9
0
它将足够大,可以按排序顺序保存所有行的这些值。
|
![]() |
ecology · 基于R中随机生成数集的子集列 2 年前 |
![]() |
Krischk · 使用python;获取列表中错误项的索引[已关闭] 2 年前 |
![]() |
Mohona · 对一维数组元素的迭代在几次迭代后给出了索引错误 2 年前 |
![]() |
X3VI · 熊猫-重命名_轴后无法按预期工作-为什么? 2 年前 |
![]() |
dam · 为什么这是我使用索引的输出?什么是索引?[闭门] 2 年前 |
![]() |
Sahil Panhalkar · 显示索引超出范围的列表更新语句 2 年前 |
![]() |
SpaceBallz · 比较嵌套列表中的值 2 年前 |
![]() |
startresse · 自定义type\u索引顺序,无boost 2 年前 |