[jboss-user] [JBoss Cache: Core Edition] - How to cache a Query like that?
onur.aktas
do-not-reply at jboss.com
Sat Feb 7 15:09:04 EST 2009
Hi,
I use Hibernate with JBoss Cache.
I have entities like below, All i want is to retrieve Last 20 messages posted by User's Friends.
| UserEntity (Long id)
| FriendEntity (Long id, User user, Friend friend)
| MessageEntity(Long id, User owner, String message, Timestamp created);
|
Because of performance issues, i use NativeQuery with UNION, not IN.
For a User who have 1000 friends, i generate a query like:
| (select * from messages where owner = 1 order by created DESC LIMIT 20)
| UNION ALL
| (select * from messages where owner = 2 order by created DESC LIMIT 20)
| UNION ALL
| (select * from messages where owner = 3 order by created DESC LIMIT 20)
| ...
| 997 more
| ...
| ORDER BY CREATED DESC LIMIT 20
It gives me the result i want but it is the worst way i have ever used. How can i use cache in order to improve the performance of such a Query?
Thanks.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4207959#4207959
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4207959
More information about the jboss-user
mailing list