powered by simpleCommunicator - 2.0.37     © 2025 Programmizd 02
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Как сделать красиво: ограничить количество записей?
5 сообщений из 5, страница 1 из 1
Как сделать красиво: ограничить количество записей?
    #39104614
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хочу сделать что-то типа аппендера для log4net, т.е. писать лог в базу sqlite.
Но при этом хотелось бы ограничть количество записей в таблице каким-то максимумом N.
Как такое реализовать, чтобы минимум блокировок, учитывая, что писаться будет лог wcf сервиса?
...
Рейтинг: 0 / 0
Как сделать красиво: ограничить количество записей?
    #39104965
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вместо N записей, делай N дней.
У тебя в логе всяко будет дата-время когда запись появилась. Ну и запускай раз в сутки, команду типа delete from table where dt<(now-n*день). Конкретную формулу сам придумаешь, она будет зависеть от того как ты хранишь даты и откуда будет подаваться команда на удаление.
...
Рейтинг: 0 / 0
Как сделать красиво: ограничить количество записей?
    #39104972
Winnipuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlВместо N записей, делай N дней.
У тебя в логе всяко будет дата-время когда запись появилась. Ну и запускай раз в сутки, команду типа delete from table where dt<(now-n*день). Конкретную формулу сам придумаешь, она будет зависеть от того как ты хранишь даты и откуда будет подаваться команда на удаление.

Я хочу два парметра ввести: N максимум записей, N секунд
В некоторые моменты может быть и в один день много записей.

Вопрос в "автозачистке" остается.
Скажем, в SQL Server я сделал зачистку в триггере на добавление.

Получается в лоб надо делать:
1) добавил
2) удалил, оставив N
...
Рейтинг: 0 / 0
Как сделать красиво: ограничить количество записей?
    #39104984
MrCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ежели автозачищать стрёмно, то, может, забить сразу в таблицу N записей и просто обновлять их (i mod N) по мере поступления новых сообщений.
...
Рейтинг: 0 / 0
Как сделать красиво: ограничить количество записей?
    #39105052
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
WinnipuhЯ хочу два парметра ввести: N максимум записей, N секунд
В некоторые моменты может быть и в один день много записей.Ну можно конечно и так. Но...
Вот пусть у тебя за день в среднем набирается сотня записей. Ты каждое утро приходишь и смотришь статистику "по вчера". Все хорошо, ставишь обрезать по количеству записей в сотню. А в один прекрасный день активность выросла и за день набралось триста записей, а и ты из них убил двести...
А теперь попытайся объяснить своему начальнику почему он вместо статистики за вчера видит только статистику за вечер?
Люди привыкли оперировать днями когда речь идет о логах, а не абстрактным количеством записей.

WinnipuhВопрос в "автозачистке" остается.
Скажем, в SQL Server я сделал зачистку в триггере на добавление.

Получается в лоб надо делать:
1) добавил
2) удалил, оставив NТут тоже так можно. Глупо, но можно.
Внешняя команда на бэкап старых данных и удаление намного эффективнее.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Как сделать красиво: ограничить количество записей?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]