<div dir="ltr">Я задачу понял так, что требуется полное покрытие только при первом выборе. Последующие выборы должны повторять первый выбор.<div><br></div><div>Михаил, всё верно?</div></div><div class="gmail_extra"><br><br>
<div class="gmail_quote">2 декабря 2013 г., 20:11 пользователь Anton Nikishaev <span dir="ltr"><<a href="mailto:me@lelf.lu" target="_blank">me@lelf.lu</a>></span> написал:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><br>
On 2 Dec 2013, at 17:27, Михаил Монашёв <<a href="mailto:postmaster@softsearch.ru">postmaster@softsearch.ru</a>> wrote:<br>
<br>
> Здравствуйте.<br>
><br>
> Есть  таблица  с  объектами  в  mysql. Новые объекты туда добавляются,<br>
> плохие  объекты  удаляются,  бывает что по много штук сразу. Некоторые<br>
> объекты  имеют  статус  скрытых  от всех, а все остальные доступны для<br>
> всех. Т.е. в таблице равномерно растёт id объектов, но между соседними<br>
> id  могут  быть  дырки, причём большие. И некоторые объекты показывать<br>
> нельзя.<br>
><br>
> Даётся  текстовая  строка.<br>
<br>
</div>Следующие 2 предложения немного противоречат друг другу:<br>
<div class="im"><br>
>  В идеале нужно для этой строке максимально<br>
> быстро  выбрать  из  таблицы случайные 3 разных объекта, доступные для<br>
> всех.  Причём так, чтобы повторные выборы давали те же самые объекты и<br>
> изменения таблицы минимально влияли на это.<br>
<br>
</div>Если у нас maxid=A и мы выбрали для S из [1..A]. Затем maxid стало B≫A и нам<br>
нужно выбрать опять для S. Из [1..A] или [1..B]?<br>
<div class="im"><br>
<br>
> Т.е.  надо  из  перла обратиться к mysql-ю минимальное количество раз,<br>
> сделав максимально быстрые запросы. Самое важное - скорость. Ей нельзя<br>
> жертвовать. Можно жертвовать, но крайне нежелательно, привязкой строки<br>
> к  объектам. Понятно, что таблица меняется и привязки строк к объектам<br>
> будут меняться. Необходимо, чтобы эти изменения были минимальны. Можно<br>
> жертвовать  количеством  выбираемых объектов, например выбирать иногда<br>
> не  3, а 2 или 1, но не 0. Можно жертвовать степенью случайности между<br>
> выбираемыми объектами, например, выбирая лишь один случайным способом,<br>
> а  остальные  искать  поблизости от первого. Нельзя жертвовать охватом<br>
> объектов таблицы, т.е. выбираться объекты должны среди всех не скрытых<br>
> объектов.<br>
<br>
<br>
--<br>
</div>lelf<br>
<br>
<br>--<br>
Moscow.pm mailing list<br>
<a href="mailto:moscow-pm@pm.org">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br>Best regards, Andrei<br>+7-937-847-60-74
</div>