Kom ihåg mig?
Home Menu

Menu


Sphinx-index

Ämnesverktyg Visningsalternativ
Oläst 2015-09-07, 16:50 #1
Erik Stenman Erik Stenman är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2007
Inlägg: 2 154
Erik Stenman Erik Stenman är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2007
Inlägg: 2 154
Standard Sphinx-index

Hej.
Jag håller på och migrerar från mysql-fulltextsökning till sphinx och behöver lite vägledning med hur jag skall sortera resultaten.

I dagsläget så sorterar jag beroende av olika värden i en separat rankningstabell i mysql.

Varje id har ett värde som jag vill använda tillsammans med relevansvärdet som sphinx returnerar.

Så hur sätter jag ihop det med sphinx? Går det att kombinera 2 sphinx-index eller måste jag göra en join när jag läser in data till sphinx. Detta sista alternativ skulle fungera om det inte vore för att min tabell med rankningsdata uppdateras väldigt ofta.

Något liknande detta skulle jag vilja utföra men det verkar inte gå att joina index:
Kod:
select *,weight() from test1  join rankindex on test1.id=rankindex.id  WHERE MATCH('$queryterm') order by rankdata+weight() desc LIMIT 0,50')

Senast redigerad av Erik Stenman den 2015-09-07 klockan 16:53
Erik Stenman är inte uppkopplad   Svara med citatSvara med citat
Oläst 2015-09-09, 16:05 #2
jockenybro jockenybro är inte uppkopplad
Nykomling
 
Reg.datum: Aug 2012
Inlägg: 44
jockenybro jockenybro är inte uppkopplad
Nykomling
 
Reg.datum: Aug 2012
Inlägg: 44
Osäker på Sphinx, men har du kollat upp Algolia? Hosted Search as a service, du slipper belasta egen server och requestsen går galet fort. Enkelt att implementera med.
jockenybro är inte uppkopplad   Svara med citatSvara med citat
Oläst 2015-09-10, 15:44 #3
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Aldrig använt Sphinx via MySQL men oavsett om du faktiskt kan göra en join på ranken, t ex via att låta Sphinx-queryn vara en subquery (vet inte om det funkar) på kommer detta vara väldigt ineffektivt sätt att göra det på. Det enda vettiga är indexera all data som behövs för rankingen. Vid väldigt små resultssets kan det funka OK att efterranka, men så fort man får större resultat (eller t ex använder Sphinx för filtrering/sortering osv) så handikappar du verkligen Sphinx.
Clarence är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 16:04.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017