Ok but if I want to call removeItemPref I must know my preference but to get that preference I need runtime. However, what happens if I remove a preference and want to get the preference after that again (so it should recalculate the user's preferences). Another thing: if I want to call updateItemPref there is no way to specify an user. Only itemID and a prefDelta. I understand why there is no userID but what's prefDelta? And the biggest issue in that case is the runtime because we have many queries at the same time that must be processed as quickly as possible. In fact, if I update all preferences is there a timeout for all other queries?
Ok, let's specify again what I have/need:
A website that interacts with my recommender and there will be many many queries at the same time (huge site). In fact, a user can rate movies and if a user does this we need a method that rebuilds at least the user's recommendations. (All other recommendations from other users that get affected by that change are not important - only the user's ones because we are doing a complete refesh every day.) For that, we can't have a high timeout (e.g. refresh needs about 20-25 seconds). So the perfect way would be only to update an user's preferences or the use of the updateItemPref method (if this method can provide that things).

btw... thanks again for your help with my MySQL Connector and Tomcat! :-)



Am 24.02.2011 17:15, schrieb Sean Owen:
It's just a count maintained across calls to the method which tracks how
many entries have been stored in the data structures. This is so it can stop
growing the data size once a limit has been reached.

It would not work to expose this method directly, as-is, no.
Instead I think you want to reflect your updates by calling updateItemPref()
and/or removeItemPref() for all the changes that your user makes.

2011/2/24 Daniel Mühlbachler<[email protected]>

Hello,

I have a problem with the memory caching recommender. Due to performance
issues I must choose a memory caching recommender but we need to reload the
cache only for one user (I don't explain why).
After investigating the MemoryDiffStorage for the SlopeOne recommender, I
found the method "private long processOneUser(long averageCount, long
userID)" that processes only one user - right? In fact, my idea is that I am
making this method public and add this method to the WebService class but
what is this averageCount variable? Does it matter if I choose a random
number or must that be a special one?
Moreover, where can I find the WebService class files and how can I compile
them again to get a *.jws file so that I can add this method to the
WebService?

Thanks in advance!
Best regards,
Daniel Mühlbachler

Reply via email to