首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Oracle10g数据库/表调优

Oracle10g数据库/表调优
EN

Stack Overflow用户
提问于 2009-09-08 07:53:55
回答 3查看 204关注 0票数 0

我正在为我的ASP.NET网站使用Oracle Datbase 10g标准版。我有一个表,它将填充每天的数据(每天大约10000行)。该表中数据的增长率是100%,也就是说,每年的行数都会增加之前的10000行。

这是报告的主表,如graphical和crystal。

我知道当数据增加时,select查询性能会降低。在这里,我希望您能帮我调优我的Oracle数据库/表,以便select查询的性能始终保持良好?

我的甲骨文不是很好。请帮帮我.............

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-09-08 09:13:57

实际上,没有理由认为性能会随着表的增加而降低。如果您的查询使用索引来检索单独的行或焦点集(即索引范围扫描),那么随着表的增长,性能应该保持稳定。这在一定程度上取决于您的数据配置文件。低聚类因子的索引将继续执行,但高聚类因子的索引将降级。Find out more

您几乎肯定会遇到问题的是运行不使用索引或使用索引快速全扫描的查询。随着表的增长,这样的查询显然会随着时间的推移而降低。为了处理这种情况,您可以构建预聚合数据的物化视图。

最好的一般建议是

  1. 读取了Oracle online documentation。现在(使用Statspack)对你的查询性能进行comprehensive.
  2. Start基准测试已经很不错了。这样,你就能够进行趋势分析,并在事情开始出错时发现问题。
票数 5
EN

Stack Overflow用户

发布于 2009-09-08 08:04:56

真的很简单,确保你的索引和你的查询匹配。检查你的解释计划,通常的神谕东西--仔细阅读这个主题,你会发现很多信息!

这取决于查询是如何运行的。如果您的查询只拉回一个月的数据,那么按月分区可以带来巨大的好处。那么你只会达到你原本会达到的数据量的1/12。但是,如果查询没有以这种方式受到约束,那么这可能没有什么帮助。

最后,请确保您不是为了在报告中总结所有数据而阅读所有数据。因此,如果要执行此操作,请考虑创建一个夜间作业来创建聚集表,并对其进行查询。

哦;另外,如果插入速度是个问题,您可能希望保持较低的索引数-如果是这样的话,您可能需要有一个单独的报告表,用于插入实时数据的表,然后每晚同步数据。

票数 2
EN

Stack Overflow用户

发布于 2009-09-08 17:44:22

生成额外的测试数据,并在性能确实下降时进行测试。也许你什么都不用担心:)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1392569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档