|
MySQL.RU - Webboard
Вернуться
11 000 записей в базе или 1? (Парень) 23/10/2016 - 14:03:15
Re: 11 000 записей в базе или 1? (Akina) 23/10/2016 - 19:10:01
Re: 11 000 записей в базе или 1? (Парень) 24/10/2016 - 14:26:56
Re: 11 000 записей в базе или 1? (Akina) 24/10/2016 - 14:38:09
Re: 11 000 записей в базе или 1? (Парень) 24/10/2016 - 20:19:19
Re: 11 000 записей в базе или 1? (Akina) 24/10/2016 - 22:51:41
Re: 11 000 записей в базе или 1? (Парень) 24/10/2016 - 23:21:19
Re: 11 000 записей в базе или 1? (Akina) 25/10/2016 - 09:18:59
Re: 11 000 записей в базе или 1? (Парень) 29/10/2016 - 00:13:02
Re: 11 000 записей в базе или 1? (Akina) 29/10/2016 - 20:53:40
Re: 11 000 записей в базе или 1? (Парень) 07/11/2016 - 09:37:48
Re: 11 000 записей в базе или 1? (Akina) 07/11/2016 - 12:08:57
Re: 11 000 записей в базе или 1? (Парень) 08/11/2016 - 13:53:59
Re: 11 000 записей в базе или 1? (Akina) 10/11/2016 - 10:16:33
Re: и ещё (Akina) 10/11/2016 - 10:20:07
Re: и ещё (Парень) 12/11/2016 - 17:24:08
Re: и ещё (Akina) 14/11/2016 - 07:56:25
Re: и ещё (Парень) 20/11/2016 - 13:50:05
Re: и ещё (Akina) 21/11/2016 - 23:53:10
Re: и ещё (Парень) 22/11/2016 - 11:52:17
> Original message text:
> From: Парень - 23/10/2016 - 14:03:15
> Subject:11 000 записей в базе или 1?
> -----------------
> Нужен совет, а точнее даже если вдруг кто тестировал. Стоит задача подружить пользователей. Как лучше сделать, записывать связку друг с другом в базу, или каждому загнать в TEXT или BLOB или что там самое большое подходящее под это поле айди пользователей через запятую. Ай ди состоят из 7-9 значных чисел. Максимальное число друзей у пользователя 11 000 соответственно у первого будет 10 999 записей. У остальных будет меньше так как какая-то связка будет для одного пользователя другая для другого... Если 100 пользователей подружить между собой будет примерно 9000 записей в базе вобщем сейчас в базе 1734 пользователя, а связок 92 с лишним тысячи.. а точнее 92850. Естественно не все там будут дружить со всеми... Но... не загнется ли на 10000 пользователях MySQL? И целесообразно ли проверять массив с примерно 10000 значений на совпадения и последующим добавлением в этот массив очередного айди?
>
From: Парень - 08/11/2016 - 13:53:59
Subject:11 000 записей в базе или 1?
-----------------
Да тут в таблице и индексы-то особо негде ставить
Это таблица тех кто уже в паре
CREATE TABLE `frends` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`sender_id` int(11) DEFAULT NULL,
`resiver_id` int(11) DEFAULT NULL,
`status` char(1) DEFAULT '0',
`created` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY `UNIQ` (`resiver_id`,`sender_id`),
KEY `SENDER` (`sender_id`),
KEY `RESIVER` (`resiver_id`)
) ENGINE=InnoDB AUTO_INCREMENT=108281 DEFAULT CHARSET=utf8;
Это таблица чья очередь посылать...
CREATE TABLE `frends_send` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`contact_id` int(11) DEFAULT NULL,
`upd` datetime DEFAULT '0000-00-00 00:00:00',
`auto` char(1) DEFAULT '1',
`luck` char(1) DEFAULT '0' COMMENT 'удачно или не удачно выполнена операция',
`locked` char(1) DEFAULT '0' COMMENT 'блокировка действия скрипта',
`interv` char(2) DEFAULT '60' COMMENT 'интервал отправки в минутах',
PRIMARY KEY (`id`),
UNIQUE KEY `UNIQUE` (`contact_id`),
KEY `auto` (`auto`),
KEY `contact_id` (`contact_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1444 DEFAULT CHARSET=utf8;
Так вот когда я делаю выборку с ORDER BY upd MySQL виснет намертво.
Мне надо выбрать того кто позже всех отправлял и не раньше чем интервал.
То есть раньше чем через интервал скрипт не отправит заявку, ну а чья очередь отправлять по идее должна того у кого время самое позднее.. Но MySQL виснет. Сейчас убрана выборка upd и заявки отправляются как попало..
[Это сообщение - спам!]
Последние сообщения из форума
Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
43689
|
|