SQL优化技术
回答
- 创建索引
删除索引
正常化
- 去正规化
80K的行并不多行的这些日子。使用这些索引的查询的聪明索引将为您提供正确的服务。
了解如何显示查询执行映射,然后学会理解它们的含义,然后相应地优化索引,表格和查询。
那么,只有80,000条记录,并且假设您的数据库设计良好且规范化,只需在您经常在WHERE或ORDER BY子句中使用的列上添加索引就足够了。你可以使用其他更复杂的技术(比如反规范化某些表,分区等),但通常只有当你有数百万条记录需要处理时才会开始使用这些技术。
ETA:
我看到你更新的问题一提的是,这是在移动平台上 - 这可能改变的事情一点。
假设你根本不能削减数据集,你可能会做的一件事就是尝试对数据库进行一些分区。这里的想法是把你的一个大表分割成几个更小的相同的表,每个表保存一部分数据。
给定行将进入哪些表将取决于你如何选择分区。例如,如果您有一个“customer_id”字段,其范围可以从0到10,000,您可以将客户0 - 2500放在表1中,将2,500 - 5,000放在表2中等,将一个大表分成4个小表。然后,您的应用程序中会有逻辑来确定要查询哪个表(或多个表)来检索给定的记录。
您希望以这种方式对数据进行分区,通常只需要一次查询其中一个分区。具体如何划分数据取决于你有哪些领域以及你如何使用它们,但总的想法是一样的。
你真的必须对你想要做的事情更具体。你的业务组合是什么?你的表结构是什么? 通用的建议是使用适当的索引,但对于这样的通用问题你不会得到太多帮助。
此外,80,000条记录不算什么。这是一张中等大小的桌子,不应该让任何体面的数据库都能够冒出汗来。
首先,如果你想要一个性能良好的数据库,索引是非常必要的。
除此之外,这些技术取决于您需要优化的内容:大小,速度,内存等?
如此广泛的话题,这取决于您想要优化的内容。但基本知识:
- 索引。一个好的索引策略很重要,索引经常被查询/排序的正确列是非常重要的。但是,您添加的索引越多,INSERT和UPDATE就越慢,因此需要权衡。
- 维护。保持索引整理并统计最新
- 优化的查询。识别速度慢的查询(使用从SQL 2005开始提供的分析器/内置信息),并查看它们是否可以更有效地编写(例如避免CURSOR,尽可能使用基于集合的操作
- 参数化/ SP使用参数化SQL查询数据库,而不是用硬编码搜索值即席SQL,这将能够更好地执行计划的缓存和重用。
- 开始与规范化的数据库架构,然后去正常化,如果适当提高性能
80000记录并不多,所以我会停下来(大数据块,有数百万数据行,我建议分区数据)
有一件值得了解的事情是,在索引字段的where语句中使用函数将导致索引不被使用。
例(甲骨文):
您使用什么类型的DB的SELECT indexed_text FROM your_table WHERE upper(indexed_text) = 'UPPERCASE TEXT';
- 1. Cuda优化技术
- 2. SQL Server数据优化技术
- 3. SQL 2005本书优化技术
- 4. 查询优化技术?
- 5. Python中的优化技术
- 6. sqlite数据库的优化技术
- 7. Django + mod_wsgi + apache + wamp优化技术的windows
- 8. 困惑三种优化技术
- 9. 可以应用哪些通用技术来优化SQL查询?
- 10. 算术表达式的优化 - 这种技术叫做什么?
- 11. 本地化技术
- 12. SQL隐藏技术?
- 13. MySQL Workbench可视化技术
- 14. 关于性能优化技术,而编码
- 15. 什么是Visual Studio中的C++编译器优化技术
- 16. Makefile为两个编译器和不同的优化技术
- 17. 使用虚拟化技术进行Web开发的优势
- 18. 缓存相关的性能优化技术?
- 19. 应该采用哪些技术来优化@ font-face渲染?
- 20. 什么统计技术适合优化权重?
- 21. ReactJS装载状态数据,优化技术
- 22. Javascript运算符优先级技术性
- 23. 基于“优化技巧”
- 24. 代码优化技巧:
- 25. Android代码优化技巧
- 26. 2d图形优化技巧
- 27. C#中的优化技巧
- 28. 何时以及如何正确使用循环优化和转化技术
- 29. Python的优化算术
- 30. iSCSI端口虚拟化技术
,你想要什么优化(?速度,存储,两者) – lexu 2009-07-14 12:16:32
对于那些谁也说:“不是一个真正的问题:”我觉得这是一个真正的问题,只是措辞不够好。 Rakesh,你能说出你认为缓慢的原因,以及为什么你需要优化。 – 2009-07-14 12:16:59
询问一般主题区域是合理的;这个人只是要求一个清单。 – 2009-07-14 12:19:30