在几个hibernate查询中加速问题

时间:2013-01-17 14:56:55

标签: java hibernate

我正在构建一个使用顶点和边缘对象的图算法,并使用hibernate持久化。在检查边缘以发现它们是否处于状态时(以及另一个“识别”顶点的代码应该做类似的事情),这段代码需要做大量工作。

类:

 Vertex(long id, String name);
 Edge(long id, Vertex v, Vertex w, boolean visited);
 VertexDAO(Vertex vertex);//persistence class for vertex implemented with hibernate
 EdgeDAO(Edge edge);//persistence class for vertex implemented with hibernate

我有两个选项来设置/更新我的图表中的访问边缘:

  1. 查询DAO对象以检索(取消)访问过的边(通过休眠)并根据需要设置它们; 问题:我不知道这些操作的成本,以及当图形变大时它是否有效;在我看来,这不是最好的解决方案;

  2. 测试我自己的一组边缘以检索所有(未)访问过的边缘。 问题:可能我的searh算法比hibernate算法差,并且如果hibernate在内存中有效地管理对象并且不需要持久或开销那么多,它可能表示与之前的替代方案相比性能下降。

  3. 你有这方面的经验或小费吗?谢谢你的帮助。

0 个答案:

没有答案