Selecting random rows efficiently

Поиск
Список
Период
Сортировка
От Richard Jones
Тема Selecting random rows efficiently
Дата
Msg-id 200308301309.03412.rj@last.fm
обсуждение исходный текст
Ответ на Re: Hardware recommendations to scale to silly load  (Ron Johnson <ron.l.johnson@cox.net>)
Ответы Re: Selecting random rows efficiently  (Jeff <threshar@torgo.978.org>)
Re: Selecting random rows efficiently  (Ron Johnson <ron.l.johnson@cox.net>)
Список pgsql-performance
Hi,
i have a table of around 3 million rows from which i regularly (twice a second
at the moment) need to select a random row from

currently i'm doing "order by rand() limit 1" - but i suspect this is
responsible for the large load on my db server - i guess that PG is doing far
too much work just to pick one row.

one way i can think of is to read in all the primary keys from my table, and
select one of the keys at random then directly fetch that row.

are there any other ways to do this? i need to keep the load down :)

Thanks,
Richard

В списке pgsql-performance по дате отправления:

Предыдущее
От: Ron Johnson
Дата:
Сообщение: Re: Hardware recommendations to scale to silly load
Следующее
От: Jeff
Дата:
Сообщение: Re: Selecting random rows efficiently