Migrazione da Algolia a Meilisearch: come abbiamo tagliato del 90% il costo della ricerca di un e-commerce
La ricerca interna di un negozio online di una certa dimensione può costare decine di migliaia di euro all'anno. Meilisearch, motore open source che si installa su un server proprio, fa lo stesso lavoro per molto meno. Abbiamo condotto la migrazione completa di un catalogo da tredicimila prodotti con 3,3 milioni di ricerche mensili, e l'abbiamo misurata: le prestazioni sono equivalenti, il lavoro dell'ufficio commerciale si conserva per intero, e guardando dentro i dati è venuto fuori parecchio altro.
La ricerca interna di un e-commerce è una parte fondamentale del sistema di vendita e rappresenta una voce di costo importante quando si vogliono mantenere degli standard di efficienza di buon livello usando sistemi enterprise.
Il servizio più diffuso, Algolia, si paga a consumo: ogni interrogazione digitata da un cliente viene fatturata, e con qualche milione di ricerche al mese il conto raggiunge senza difficoltà diverse decine di migliaia di euro all'anno.
Meilisearch svolge lo stesso mestiere e non ha canone. È un motore open source che non si affitta ma si installa su un server, per cui la spesa smette didipendere dal traffico e diventa quella dell'infrastruttura: per un carico analogo, qualche migliaio di euro all'anno. La differenza puo' arrivare al 90%, e la domanda che segue è sempre la stessa: a cosa si rinuncia?
Le prestazioni restano le stesse, e lo abbiamo misurato
Abbiamo condotto la migrazione completa di un catalogo di tredicimila prodotti che riceve 3,3 milioni di ricerche al mese, mettendo i due sistemi a confronto sulle medesime query, estratte dal traffico reale.
I tempi di risposta sono equivalenti, due millesimi di secondo contro uno, uno scarto che nessun cliente è in grado di percepire. Ma il paragone che conta non è quello fra due elenchi di prodotti, bensì quello con il comportamento delle persone. Abbiamo preso quarantamila clic effettivamente registrati, cioè gli articoli che i clienti avevano davvero aperto dopo una ricerca, e verificato in quanti casi quell'articolo comparisse fra i primi dodici risultati: 84% con Algolia, 83,7% con Meilisearch.
Configurazione di Meilisearch
La migrazione del motore, però, è la parte meno complessa. La difficoltà sta in quello che gli si mette attorno, e chi affronta la migrazione come una semplice installazione si trova con una ricerca peggiore di quella che aveva.
Il primo scoglio riguarda il lavoro dell'ufficio commerciale. In quasi tutti i negozi qualcuno ha stabilito a mano, per le ricerche più importanti, quali prodotti mostrare e in che ordine: gli articoli con margine migliore, quelli in promozione, quelli da smaltire. Nel caso che abbiamo seguito erano settantanove selezioni di questo tipo, costruite negli anni, per un totale di settecentosettanta posizioni decise una per una.
Trasferirle è possibile, e nel nostro progetto le abbiamo ricostruite per intero. Copiarle così come sono, invece, non funziona: i due motori valutano in modo diverso quando una selezione debba entrare in azione, e poiché quelle condizioni erano quasi tutte scritte al plurale, tutte le ricerche al singolare sarebbero rimaste scoperte.
Il secondo scoglio è il motore stesso. Meilisearch appena installato tratta i plurali, le parole incomplete e le misure scritte tutte attaccate in modo diversoda Algolia. Sono tre impostazioni da decidere, non tre difetti, ma chi si limitaa installare e a caricare il catalogo ottiene risultati inferiori e conclude, in buona fede, che il motore non sia all'altezza.
La migrazione, insomma, è la parte facile. La configurazione è quella che decide il risultato.Una parte fondamentale è l'analisi dei dati
Per riprodurre fedelmente un sistema bisogna prima capirlo, e capendolo si trova quasi sempre più di quanto si cercava.
In questo caso la ricerca Algolia lavorava su cinque campi del prodotto, due dei quali erano rimasti vuoti dal giorno in cui il sistema era stato costruito. La descrizione estesa, quella che contiene misure, materiali e colori, esisteva sul 99% degli articoli ma non era mai stata resa visibile al motore: cercando un tipo di legno non usciva nulla, benché quel legno figurasse su oltre mille prodotti. Lo stesso divano, poi, era presente dieci volte, una per ciascun tessuto, sicché su dodici posizioni disponibili nel riquadro di ricerca soltanto la metà mostrava al cliente qualcosa che non stesse già vedendo.
Rimettere ordine in queste cose e procedere all'arricchimento del catalogo, cioè aggiungere ai prodotti le parole con cui i clienti li cercano davvero, ha portato le posizioni utili dalla metà al novantasei per cento e recuperato migliaia di ricerche mensili che prima non restituivano nulla. Nessuno di questi interventi riguarda il motore: riguardano i dati, e sono la parte che incide di più sulle vendite.
La nostra consulenza
Ci occupiamo dell'intera operazione: analisi del sistema esistente, migrazione,configurazione e arricchimento del catalogo, con la possibilità di ospitare noi Meilisearch e di tenerlo in gestione, così che non resti alcun carico sistemistico interno.
Il metodo, le misure e i risultati completi sono raccolti nel nostro white paper,che si può scaricare qui. Chi preferisce parlarne prima ci scriva pure: bastano il volume di ricerche mensili e la dimensione del catalogo per capire, in pochi minuti, quanto ci sia da risparmiare.