[英]Non-Clustered Index on all the columns
如果允许在一个表上创建249个非聚集索引,这是否意味着每列上都具有非聚集索引是安全的? 那会有什么影响? 或者我们只需要选择一些列即可创建非聚集索引。
这是:
create nonclustered index ix_test(col1, col2, col3)
与此不同:
create nonclustered index ix_test(col1)
create nonclustered index ix_test2(col2)
create nonclustered index ix_test3(col3)
索引对读取有利,对写入不利。
当您仅读取数据时,索引可以帮助您更快地找到数据并快速读取数据。
另一方面
写入数据(UPDATE / DELETE / INSERT)时,sql server必须在存储实际数据的SQL Server Pages上写入两次数据,并为Indexes写入一次数据。 这将导致写入速度变慢。
您将不得不找到一个中间地带,在该中间地带,您的读取不会遭受不足的帮助索引的影响,而您的写入不会受到太多索引的影响。
上面的声明适用于OLTP应用程序,在该应用程序中,数据的更改非常频繁,但是如果是OLAP / Data Warehouse,则数据几乎永远不会更改,因此您可以添加尽可能多的索引以提高性能。 希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.