Перейти к содержимому
Local

Рекомендованные сообщения

Эта связка у нас используется на самом маленьком сервере в тестовом режиме уже почти год. В базе всего 900 юзеров, пиковый онлайн где-то 300 юзеров. Детальная статистика пишется для 76% онлайновых пользователей (отключена у большинства безлимитчиков). Раньше писалась для всех. Момент когда начали отключать установить не удалось, по этому тут данные не очень достоверные.

Сейчас в базе данные начиная с 1 января 2010 года. База занимает 112 Гб на диске. Из них 96 Гб - таблица детальной статистики. В базу добавлено 3 дополнительных индекса по полям:

  • tb_sessions_data.fk_session_log
  • tb_detail_stats.fk_user
  • tb_detail_stats.from_time

Так же из базы убран один лишний индекс, ключ и поле: tb_detail_stats.pk_detail_stat (рекомендую это и для пользователей FireBird).

Таблица детальной статистики содержит 361186726 записей.

Время выполнения типичного запроса на получение детальной статистики составляет от 300 до 400 мс. Сам запрос:

SELECT    
   tb_detail_stats.from_time,
   MAX(tb_detail_stats.till_time) AS till_time, 
   tb_detail_stats.dir_num,
   SUM(tb_detail_stats.download) AS download,
   SUM(tb_detail_stats.upload) AS upload,                           
   SUM(tb_detail_stats.cost) AS cost
FROM      
   tb_detail_stats
WHERE                       
   tb_detail_stats.fk_user = (select pk_user from tb_users where name='*****') AND
   tb_detail_stats.from_time >= '2010-04-04 21:00:00' AND
   tb_detail_stats.from_time <= '2010-04-05 20:59:59'
GROUP BY tb_detail_stats.from_time, tb_detail_stats.dir_num
ORDER BY tb_detail_stats.from_time ASC, tb_detail_stats.dir_num ASC;

(да, знаю, там лучше использовать BETWEEN но это не влияет на время выполнения запроса).

СУБД тюнилась по параметрам:

  • shared_buffers = 384MB
  • maintenance_work_mem = 256MB
  • max_fsm_pages = 16000000
  • checkpoint_segments = 15
  • effective_cache_size = 1024MB

"Ест" примерно 400 Мб оперативки.

База пережила битые сектора на диске и миграцию на новый практически без простоя.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×