You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mahout.apache.org by "Aleksei Udatšnõi (Created JIRA)" <ji...@apache.org> on 2012/02/15 10:45:59 UTC
[jira] [Created] (MAHOUT-977) Thread-safe version of
PlusAnonymousUserDataModel with multiple concurrent users
Thread-safe version of PlusAnonymousUserDataModel with multiple concurrent users
--------------------------------------------------------------------------------
Key: MAHOUT-977
URL: https://issues.apache.org/jira/browse/MAHOUT-977
Project: Mahout
Issue Type: Improvement
Components: Collaborative Filtering
Affects Versions: 0.7
Reporter: Aleksei Udatšnõi
Assignee: Sean Owen
Priority: Minor
Fix For: 0.7
This is a suggested improvement to PlusAnonymousUserDataModel.
Currently the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
of temp data can be inserted into the model and used at one time.
I propose the change to enable multiple users to insert into this
model concurrently in a thread-safe manner.
The idea is to define a pool of available anonymous user IDs. Every
time a new anonymous user makes a request, the next available
TEMP_USER_ID is pulled from the queue. After recommendations are
retrieved, the TEMP_USER_ID can be returned to the pool.
The discussion about this topic can be found in:
http://mail-archives.apache.org/mod_mbox/mahout-dev/201202.mbox/%3CCAEccTywC7QJuAJj-u3C1C=WW0yEeBcScUE6Kmj=bedBrxOpsSg@mail.gmail.com%3E
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (MAHOUT-977) Thread-safe version of
PlusAnonymousUserDataModel with multiple concurrent users
Posted by "Sean Owen (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAHOUT-977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13212007#comment-13212007 ]
Sean Owen commented on MAHOUT-977:
----------------------------------
If you are willing and interested you are welcome to remov the super class. I dont think we must retain it at this stage.
> Thread-safe version of PlusAnonymousUserDataModel with multiple concurrent users
> --------------------------------------------------------------------------------
>
> Key: MAHOUT-977
> URL: https://issues.apache.org/jira/browse/MAHOUT-977
> Project: Mahout
> Issue Type: Improvement
> Components: Collaborative Filtering
> Affects Versions: 0.6
> Reporter: Aleksei Udatšnõi
> Assignee: Sean Owen
> Priority: Minor
> Fix For: 0.7
>
> Attachments: MAHOUT-977.patch
>
>
> This is a suggested improvement to PlusAnonymousUserDataModel.
> Currently the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
> of temp data can be inserted into the model and used at one time.
> I propose the change to enable multiple users to insert into this
> model concurrently in a thread-safe manner.
> The idea is to define a pool of available anonymous user IDs. Every
> time a new anonymous user makes a request, the next available
> TEMP_USER_ID is pulled from the queue. After recommendations are
> retrieved, the TEMP_USER_ID can be returned to the pool.
> The discussion about this topic can be found in:
> http://mail-archives.apache.org/mod_mbox/mahout-dev/201202.mbox/%3CCAEccTywC7QJuAJj-u3C1C=WW0yEeBcScUE6Kmj=bedBrxOpsSg@mail.gmail.com%3E
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (MAHOUT-977) Thread-safe version of
PlusAnonymousUserDataModel with multiple concurrent users
Posted by "Sean Owen (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAHOUT-977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13220061#comment-13220061 ]
Sean Owen commented on MAHOUT-977:
----------------------------------
That's OK. The book is specifically for version 0.5. While it's nice to maintain compatibility, it's not required, and I think this is only a small variation.
> Thread-safe version of PlusAnonymousUserDataModel with multiple concurrent users
> --------------------------------------------------------------------------------
>
> Key: MAHOUT-977
> URL: https://issues.apache.org/jira/browse/MAHOUT-977
> Project: Mahout
> Issue Type: Improvement
> Components: Collaborative Filtering
> Affects Versions: 0.6
> Reporter: Aleksei Udatšnõi
> Assignee: Sean Owen
> Priority: Minor
> Fix For: 0.7
>
> Attachments: MAHOUT-977.patch
>
>
> This is a suggested improvement to PlusAnonymousUserDataModel.
> Currently the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
> of temp data can be inserted into the model and used at one time.
> I propose the change to enable multiple users to insert into this
> model concurrently in a thread-safe manner.
> The idea is to define a pool of available anonymous user IDs. Every
> time a new anonymous user makes a request, the next available
> TEMP_USER_ID is pulled from the queue. After recommendations are
> retrieved, the TEMP_USER_ID can be returned to the pool.
> The discussion about this topic can be found in:
> http://mail-archives.apache.org/mod_mbox/mahout-dev/201202.mbox/%3CCAEccTywC7QJuAJj-u3C1C=WW0yEeBcScUE6Kmj=bedBrxOpsSg@mail.gmail.com%3E
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (MAHOUT-977) Thread-safe version of
PlusAnonymousUserDataModel with multiple concurrent users
Posted by "Aleksei Udatšnõi (Updated JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAHOUT-977?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksei Udatšnõi updated MAHOUT-977:
------------------------------------
Attachment: MAHOUT-977.patch
> Thread-safe version of PlusAnonymousUserDataModel with multiple concurrent users
> --------------------------------------------------------------------------------
>
> Key: MAHOUT-977
> URL: https://issues.apache.org/jira/browse/MAHOUT-977
> Project: Mahout
> Issue Type: Improvement
> Components: Collaborative Filtering
> Affects Versions: 0.6
> Reporter: Aleksei Udatšnõi
> Assignee: Sean Owen
> Priority: Minor
> Attachments: MAHOUT-977.patch
>
>
> This is a suggested improvement to PlusAnonymousUserDataModel.
> Currently the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
> of temp data can be inserted into the model and used at one time.
> I propose the change to enable multiple users to insert into this
> model concurrently in a thread-safe manner.
> The idea is to define a pool of available anonymous user IDs. Every
> time a new anonymous user makes a request, the next available
> TEMP_USER_ID is pulled from the queue. After recommendations are
> retrieved, the TEMP_USER_ID can be returned to the pool.
> The discussion about this topic can be found in:
> http://mail-archives.apache.org/mod_mbox/mahout-dev/201202.mbox/%3CCAEccTywC7QJuAJj-u3C1C=WW0yEeBcScUE6Kmj=bedBrxOpsSg@mail.gmail.com%3E
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (MAHOUT-977) Thread-safe version of
PlusAnonymousUserDataModel with multiple concurrent users
Posted by "Sean Owen (Updated) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAHOUT-977?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sean Owen updated MAHOUT-977:
-----------------------------
Affects Version/s: (was: 0.7)
0.6
Fix Version/s: (was: 0.7)
Sounds good, attach a patch when you're ready.
> Thread-safe version of PlusAnonymousUserDataModel with multiple concurrent users
> --------------------------------------------------------------------------------
>
> Key: MAHOUT-977
> URL: https://issues.apache.org/jira/browse/MAHOUT-977
> Project: Mahout
> Issue Type: Improvement
> Components: Collaborative Filtering
> Affects Versions: 0.6
> Reporter: Aleksei Udatšnõi
> Assignee: Sean Owen
> Priority: Minor
>
> This is a suggested improvement to PlusAnonymousUserDataModel.
> Currently the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
> of temp data can be inserted into the model and used at one time.
> I propose the change to enable multiple users to insert into this
> model concurrently in a thread-safe manner.
> The idea is to define a pool of available anonymous user IDs. Every
> time a new anonymous user makes a request, the next available
> TEMP_USER_ID is pulled from the queue. After recommendations are
> retrieved, the TEMP_USER_ID can be returned to the pool.
> The discussion about this topic can be found in:
> http://mail-archives.apache.org/mod_mbox/mahout-dev/201202.mbox/%3CCAEccTywC7QJuAJj-u3C1C=WW0yEeBcScUE6Kmj=bedBrxOpsSg@mail.gmail.com%3E
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (MAHOUT-977) Thread-safe version of
PlusAnonymousUserDataModel with multiple concurrent users
Posted by "Hudson (Commented) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAHOUT-977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13210452#comment-13210452 ]
Hudson commented on MAHOUT-977:
-------------------------------
Integrated in Mahout-Quality #1355 (See [https://builds.apache.org/job/Mahout-Quality/1355/])
MAHOUT-977 add multiple anonymous user support to DataModel (Revision 1245615)
Result = SUCCESS
srowen : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1245615
Files :
* /mahout/trunk/core/src/main/java/org/apache/mahout/cf/taste/impl/model/PlusAnonymousConcurrentUserDataModel.java
* /mahout/trunk/core/src/main/java/org/apache/mahout/cf/taste/impl/model/PlusAnonymousUserDataModel.java
* /mahout/trunk/core/src/test/java/org/apache/mahout/cf/taste/impl/model/PlusAnonymousConcurrentUserDataModelTest.java
> Thread-safe version of PlusAnonymousUserDataModel with multiple concurrent users
> --------------------------------------------------------------------------------
>
> Key: MAHOUT-977
> URL: https://issues.apache.org/jira/browse/MAHOUT-977
> Project: Mahout
> Issue Type: Improvement
> Components: Collaborative Filtering
> Affects Versions: 0.6
> Reporter: Aleksei Udatšnõi
> Assignee: Sean Owen
> Priority: Minor
> Fix For: 0.7
>
> Attachments: MAHOUT-977.patch
>
>
> This is a suggested improvement to PlusAnonymousUserDataModel.
> Currently the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
> of temp data can be inserted into the model and used at one time.
> I propose the change to enable multiple users to insert into this
> model concurrently in a thread-safe manner.
> The idea is to define a pool of available anonymous user IDs. Every
> time a new anonymous user makes a request, the next available
> TEMP_USER_ID is pulled from the queue. After recommendations are
> retrieved, the TEMP_USER_ID can be returned to the pool.
> The discussion about this topic can be found in:
> http://mail-archives.apache.org/mod_mbox/mahout-dev/201202.mbox/%3CCAEccTywC7QJuAJj-u3C1C=WW0yEeBcScUE6Kmj=bedBrxOpsSg@mail.gmail.com%3E
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (MAHOUT-977) Thread-safe version of
PlusAnonymousUserDataModel with multiple concurrent users
Posted by "Aleksei Udatšnõi (Commented JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAHOUT-977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13211821#comment-13211821 ]
Aleksei Udatšnõi commented on MAHOUT-977:
-----------------------------------------
Answering your question .. I kept the superclass only for backward compatibility purposes. I doubt anyone is using it in production.
Just in case it is used somewhere in experimental environment, it will keep working. If you find it is not useful any more, I can eliminate it.
> Thread-safe version of PlusAnonymousUserDataModel with multiple concurrent users
> --------------------------------------------------------------------------------
>
> Key: MAHOUT-977
> URL: https://issues.apache.org/jira/browse/MAHOUT-977
> Project: Mahout
> Issue Type: Improvement
> Components: Collaborative Filtering
> Affects Versions: 0.6
> Reporter: Aleksei Udatšnõi
> Assignee: Sean Owen
> Priority: Minor
> Fix For: 0.7
>
> Attachments: MAHOUT-977.patch
>
>
> This is a suggested improvement to PlusAnonymousUserDataModel.
> Currently the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
> of temp data can be inserted into the model and used at one time.
> I propose the change to enable multiple users to insert into this
> model concurrently in a thread-safe manner.
> The idea is to define a pool of available anonymous user IDs. Every
> time a new anonymous user makes a request, the next available
> TEMP_USER_ID is pulled from the queue. After recommendations are
> retrieved, the TEMP_USER_ID can be returned to the pool.
> The discussion about this topic can be found in:
> http://mail-archives.apache.org/mod_mbox/mahout-dev/201202.mbox/%3CCAEccTywC7QJuAJj-u3C1C=WW0yEeBcScUE6Kmj=bedBrxOpsSg@mail.gmail.com%3E
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Commented] (MAHOUT-977) Thread-safe version of
PlusAnonymousUserDataModel with multiple concurrent users
Posted by "Aleksei Udatšnõi (Commented JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAHOUT-977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13219927#comment-13219927 ]
Aleksei Udatšnõi commented on MAHOUT-977:
-----------------------------------------
I just realized that if I to remove the superclass, you'd have to rewrite chapter 5.4 of "Mahout in Action". It references _PlusAnonymousUserDataModel_.
> Thread-safe version of PlusAnonymousUserDataModel with multiple concurrent users
> --------------------------------------------------------------------------------
>
> Key: MAHOUT-977
> URL: https://issues.apache.org/jira/browse/MAHOUT-977
> Project: Mahout
> Issue Type: Improvement
> Components: Collaborative Filtering
> Affects Versions: 0.6
> Reporter: Aleksei Udatšnõi
> Assignee: Sean Owen
> Priority: Minor
> Fix For: 0.7
>
> Attachments: MAHOUT-977.patch
>
>
> This is a suggested improvement to PlusAnonymousUserDataModel.
> Currently the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
> of temp data can be inserted into the model and used at one time.
> I propose the change to enable multiple users to insert into this
> model concurrently in a thread-safe manner.
> The idea is to define a pool of available anonymous user IDs. Every
> time a new anonymous user makes a request, the next available
> TEMP_USER_ID is pulled from the queue. After recommendations are
> retrieved, the TEMP_USER_ID can be returned to the pool.
> The discussion about this topic can be found in:
> http://mail-archives.apache.org/mod_mbox/mahout-dev/201202.mbox/%3CCAEccTywC7QJuAJj-u3C1C=WW0yEeBcScUE6Kmj=bedBrxOpsSg@mail.gmail.com%3E
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (MAHOUT-977) Thread-safe version of
PlusAnonymousUserDataModel with multiple concurrent users
Posted by "Sean Owen (Updated) (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAHOUT-977?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sean Owen updated MAHOUT-977:
-----------------------------
Resolution: Fixed
Fix Version/s: 0.7
Status: Resolved (was: Patch Available)
Looks good, I'm going to commit this much since it's in good working order and solves a need. I do think it's a bit copy-and-paste of the superclass and I wonder, is the superclass needed? It seems like a special case of the subclass now.
> Thread-safe version of PlusAnonymousUserDataModel with multiple concurrent users
> --------------------------------------------------------------------------------
>
> Key: MAHOUT-977
> URL: https://issues.apache.org/jira/browse/MAHOUT-977
> Project: Mahout
> Issue Type: Improvement
> Components: Collaborative Filtering
> Affects Versions: 0.6
> Reporter: Aleksei Udatšnõi
> Assignee: Sean Owen
> Priority: Minor
> Fix For: 0.7
>
> Attachments: MAHOUT-977.patch
>
>
> This is a suggested improvement to PlusAnonymousUserDataModel.
> Currently the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
> of temp data can be inserted into the model and used at one time.
> I propose the change to enable multiple users to insert into this
> model concurrently in a thread-safe manner.
> The idea is to define a pool of available anonymous user IDs. Every
> time a new anonymous user makes a request, the next available
> TEMP_USER_ID is pulled from the queue. After recommendations are
> retrieved, the TEMP_USER_ID can be returned to the pool.
> The discussion about this topic can be found in:
> http://mail-archives.apache.org/mod_mbox/mahout-dev/201202.mbox/%3CCAEccTywC7QJuAJj-u3C1C=WW0yEeBcScUE6Kmj=bedBrxOpsSg@mail.gmail.com%3E
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Issue Comment Edited] (MAHOUT-977) Thread-safe version of
PlusAnonymousUserDataModel with multiple concurrent users
Posted by "Aleksei Udatšnõi (Issue Comment Edited JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAHOUT-977?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13210303#comment-13210303 ]
Aleksei Udatšnõi edited comment on MAHOUT-977 at 2/17/12 2:57 PM:
------------------------------------------------------------------
Added a new class _PlusAnonymousConcurrentUserDataModel_ which enables multiple concurrent users to submit and consume anonymous preferences in a thread-safe manner.
was (Author: udachny):
Added a new class _PlusAnonymousConcurrentUserDataModel_ which enables multiple concurrent users to submit and consumer anonymous ratings.
> Thread-safe version of PlusAnonymousUserDataModel with multiple concurrent users
> --------------------------------------------------------------------------------
>
> Key: MAHOUT-977
> URL: https://issues.apache.org/jira/browse/MAHOUT-977
> Project: Mahout
> Issue Type: Improvement
> Components: Collaborative Filtering
> Affects Versions: 0.6
> Reporter: Aleksei Udatšnõi
> Assignee: Sean Owen
> Priority: Minor
> Attachments: MAHOUT-977.patch
>
>
> This is a suggested improvement to PlusAnonymousUserDataModel.
> Currently the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
> of temp data can be inserted into the model and used at one time.
> I propose the change to enable multiple users to insert into this
> model concurrently in a thread-safe manner.
> The idea is to define a pool of available anonymous user IDs. Every
> time a new anonymous user makes a request, the next available
> TEMP_USER_ID is pulled from the queue. After recommendations are
> retrieved, the TEMP_USER_ID can be returned to the pool.
> The discussion about this topic can be found in:
> http://mail-archives.apache.org/mod_mbox/mahout-dev/201202.mbox/%3CCAEccTywC7QJuAJj-u3C1C=WW0yEeBcScUE6Kmj=bedBrxOpsSg@mail.gmail.com%3E
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (MAHOUT-977) Thread-safe version of
PlusAnonymousUserDataModel with multiple concurrent users
Posted by "Aleksei Udatšnõi (Updated JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/MAHOUT-977?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksei Udatšnõi updated MAHOUT-977:
------------------------------------
Status: Patch Available (was: Open)
Added a new class _PlusAnonymousConcurrentUserDataModel_ which enables multiple concurrent users to submit and consumer anonymous ratings.
> Thread-safe version of PlusAnonymousUserDataModel with multiple concurrent users
> --------------------------------------------------------------------------------
>
> Key: MAHOUT-977
> URL: https://issues.apache.org/jira/browse/MAHOUT-977
> Project: Mahout
> Issue Type: Improvement
> Components: Collaborative Filtering
> Affects Versions: 0.6
> Reporter: Aleksei Udatšnõi
> Assignee: Sean Owen
> Priority: Minor
> Attachments: MAHOUT-977.patch
>
>
> This is a suggested improvement to PlusAnonymousUserDataModel.
> Currently the ID of the anonymous user is fixed to Long.MIN_VALUE. Only one set
> of temp data can be inserted into the model and used at one time.
> I propose the change to enable multiple users to insert into this
> model concurrently in a thread-safe manner.
> The idea is to define a pool of available anonymous user IDs. Every
> time a new anonymous user makes a request, the next available
> TEMP_USER_ID is pulled from the queue. After recommendations are
> retrieved, the TEMP_USER_ID can be returned to the pool.
> The discussion about this topic can be found in:
> http://mail-archives.apache.org/mod_mbox/mahout-dev/201202.mbox/%3CCAEccTywC7QJuAJj-u3C1C=WW0yEeBcScUE6Kmj=bedBrxOpsSg@mail.gmail.com%3E
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira