Название: Формирование рейтинга Отправлено: blood_shadow от Сентябрь 04, 2011, 07:23 Добрый день,
есть БД в которой есть разные таблицы с марками автомобилей, и есть программа через которую осуществляется доступ к таким таблицам, у каждого автомобиля есть свой `rating` просмотра, этот рейтинг формируется с количества просмотров через эту программу, необходимо каждые 15 минут обнулять рейтинг Вопрос: 1. можно ли как-то "сказать" таблице инкрементировать значение ячейки `rating`? 2. как поставить таймер в БД который будет обнулять `rating` каждые 15 минут Название: Re: Формирование рейтинга Отправлено: maint от Сентябрь 04, 2011, 07:31 если просмотрщик свой с исходниками, то вставить туда событие. Если нет, то сторонней программой в 5 строчек
Название: Re: Формирование рейтинга Отправлено: blood_shadow от Сентябрь 04, 2011, 08:22 если просмотрщик свой с исходниками, то вставить туда событие. Если нет, то сторонней программой в 5 строчек да просмотрщик свой, проблема только в том что екземпляров этой программы может быть много, и в одинмомент времени несколько таких экземпляров может посмотреть карточку одного автомобиля, то есть обновить устаревшее значение (операция не атомарна) если с БД нельзя так сделать как я говорил, что там насчет сторонней программы? Название: Re: Формирование рейтинга Отправлено: Рома от Сентябрь 04, 2011, 11:15 ИМХО: Думаю maint имел ввиду, что нужно создать отдельную программку, которая каждые 15 минут будет очищать rating. Она не должна иметь никакого отношения к просмотрщику, а быть привязаной только к БД.
А по поводу первого вопроса, думаю будет неплохо, если вы по-подробнее раскажете про саму БД. Название: Re: Формирование рейтинга Отправлено: LisandreL от Сентябрь 04, 2011, 11:23 Я бы создал отдельную таблицу, куда писал записи вида (id_машины, время_просмотра) с индексами по полям.
Рейтинг получал бы как count записей, где id_машины = id_этой машины и время_просмотра >= сейчас - 15 минут. Ну и время от времени вызывать удалить, если время_просмотра < сейчас - 15 минут, чтобы слишком не разрасталось таблица. Название: Re: Формирование рейтинга Отправлено: Whiplash от Сентябрь 05, 2011, 09:50 Вообще, довольно много от СУБД зависит, которая используется. Если есть возможность, то можно создать селективную процедуру на выбор параметров автомобиля, и в этой процедуре инкрементировал бы соответствующий рейтинг.
|