Sql server 2008 索引每一列的负面影响是什么?

Sql server 2008 索引每一列的负面影响是什么?,sql-server-2008,indexing,Sql Server 2008,Indexing,我知道为所有列建立索引在服务器空间上会非常昂贵,但现在,空间很便宜 假设空间不是问题,索引表中的每一列是否会产生负面影响?内存便宜吗?因为当您将这些索引加载到内存中时(这是读取它们所必需的),它们会占用内存 CPU和I/O便宜吗?因为当您在每一列上添加索引时,每一次修改都需要对每个索引进行维护。因此,如果您有一个包含10个索引的表,并且修改了一行,那么这可能是10次或更多的写操作。这是非常昂贵的。索引需要在insert和update语句上更新。有时它们甚至在DELETEs上更新!这真是太棒了,服

我知道为所有列建立索引在服务器空间上会非常昂贵,但现在,空间很便宜


假设空间不是问题,索引表中的每一列是否会产生负面影响?

内存便宜吗?因为当您将这些索引加载到内存中时(这是读取它们所必需的),它们会占用内存


CPU和I/O便宜吗?因为当您在每一列上添加索引时,每一次修改都需要对每个索引进行维护。因此,如果您有一个包含10个索引的表,并且修改了一行,那么这可能是10次或更多的写操作。这是非常昂贵的。

索引需要在
insert
update
语句上更新。有时它们甚至在
DELETE
s上更新!这真是太棒了,服务器应该为自己感到骄傲。我现在有点期待stackflow社区问我这个问题……阅读:-那篇文章是关于数据类型选择的,所以它甚至不涉及维护索引的成本,但主旨是一样的:如果你仅仅停留在分析磁盘空间的成本上,你并没有给自己带来任何好处。