Phi*_*rly 3 oracle oracle-sql-developer
我注意到在运行 SQL 查询时,第二次比第一次更快。所以我的问题是,在 Oracle SQL Developer 中,您在哪里可以看到解释这种行为的统计数据?
您遇到的情况称为缓存。数据库不必第二次访问磁盘,因为它可以从自己的缓冲区缓存中获取数据,或者操作系统/磁盘阵列也可以从自己的缓存中更快地提供数据。
为了查看 Oracle 是从磁盘获取数据还是使用其缓存,您可以在 SQL Developer 中启用自动跟踪。
你会得到如下内容:
Statistics
----------------------------------------------------------
1 recursive calls
0 db block gets
3 consistent gets
0 physical reads
0 redo size
538 bytes sent via SQL*Net to client
543 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed
Run Code Online (Sandbox Code Playgroud)
从磁盘中提取物理读取。
使初始查询变慢的另一个因素是 Oracle在第一次看到查询时必须对其进行硬解析- 这涉及为查询找到最佳(就 Oracle 优化器而言)执行计划,并且计算量很大(CPU) 昂贵,因此需要时间。
| 归档时间: |
|
| 查看次数: |
11915 次 |
| 最近记录: |