Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




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, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
43689



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |