Magento 2 Elasticsearch és OpenSearch: keresés, ami elad
A Magento 2.4 óta a katalógus keresés és a kategóriaoldali szűrés is dedikált keresőmotoron fut. Ez az oldal végigveszi, melyiket válaszd és hogyan lesz jó a magyar nyelvű termékkeresés.
Röviden
Webshopban a kereső közvetlenül pénz: a keresőt használó látogatók vásárlási hajlandósága többszöröse a böngészőkének. Egy rossz találati lista azonnali bevételkiesés.
- Keresőmotorkötelező
- Új projektnélOpenSearch
- Heap közepes katalóguson2–4 GB
- Magyar nyelvhangolás kell
- Szinonima-szótáradminból
A keresőmotor nem extra, hanem alap
Elasticsearch vagy OpenSearch nélkül a Magento el sem indul. Ez nem öncélú bonyolítás: a keresőmotor adja a teljes szöveges keresést, a relevancia-rangsorolást, a réteges szűrést és a keresési javaslatokat, mindezt nagy katalóguson is ezredmásodperces válaszidővel, az adatbázis terhelése nélkül.
Elasticsearch vagy OpenSearch?
A kettő közös tőről fakad: az OpenSearch az Elasticsearch nyílt forráskódú folytatása, amely az Elastic licencváltása után jött létre. A Magento mindkettőt támogatja, az újabb verziók ajánlott motorja az OpenSearch; új telepítéseinknél mi is ezt használjuk.
Funkcionálisan a Magento szempontjából csereszabatosak, a különbség a licencben és a hosszú távú irányban van. Meglévő Elasticsearch telepítésről az áttérés OpenSearchre üzemeltetési rutinfeladat, adat-újraindexeléssel.
Mit ad a keresőmotor?
- Teljes szöveges keresés a katalóguson
- Relevancia szerinti rangsorolás
- Réteges szűrés (layered navigation)
- Keresési javaslatok gépelés közben
- Gyors válasz nagy katalóguson is
Itt válik el a profi a gyáritól
Az alapbeállítású motor a magyar nyelvvel csak részben boldogul. Öt dolgon múlik, hogy a kereső eladni kezd.
Ékezet-kezelés
A vásárló nem tesz ékezetet, ha siet. A szurogep keresésnek meg kell találnia a szűrőgépet, különben nulla találat a válasz.
Szótövezés
A csavarhúzók keresés hozza a csavarhúzó termékeket. Ragozó nyelvben ez alapvető elvárás, nem extra.
Szinonimák
A vásárló szókincse ritkán egyezik a beszállítói terméknevekkel. A szinonima-szótár a keresési statisztikákból épül.
Elgépelés-tűrés
Egy betű eltérés ne jelentsen üres találati listát. A tűrés mértékét a katalógushoz kell szabni.
Attribútum-súlyozás
A terméknévben talált egyezés többet érjen, mint a hosszú leírásban lévő. E nélkül a sorrend véletlenszerűnek tűnik.
Nulla találat figyelése
Amire kerestek és nem volt találat: ez a lista aranyat ér. Ebből épül a szinonima-szótár és derül ki, mit érdemes beszerezni.
A keresési statisztikák méréséhez érdemes a GA4 mérést is bekötni: így látszik, hogy a kereső mennyit hoz a konverzióban.
Min múlik a stabilitás?
A keresőmotor Java alkalmazás, saját memóriaigénnyel: a heap méretét a katalógushoz kell igazítani, közepes áruháznál néhány GB. A méretezésről a VPS cikkben írunk bővebben.
Amire figyelünk: a cluster státusz (a sárga vagy piros állapot romló vagy hiányzó indexet jelez), az index méret, a reindex időtartama és a lassú lekérdezések.
Tipikus hibák a gyakorlatból
- Alulméretezett heap miatt összeomló keresés csúcsforgalomban
- Update on save indexelés nagy katalóguson: minden mentés azonnali újraindexelést lő be
- Egy gépre zsúfolt szolgáltatások, amik egymás elől veszik el a memóriát
- Túl sok szűrhető attribútum: lassuló kategóriaoldal
- Elhanyagolt szinonima-szótár és nulla találatos keresések
Gyakran ismételt kérdések a keresőmotorról
Kötelező az Elasticsearch vagy OpenSearch a Magento 2-höz?
Melyiket válasszam új projektnél?
Miért nem talál a kereső ékezet nélkül?
Mennyi memória kell a keresőmotornak?
Beállíthatók szinonimák?
Mitől lassú a szűrés a kategóriaoldalon?
Kapcsolódó cikkek
Keres a vásárlód, de nem talál?
Az állapotfelmérés részeként megnézzük a keresőmotor beállításait, a nulla találatos kereséseket és a relevancia-súlyozást.