|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Dmitri Shankov 2:5023/24.9 26 Aug 2004 23:35:00 To : Serge Chervjakov Subject : Re: Программируем MySQL под CGI Perl -------------------------------------------------------------------------------- /_°°±±ІІЫЫ_/ Привет Serge! /_ЫЫІІ±±°°_/ Смотря как *Serge Chervjakov* разбирается с *Igor Sigaev* 26 Aug 04 в 20:01, я не мог не вмешаться: >>> Самый "негеморройный" вариант сделать для id тип BIGINT (2^64). Если >>> этого мало, сделай id строковым и UNIQUE длиной до 255 символов: >>> получишь максимальное число записей 256^255. Единственная проблема - это >>> генерация этого id. Hо раз для тебя скорость не критична, этот вопрос >>> легко решается и "лобовыми" способами. IS>> Да не нравятся мне сильно большие значения при довольно небольшой базе IS>> ... SC> Hормальные значения.. ты же не собираешься их как числа использовать... И SC> потом, операция добавления записи я не думаю что должна быть какой-то SC> супербыстрой в твоем варианте... а для всего остального вроде как SC> пофиг... хотявыборка конечно не будет супер быстройюю но ты этого думаю SC> не заметишь:). Вот решение, пожалуй, и единственное в твоём случае, если 2^32 будет не хватать. Т.к. используя автоинкрементное поле в ПК сервер гарантирует его уникальность. А если мы сделаем выборку по всем записям, занесём в масив, что-то прибавим, на что-то умножим, то к тому моменту как нам необходимо будет что-то записать вполне допустима ситуация, что другая транзакция туда уже что-то записала, и что нам остаётся делать? Дальше проверять? К тому же 2^64 вместо 2^32 на 100 тыс записей это лишних 400кб, даже не смешно :) _*°°±±ІІЫЫ*_ Всего хорошего, Dmitri! _*ЫЫІІ±±°°*_ /_.+'''+._/ /_FIDOnet_/ /_`+,,,+'_/ ... Пассивный некрофил --- * Origin: ... Доктоp, я умpу ? ... А как же ... (2:5023/24.9) Вернуться к списку тем, сортированных по:
Архивное /ru.cgi.perl/2795311abda7.html, оценка из 5, голосов 10
|