|
|
|
Создание БД
|
|||
|---|---|---|---|
|
#18+
Есть база данных в которой хранится статистика когда человек посещал сайт то есть запись вида id-счётчик user_id - id пользователя date time - дата и время причём посещал сайт не последний раз, а вообще за всё время работы сайта, таблица стала очень большой и выборку из неё стало делать очень трудно, вопрос в каком направление капать для улучшения работы с таблицей, было предложение создать для каждого пользователя отдельную таблицу, но мне кажется это не очень хорошее решение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2010, 10:31 |
|
||
|
Создание БД
|
|||
|---|---|---|---|
|
#18+
Копать в сторону: 1. Индексирования. 2. Партиционирования - разбить таблицу на несколько таблиц по полю дата-время. 3. Посмотреть что там с аппаратной платформой - дисками, процесорами и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2010, 10:40 |
|
||
|
Создание БД
|
|||
|---|---|---|---|
|
#18+
А Партиционирование по user_id? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2010, 12:23 |
|
||
|
Создание БД
|
|||
|---|---|---|---|
|
#18+
highloadА Партиционирование по user_id? По датам более правильно поскольку все таки четко понятно какое количество частей (я так полагаю на каждую часть предлагается заводить отдельную таблицу). Например если по дням то прирост 365 дней. Если по неделям то соответственно количества частей меньше. Если по user_id то если количество пользователей не большое (и не будет интенсивно расти) то имеет смысл, а если очень большое например сотни тысяч то нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2010, 13:06 |
|
||
|
|

start [/forum/search_topic.php?author=fenuk&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
56ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 658ms |
| total: | 810ms |

| 0 / 0 |
