Optimizing queries with indexes
In the previous chapter, we made queries in parallel.
What if the parallelized queries were slow? Most of the time, implementing an optimization means acting on multiple aspects. In the previous chapter, we saw how to parallelize queries. This approach, as we saw, brings great benefits, but there is something more we can do. What we want to achieve is to further reduce the latency of each individual parallelized task when retrieving data.
To do just that, what we are going to do now is optimize each query that we parallelized in the previous chapter and explore the reasoning behind each one.
We are going to analyze what the characteristics of the query are and what fields are involved in the rows selection phase and the sorting phase.
Let’s start with the following example query:
return $query->where('type', $type) ->where('description', 'LIKE', '%something%'...