1. SQL / Говнокод #4203

    −125

    1. 1
    2. 2
    3. 3
    4. 4
    CREATE TABLE IF NOT EXISTS `ls_user_administrator` (
      `user_id` int(11) unsigned NOT NULL,
      UNIQUE KEY `user_id` (`user_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

    Видимо сделать столбец 'administrator' в таблице `ls_user` и ставить в него 1 или 0 - это слишком просто.. Или тут скрыта какая-то оптимизация?
    Дамп спёрт из LiveStreet.

    Запостил: hybroid, 08 Сентября 2010

    Комментарии (26) RSS

    • на правах бреда: экономят место в записи, что б целиком помещалась в индекс?:)
      Ответить
      • да ну.. имхо, точно бред
        Ответить
      • и там в записи ещё и профиль обитает.. т.е. куча колумнов user_profile_*
        Ответить
    • пока join'ов не увжу сказать что говно не могу. говно оно все в джоинах проявляется...
      Ответить
    • А в чем конкретно говно, простите? В том, что выделили нахуй не нужную таблицу?
      Ответить
      • этого мало?
        Ответить
      • если думать о сотнях миллионов юзеров - не такой уж и говнокод.
        но в ливстрите - это не нужно.
        Ответить
    • Будем надеяться что автор просто заранее подумал о развитии системы, и предусмотрел отдельную таблицу, куда потом возможно добавятся еще другие данные: разделение прав доступа для разных админов например.
      Ответить
    • Не знаю как там в LiveStreet, а из такой таблицы легче выдрать данные (типа да/нет) чем юзать огромную таблицу `ls_user`
      При десятках тысяч пользователей это не заметно, но когда количество переходит в миллион...
      Ответить
      • это вы на правах маразма предположили? есть индексы. если миллионы - есть много железа, оно дешевле маразма и поддерживать проще, чем травму головы.
        а данном случае на ваших миллионах - горлышком бутылки всё равно будет PHP с быдлокодом на нём. как не поверни его - он тормоз. и сомтрите коммент ниже.
        Ответить
        • если применительно к livestreet, то вполне возможно и упрётся в пых, а если не пыхтеть, то дело другое..
          Ответить
          • Как это принято в крупных проектах типа жж, контакта и фасебука: сначала пишешь на перле или пхп, потом (когда приходит 100500 человек) начинаешь отчаянно решать проблемы, связанные с неподготовленностью платформы к таким нагрузкам. Патчишь интерпретаторы, например.

            А другие сразу берут нормальный язык, и даже не догадываются о существании таких проблем:)
            Ответить
        • так-то оно так, что лучше сначала попростому.
          но может всё стало так тормознуто, что даже индексы не помогают.
          Ответить
    • А чё без фореин кея?
      Ответить
      • связи? в моем PHP/MySQL?
        Ответить
        • Ну Engine же InnoDB
          Ответить
          • ключевое слово тут "php", а не "mysql". Хотя последний тоже тот еще фрукт
            Ответить
            • ключевое слово здесь "жопорукие". И пых, и мускул, и даже бейсик, несмотря на говнодизайн языка, можно притянуть за уши к хорошему коду. как и наоборот
              Ответить
              • напомните мне, сколько лет и сторонних storage engines понадобилось чтобы приписать R к DBMS MySQL? :-P
                Ответить
                • угу.. и эта приписка на корню положила главный бонус - скорость её работы.
                  Ответить
    • дополнение: http://govnokod.ru/4205
      про миллионы пользователей и лайвстрит - не смешите, не верю (с)
      загнётся до прихода в БД
      Ответить
    • благодаря последним гетам говнокода есть реклама лайвстрит, точнее - антиреклама
      Ответить
    • логику надо смотреть
      Ответить

    Добавить комментарий