| |||||
| |||||
|
Важные объявления |
|
12.01.2010, 02:06 TS | #1 (permalink) |
Небессмертны
Регистрация: 25.02.2008
Адрес: Starcity
Сообщений: 3,321
|
Возможно ли сделать функцию(наподобие очистики), чтобы в базе оставалось только определённое количество последних рук(или меньше) на каждый никнейм?
Это была бы отличная функция, которая решила бы проблему больших баз и потребность регов в ультрабыстрых вениках. Может кто-то может реализовать это? Тк на это был бы большой спрос... P.S. Речь о удалении лишних рук из базы, по типу 50к рук на некоторых регов, полезно было бы всё это для различных тейбл сканеров.
__________________
"Есть одно замечание – наша страна называется не Белоруссия, а Беларусь." (с) экс премьер-министр С. Сидорский |
0 |
13.01.2010, 18:16 TS | #3 (permalink) |
Небессмертны
Регистрация: 25.02.2008
Адрес: Starcity
Сообщений: 3,321
|
Хм. я тут думал.. может я не правильно понимаю принципе работы базы. Тк сейчас подумал и почему-то решил, что сделать это нельзя тк в каждой раздаче помимо одного игрока участвуют ещё 5, то есть даже если это просто фолд префлоп, то всё равно рука идёт сращу 5-м игрокам.
Может кто-нибудь разбирается и сможет объяснить? Тк это функция-большой прогресс для всех покеристов=отсутствие запар с быстрыми винчестерами(которые стоят сотни(!) долларов) и настройками большого количества баз, которые отнимают кучу времени... Отпишитесь кто-нибудь из знающих..
__________________
"Есть одно замечание – наша страна называется не Белоруссия, а Беларусь." (с) экс премьер-министр С. Сидорский |
0 |
13.01.2010, 19:39 | #4 (permalink) |
Энтузиаст
Регистрация: 12.09.2007
Адрес: Ukraine
Сообщений: 285
|
Функцию сделать можно, но как ты написал выше рука идет сразу всем игрокам. Кому то это будет 50 001, кому то 1. поэтому это не совсем коректный критерий.
Нужны какие-то другие принципы очистки базы данных. Единственного чего не хватает в базовой версии Холдем менеджера, как по мне это параметр количество рук в базе данных. Выбираем оптимальное количество рук при котором база не тормозит, например 1м рук. Остальные удаляются например раз в неделю. |
0 |
14.01.2010, 12:04 | #6 (permalink) | |
Старожил
Регистрация: 24.11.2007
Адрес: Moscow City
Сообщений: 741
|
Цитата:
Да и вопрос в другом - "проблема больших баз и потребность регов в ультрабыстрых вениках." |
|
0 |
14.01.2010, 15:55 | #7 (permalink) |
Увлечённый
Регистрация: 14.11.2008
Адрес: Калуга
Сообщений: 426
|
Алгоритм можно сделать следующий.
Задаем max кол-во рук (напр, 50к). Выбираем всех игроков, у которых кол-во рук>max. (один простой запрос) Выбираем все сдачи с их участием. (один запрос, чуть сложнее предыдущего) Начинаем грохать по одной сдаче, начиная с самой ранней, следя, чтоб удаление данной конкретной сдачи не привело к понижению кол-ва рук никакого из ранее выбранных игроков ниже max (наверное самая долгая и сложная операция). Когда ни одну сдачу невозможно будет удалить без нарушения предыдущего условия, работа завершается. |
0 |
14.01.2010, 19:12 TS | #8 (permalink) |
Небессмертны
Регистрация: 25.02.2008
Адрес: Starcity
Сообщений: 3,321
|
Вообщем я подал идею, если кто реализует, думаю ему каждый её юзер (а это многомного покеристов с базами по 30млн+ рук) скинет баксов по 10 изи )
Ну и конечно это должно быть автоматически, а не вручную)
__________________
"Есть одно замечание – наша страна называется не Белоруссия, а Беларусь." (с) экс премьер-министр С. Сидорский |
0 |
15.01.2010, 13:16 | #9 (permalink) |
Интересующийся
Регистрация: 30.04.2009
Сообщений: 89
|
В принципе, сделать чтобы в базе грохались руки, превышащие определенный лимит по кол-ву, на игрока и повесить все это дело на ежедневный триггер - не сложно. Но вот та заморочка с фильтрованием, как то не совсем ясна.
Нужно более точно определить условия - если рука превышает наш лимит (должна удалиться), но не превышает лимит других - ее удалять? |
0 |
16.01.2010, 23:08 | #10 (permalink) |
Участник
Регистрация: 12.02.2008
Адрес: www
Сообщений: 137
|
Да элементарно делается. Вещается на базу триггер, который при записи проверяет условия нужные нам условия и очищает записи нужного игрока. В базе-то лежат данные по игрокам. То есть каждая рука раскладывается по типу (сильно упрощенно):
рука 1 - игрок 1 - данные рука 1 - игрок 2 - данные Соответственно можно удалить записать по руке 1 игрока 2, при этом данные из этой же руки игрока 1 не трогать. |
0 |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Видео для каждого | Paks13 | Поговорим за жизнь | 45 | 14.12.2009 23:42 |
PT3: несовпадение количества рук | GreyNW | Покер софт | 1 | 22.04.2009 01:13 |
Подсчет количества сыгранных рук | ziksa | Покер против казино | 5 | 06.11.2008 14:22 |
Выбор количества столов | No_match | Теории, стратегии, основы покера | 1 | 02.04.2008 11:55 |
Опции темы | |
|
|