Ответы пользователя по тегу MySQL
  • Уменьшение размера БД

    Dunadan
    @Dunadan
    А что мешает сделать аггрегацию статистики?

    Например, Вы считатете количество просмотров определенной страницы.
    Каждый хит — одна запись в БД с ай-пи адресом посетителя.

    Для сводной таблицы вполне достаточно будет записи вида page_id, page_view_count, week_id, где
    page_id — индекс страницы
    page_view_count — просмотров страницы за неделю
    week_id — порядковый номер недели в году.

    Для отчетов из серии «за неделю-месяц-полгода-год» вполне пойдет. Можено еще количество хостов считать.

    В результате вся статистика по одной странице за год займет аж 52 записи.
    Ответ написан
    Комментировать
  • Как лучше всего организавать хранение "нравица"-"не нравица" для статей или постов в базе данных?

    Dunadan
    @Dunadan
    Ну если нужно только считать, то вполне достаточно просто добавить поле rating в таблицу со статьей и увеличивать / уменьшать ее значение программным образом.

    Таблица нужна только тогда, когда требуется накладывать ограничения по времени, ай-пи адресу и пр. Хорошим тоном считается не хранить ай-пи адрес в виде строки, а записывать его числовое значение (если пишете на php — php.net/manual/en/function.ip2long.php).

    Причем при выводе ленты новостей весьма полезно аггрегированное значение рейтинга таки хранить в отдельном поле в таблице статей — что бы не пересчитывать его каждый раз. Обновлять его можно триггером на стороне СУБД или программно.
    Ответ написан
    1 комментарий
  • Работа с базой в ООП-приложениях на php 5.3

    Dunadan
    @Dunadan
    Используете ли какой-либо фреймворк?

    Мы у себя используем Кохану 3 и к ней Jelly — дешево, с реляциями дружит хорошо.

    Many-to-many не требует создания модели для промежуточной таблицы.

    Одна беда — не standalone.
    Ответ написан