我当前的 Oracle 设置存在性能问题。查询需要半秒钟,我不知道如何进一步加快速度。
我已将我的 RDS 实例从 t2.medium 升级到 m4.large,为所有查询的 where 子句中使用的两列创建了一个索引,并将我的查询限制为返回单行。
我的表格(总共有 5 个 - 其模式不是我自己设计的)有 ~700 列,最少 7 行,最多 160,000 行。
无论我查询哪个表(直接从 SQL Developer 或我的应用程序)都需要大约半秒钟。如果我同时运行所有查询,仍然需要大约半秒钟。
对于这 5 个表,我的所有查询基本都是相同的。
SELECT /*+ PARALLEL(auto) */ * FROM (SELECT VALUE_I_WANT FROM TABLE_I_CARE_ABOUT WHERE (CLAUSE_ONE = 'X' AND CLAUSE_TWO = 'Y')) WHERE ROWNUM=1;
正如我所提到的,我在所有这些表上都有针对列 CLAUSE_ONE 和 CLAUSE_2 的索引。
我还能做些什么来尝试将这个查询缩短到更短的几分之一秒?