Что мне приходит в голову:
Создаём две переменных-счётчика для количества лайкнутых и нелайкнутых постов.
like=0
no_like=0
Далее делаем условие через if:
Если [[like]]/([[like]]+[[no_like]])>=0.8,
то:
выполняем код при котором не лайкаем пост и увеличиваем переменную no_like на 1.
Иначе - выполняем код, при котором лайкаем пост и увеличиваем переменную like на 1.
Тогда соотношение всегда будет стремиться к 80%
тестовый скрипт вероятность.xml
Как обрабатывать большой объем данных
-
Подскажите как оптимально работать с большим массивом данных. Например надо при каждом выполнении задания проверять ID пользователя в списке уже выполненных. Пробовал через блокнот но это слишком долго, нужны таблицы БД. Родная БД мне кажется не приспособлена для таких целей. SQL что ли прикручивать? Подскажите кто , как решает подобные задачи.
-
said in Как обрабатывать большой объем данных:
не приспособлена для таких целей. SQL что ли прикручивать? Подскажите кто , как решает подобные задачи.
аналог блек листа делаете? Сколько id'шников у вас?
-
Кстати кто знает как накладываются блокировки в родной БД. Блокируется целиком таблица или построчно? Тоесть если один поток обращается к таблице, то другому придется ждать или как?
-
@Fox Но все равно частями будет оптимальней. К примеру загрузили первый 500 строк, обработали, а затем следующие 500 строк загрузили и т.д. Тем более, если вдруг надо в каждом потоке свой экземпляр иметь то 60mb на 100 потоков это уже дофига.
-
@Denis_krsk Не успел закинуть пример скрипта который берёт частями.
А на счёт многопотока, то проще использовать ресурсы. Читать файл в ресурс >> цикл >> добавить элемент (в ресурс).

