Optimize least-k revenue queries for read/write load | Databricks Interview Question