参考自《深入解析oracle》
db file scattered read(DB 文件分散读取)这种情况通常显示与全表扫描相关的等待。当数据库进行全表扫时,基于性能的考虑,数据会分散(scattered)读入 Buffer Cache。如果这个等待事件比较显著,可能说明对于某些全表扫描的表,没有创建索引或者没有创建合适的索引,可能需要检查这些数据表已确定是否进行了正确的设置。然而这个等待事件不一定意味着性能低下,在某些条件下 Oracle 会主动使用全表扫描来替换索引扫描以提高性能,这和访问的数据量有关,在 CBO 下 Oracle 会进行更为智能的选择,在 RBO 下 Oracle 更倾向于使用索引。