Re: rank algoritme - best bet search

From: <jetpoet_at_yahoo.com>
Date: 7 Jun 2003 03:50:50 -0700
Message-ID: <9d093ada.0306070250.1160a236_at_posting.google.com>


Hi Jack,

I am implementing it on a Microsoft SQL Server 2000, which is what the application is already running on. I am afraid I don't have much choice in changing this.

I should have mentioned the database, sorry about that. I wasn't really sure if it mattered, since I have never tried to implement such an algorithm before.

Are there any ways of doing this Microsoft SQL Server 2000? Isn't there an OLAP extension for MS SQL. I will have to have a look. Do you know what the performance impacts would be from setting up the OLAP extension. Is what I am trying to do an advanced thing or a fairly simple task in terms of calculations that have to be done.

I really appreciate your answer. Thanks for taking the time out to help.

Best regards,
Pete

"jack_dull" <jack_dull_at_163.com> wrote in message news:<bbr9p4$2uj1$1_at_mail.cn99.com>...
> It depends on the specific DBMS. If you are using ORACLE9iR2, no extra
> efforts are needed. Rank functions are supported by extended SQL directly.
> DB2 has the similar facilities. What is more, you can consult SQL3/OLAP.
> Most OLAP products support those analysis.
>
> Jack Dull
>
> <jetpoet_at_yahoo.com>
> ??????:9d093ada.0306061149.7263866c_at_posting.google.com...
> > Hi All!
> >
> > I would like to know if any of you know of a way to create a ranking
> > algorithm for a database search.
> >
> > I want to allow my users to give an element a rank from -5 to +5 and
> > based on that the system should make recommendations of other elements
> > that might be of interest. This recommendation should be based on your
> > own and other users rankings. I am thinking of two scenarios that I
> > would like to implement, but either one will do if only one is
> > possible.
> >
> >
> >
> > 1) When browsing elements, the site should be able to say: "people who
> > liked this element also liked these elements". Kinda what Amazon does.
> > This is only based on what people liked the particular element. This
> > should of course be weighted, so people who ranked this element high
> > carry more weight in the ranking of other items.
> >
> > 2) "Based on what you have said you like we recommend this." This is
> > what I think is harder to implement. People who have said they like
> > the same things as I do are weighted higher in their ranking
> > recommendations, but if there are conflicts (ie. people who rank
> > something high that you have ranked low) their weight should be
> > decreased.
> >
> > The table I have imagined should hold this ranking information is
> > quite simple.
> >
> > RANKING
> > ------------------
> > USER_ID
> > ELEMENT_ID
> > RANK
> >
> > But calculating the recommendations is anything but simple. I have
> > thought of writing some stored procedures that extract lists of
> > weighted USER_IDs that have ranked an element, and then using those as
> > the basis for my calculations, but it turns out really nasty.
> >
> > Does anyone have any idea of where I should start. Can anyone tell me
> > of an algorithm that solves this problem.
> >
> > I can say that I at the moment have 4,000 users who on a regular basis
> > read over 100,000 posts. I want them to quicker be able to find what
> > they are looking for, and be able to find relevant information.
> >
> > Thankyou in advance
> > JP
Received on Sat Jun 07 2003 - 12:50:50 CEST

Original text of this message