每秒检查数据库

时间:2015-09-18 22:03:17

标签: performance jpa

我想知道我是否可以每秒检查数据库以获得比当前日期更早的字段。

select o from Entity as o where o.date <= CURRENT_TIMESTAMP

对于表演来说,它不是很好不是吗?有什么办法吗?

我正在使用CDI和EJB构建一个JSF webapp,通过JPA持久性。

更多详情:

我在名为“Actions”的表中设置了一个操作列表。当Actions.fieldDate等于当前日期时,必须执行这些操作。

我目前正在使用Java EE7和最后一个JDK 8.

2 个答案:

答案 0 :(得分:0)

您可以使用物化视图

  

这可以以某些数据为代价实现更高效的访问   可能已经过时了。它在数据仓库中最有用   方案,其中频繁查询实际基表可以   昂贵。 - wikepedia

答案 1 :(得分:0)

很多将取决于您对Actions表的条目的频率以及它们可以保留的时间戳。例如,如果您希望提前输入条目,比如在执行操作之前最少5分钟,那么您可以通过ttl为5分钟的物化视图或其他缓存机制来降低读取频率。

或者,您可以在操作表上设置一个触发器,告诉您有关新行插入的信息,然后阅读它并相应地安排它。