当我创建一个全新的数据库和/或表时,应该遵循什么样的索引策略。因为我不会有任何用户查询来分析或要求找到主要使用的列。什么应该是我的索引战略/(哪些列应该框住聚集,哪些列应该参与非聚集)?在这种情况下我应该如何继续?新表上的索引策略 - SQL Server
1
A
回答
1
事先不知道什么,你能做的最好的就是慷慨申请指标。这会大大降低写入性能,但至少可以很好地处理意外的查询。
1
索引当前在函数/存储过程中使用的列。一旦您的应用程序开始使用,您可以相应地进行调整并运行调整向导。
1
当涉及新的开发项目与生产支持时,在索引进入优先级列表时很难有绝对的答案。就新的开发项目而言,在数据库设计,索引策略和数据访问代码上花费同等时间是明智的。没有它,应用程序可能成为一个需要在生产环境中引起高度关注的维护噩梦。在很多方面,如果数据库被认为是一个预计永远没有任何关注地运行的黑匣子,说起来容易做起来难。如果你面对这个问题,那么有必要首先改变这种心态,并确保时间,精力和资源正确地满足向前发展的数据库需求。
对于生产应用程序,查看索引和查询计划在发生性能问题时应该是高优先级。在很多方面,改变或添加索引应该是经过审查,分析,测试和部署的许多项目之一,而不是考虑索引是解决性能问题的灵丹妙药。
索引的另一个重要考虑因素是随着应用程序的更改,索引可能也需要更改。不要认为索引停滞不前,而是要考虑索引含义的代码。因此,随着应用程序的变化,不要害怕改变,测试和部署改进的索引策略。
你可以阅读这里进一步http://www.mssqltips.com/sqlservertip/1452/sql-server-index-checklist/
相关问题
- 1. SQL Server中的表/视图/索引视图策略
- 2. lucene索引更新策略
- 3. SQL Server表上的索引
- 4. Laravel索引策略
- 5. MySQL索引策略
- 6. solr索引策略
- 7. 父子表的SQL策略
- 8. SQL Server事实表索引
- 9. SQL Server索引
- 10. SQL Server索引
- 11. SQL Server索引
- 12. MySQL DB的最佳索引策略
- 13. 数据库部署策略(SQL Server)
- 14. 何时创建新的SQL Server索引?
- 15. 搜索策略
- 16. SQL Server - 计算列上的索引?
- 17. SQL Server 2008上的全文索引
- 18. MS SQL Server 2005上的索引varchar
- 19. 位域上的SQL Server索引
- 20. SQL Server; TEXT列上的索引
- 21. SQL - Windows策略
- 22. 从非索引视图引用索引表的SQL Server SELECT
- 23. 用于插入高读取表(Sql Server)的数据库策略
- 24. 在SQL Server 2000中识别未使用表的策略?
- 25. Solr索引策略问答网站
- 26. Lucene索引/连字符查询策略
- 27. SQL Server:如何防止索引现有数据的新索引
- 28. 索引SQL SERVER中的大表
- 29. SQL Server 2008 - 索引表的优点
- 30. SQL Server索引 - HEAP上的非聚簇索引
我不知道如何回答这个问题。索引策略通常基于已知(或假定)的一组查询和更新操作来构建。如果您构建的数据库仅发生插入操作,则无论是否索引或基于递增值的单一(聚集)索引都将是最有效的。在开始查询时它不起作用,但是如果不知道需要支持哪种类型的查询,则无法建立索引策略。 – 2012-04-21 20:13:09