Независимо колко индекса сте създали в релация, само един от тях ще бъде използван в определена заявка (кой зависи от заявката, статистиката и т.н.). Така че във вашия случай няма да получите кумулативно предимство от създаването на два индекса с една колона. За да получите най-голяма производителност от индекса, бих предложил да използвате съставен индекс на (местоположение, клеймо за време).
Имайте предвид, че заявки като ... WHERE timestamp BETWEEN smth AND smth
няма да използва индекса по-горе, докато заявки като ... WHERE location = 'smth'
или ... WHERE location = 'smth' AND timestamp BETWEEN smth AND smth
ще. Това е така, защото първият атрибут в индекса е от решаващо значение за търсене и сортиране.
Не забравяйте да изпълните
ANALYZE;
след създаване на индекс с цел събиране на статистика.
Актуализация: Като @MondKin споменати в коментарите, определени заявки всъщност могат да използват няколко индекса в една и съща релация. Например, заявете с OR
клаузи като a = 123 OR b = 456
(ако приемем, че има индекси и за двете колони). В този случай postgres ще извърши сканиране на растерни индекси и за двата индекса, ще изгради обединение на получените растерни изображения и ще го използва за сканиране на купчина растерни изображения. При определени условия същата схема може да се използва за AND
заявки, но вместо обединение ще има пресичане.