Hallo Claudia, the reason why longs are use is pure efficiency. When you have a lot of things and a lot of users and you are using Strings as identifiers you will need a lot of memory just for saving them. Further processes like equals or hash codes will take longer.
So a long has 4 bytes (64 bits) a UUID string (e.g. 936DA01F-9ABD-4D9D-80C7-02AF85C822A8) encoded as utf-16 has 72 bytes that means that UUID would consume more then18x the memory that longs are taking. /Manuel On 08.03.2012, at 14:27, Claudia Grieco wrote: > Do you think it's worth the work to change the internal code of Mahout in > order to use string identifiers? > Thanks > Claudia > > -----Messaggio originale----- > Da: Manuel Blechschmidt [mailto:[email protected]] > Inviato: lunedì 5 marzo 2012 11.28 > A: [email protected] > Oggetto: Re: Using recommenders with String identifiers > > Hi Claudia, > you have to use an IDMigrator. > > The following projects shows you an example: > https://github.com/ManuelB/facebook-recommender-demo > > https://github.com/ManuelB/facebook-recommender-demo/blob/master/src/main/ja > va/de/apaxo/bedcon/FacebookRecommender.java > > Good luck > Manuel > > On 05.03.2012, at 09:53, Claudia Grieco wrote: > >> Hi guys, >> >> I'd like to use mahout to implement a recommender but I'm encountering a >> problem: >> >> Ids of items and users are represented in Mahout as long integers, while > my >> data comes from an external database that uses strings to identify items > and >> users. >> >> Any suggestion as to how I can fix this problem? >> >> Thanks a lot >> >> Claudia >> > > -- > Manuel Blechschmidt > Dortustr. 57 > 14467 Potsdam > Mobil: 0173/6322621 > Twitter: http://twitter.com/Manuel_B > > -- Manuel Blechschmidt Dortustr. 57 14467 Potsdam Mobil: 0173/6322621 Twitter: http://twitter.com/Manuel_B
