Changes

Jump to navigation Jump to search
no edit summary
Line 53: Line 53:     
We can filter by country of availability, by store (or stores) of availability, and number of scans (a proxy for wide availability)
 
We can filter by country of availability, by store (or stores) of availability, and number of scans (a proxy for wide availability)
 +
 +
=== Non-personalized sort order ===
 +
 +
It is unrealistic to return all possible results to the calling app for all queries. E.g. if the query is "cookies", we cannot return tens of thousands of results. So we will need to use some kind of reasonable sort order that returns the most useful results for the app, without limiting the options for personnalization of the results.
 +
 +
Possible criteria to include in the sort order:
 +
 +
==== Product quality ====
 +
 +
If we expect that the app will only offer "better" products and not worst products, we may include things like the Nutri-Score or NOVA in the sort order.
 +
 +
==== Popularity ====
 +
 +
We could also include a measure of product popularity (e.g. derived from scans) in the sort order.
    
== Server-side indexing ==
 
== Server-side indexing ==
Line 62: Line 76:  
If we decide to support product match, we need to pre-compute and store lists of similar products.
 
If we decide to support product match, we need to pre-compute and store lists of similar products.
   −
=== Non personalized sort order ===
+
=== Sort order key computation ===
 
  −
It is unrealistic to return all possible results to the calling app for all queries. E.g. if the query is "cookies", we cannot return tens of thousands of results. So we will need to use some kind of reasonable sort order that returns the most useful results for the app, without limiting the options for personnalization of the results.
  −
 
  −
Possible criteria to include in the sort order:
     −
==== Product quality ====
+
We should pre-compute the sort order key for all products.
   −
If we expect that the app will only offer "better" products and not worst products, we may include things like the Nutri-Score or NOVA in the sort order.
+
== Performance ==
   −
==== Popularity ====
+
95% of search queries need to return results in less than 10 seconds.
   −
We could also include a measure of product popularity (e.g. derived from scans) in the sort order.
+
Search queries should not overload the OFF servers (API server + MongoDB server)

Navigation menu