Ответы пользователя по тегу MySQL
  • Хранение типизированных данных в базе данных

    art_karetnikov
    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Давайте просто вместе подумаем. Во-первых, не обязательно использовать полный инт — сколь там типов статей у вас? TinyInt USIGNED — не перекроет? Во-вторых, если строка у вас варчарная — какой длины? Если четыре символа — можно и не заметить. А выше — имнсхо, надо использовать число.
    Предполагаю с высокой вероятностью еще и то, что вам нужна будет выборка — и не только по этому полю, скорее, индекс по нескольким. Здесь еще и размер его будет важен.
    Ответ написан
    Комментировать
  • mysql slow insert Медленный запрос insert

    art_karetnikov
    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Коллега, есть быстрое решение — заводите еще одну таблицу, short_log, вставляете данные в неё, а фоном — отдельно от того, что нужно делать быстро — переливаете её всю в большую. Это будет пакетная вставка, она выполняется быстрей, чем вставка одной записи, потому что индекс — а мы знаем, что индекс перестраивается достаточно долго — будет перестраиваться один раз. А сейчас у вас это выполняется при вставке каждой строки. \

    Пишете отдельно процедуру, гоняете её каждые 10 минут — если строк в short_log — больше, скажем, 10 тысяч — все из неё заливаете в большой лог.

    Далее. Поля int у вас допускают отрицательные значения — я бы сделал UNSIGNED, вряд ли девайс у вас может иметь отрицательный id
    Далее. Дата — это по сути тот же инт, верно? Давайте его как инт и хранить — и вставлять как инт — съэкономим время на преобразование при перестройке индекса.
    Нужно будет посмотреть реальную дату — выполните обратное преобразование.
    Ответ написан
    5 комментариев
  • Запрос из базы, одно поле — много значений?

    art_karetnikov
    @art_karetnikov
    Лучший мой проект: Мобильный банк Сбербанка РФ.
    Коллега, вы зря используете под это вордпресс и метаполя — там поля типа варчар и без индексов. Через некоторое время это у вас начнет жутко тормозить. Разработайте свою структуру, как правильно — с первичными ключами типа int и так далее.
    Ответ написан
    4 комментария