1

我知道这gv$aq是一个系统范围的视图,其中包含数据库中所有队列中处于不同状态的消息数量。

我的问题是:由于gv$aq与任何给定的数据相比,它将包含更多的数据queue_table,因此查询此视图以获取特定信息(消息数量等)将比直接查询自身queue_table花费更多的时间。queue_table为什么我们应该更好地查询gv$aq而不是队列表本身,有什么具体原因吗?

谢谢!

4

1 回答 1

0

该视图qv$aq仅包含每个队列的统计信息,例如消息数或平均等待时间。包含所有单独的queue_table消息。

要从 a 获取消息的数量queue_table,Oracle 必须检查所有消息并将它们汇总。要从qv$aq视图中获取统计信息,Oracle 只需从系统内存中查找它们,这要快得多。

于 2013-01-15T07:56:41.370 回答