GOOGLE ADS

Freitag, 15. April 2022

Wie kann ich Suchergebnisse in Algolia nach drei verschiedenen Kriterien aggregieren und gezielt sortieren?

Entschuldigung im Voraus, da ich kein englischer Muttersprachler bin! Ich werde versuchen, so klar wie möglich zu sein, was ich versuche zu tun:

Ich verwende Algolia InstantSearch in Angular auf einer Marktplatz-Website, um meinen Benutzern ein Such-Widget bereitzustellen. Ich wurde beauftragt, die Ergebnisse nach dieser Logik anzuzeigen:

  • Top-Ergebnis: Bestes bewertetes Produkt

  • Zweites Ergebnis: Meist gekauftes Produkt

  • Drittes Ergebnis: Zuletzt veröffentlichtes Produkt

  • Dieser „Block" sollte so lange wiederholt werden, wie es Ergebnisse gibt, also müsste das vierte Ergebnis das am zweitbesten bewertete Produkt sein, das fünfte das am zweithäufigsten gekaufte, das dritte das am zweithäufigsten veröffentlichte Produkt und so weiter. Dies hat die Absicht, neuen Verkäufern auf dem Markt eine Präsenz zu ermöglichen und gleichzeitig diejenigen zu belohnen, die am meisten verkauft und bessere Bewertungen für ihre Produkte erhalten haben.

    Ist das irgendwie mit Algolia möglich? Ich habe die Dokumentation zum benutzerdefinierten Ranking ( https://www.algolia.com/doc/guides/managing-results/must-do/custom-ranking/ ) und zur vollständigen Sortierung ( https://www.algolia.com ) gelesen /doc/guides/managing-results/refine-results/sorting/in-deep/exhaustive-sort/ ) und ich habe nur herausgefunden, wie man verschiedene Ranking-Kriterien festlegt, die nacheinander mit Tie-Breakern angewendet werden, aber nein Informationen darüber, wie ich dies erreichen könnte.


    Lösung des Problems

    Wie Sie bei Algolia festgestellt haben, erfolgt die Sortierung im Index selbst. Um nach anderen Kriterien zu sortieren, erstellen Sie eine Kopie Ihres Indexes mit anderen Sortierkriterien.

    Sie hätten also einen Primärindex + 3 Replikate, sortiert nach Bewertungen, Käufen und Datum.


    • mein_index

    • mein_index-bewertungen-absteigend

    • my_index-purchase-absteigend

    • mein_index-hinzugefügt-absteigend


    Sie verwenden die Multi-Index-Abfrage, um Ergebnisse von allen drei Replikaten gleichzeitig zu erhalten:
    https://www.algolia.com/doc/guides/building-search-ui/ui-and-ux-patterns/multi-index- suchen/eckig/

    Vergessen Sie auch nicht, dass Sie zum Sortieren nach Datum Ihre Daten als Unix-Zeitstempel ausgeben möchten. Mehr Infos hier:
    https://www.algolia.com/doc/guides/managing-results/refine-results/sorting/how-to/sort-an-index-by-date/

    Keine Kommentare:

    Kommentar veröffentlichen

    Warum werden SCHED_FIFO-Threads derselben physischen CPU zugewiesen, obwohl CPUs im Leerlauf verfügbar sind?

    Lösung des Problems Wenn ich das richtig verstehe, versuchen Sie, SCHED_FIFO mit aktiviertem Hyperthreading ("HT") zu verwenden, ...