Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (3) 1 [2] 3  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Доска объявлений, Принцип построения архитектуры БД доски объявлений
Zzepish  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Аццкая хрень
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5475
Пользователь №: 32538
На форуме: 4 года, 6 месяцев, 11 дней
Карма: 49




S.Chushkin
Цитата
Да, быстрее.
Только, утверждение требует уточнения: в каких случаях и насколько.
Вы можете привести данные сравнительных тестов?

Эх, была у меня таблица на 250к+ записей. На ней все тестил. Данных не помню(


--------------------
Правда тоже ложь, но с иным углом.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sg.com  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Старик
***

Профиль
Группа: Пользователь
Сообщений: 121
Пользователь №: 42899
На форуме: 7 месяцев, 9 дней
Карма: 3




twin спасибо статья чюток помогла:
Цитата
Различие в том, что MyISAM для каждой таблицы создает свой файл, InnoDB по умолчанию все хранит в общем.

то есть для InnoDB разницы нет в одной таблице или в нескольких хранить (по умолчанию).

правда немного задумался про MyISAM, но вот это наверное решающим станет:

Цитата
Резюмируя - InnoDB приоритетнее там, где важна целостность данных. При использовании транзакций и внешних ключей база данных становится более монолитной, исчезает опасность фантомных записей или прерванных операций. А целостность данных важна везде, где есть модификация.


в общем, основой разделения по таблицам (немного разделения все же будет ) вижу только то, если структура хранимой информации будет различна (количество и название полей таблицы то есть) для отдельных групп.

с архитектурой определился
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Гость_glock18  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









В то время, когда я использовал MySQL, MyISAM гипотетически был хорош для таблиц-справочников, поскольку когда записей в таблицу делается мало, блокировать ему тоже ничего не приходится, и в таких условиях у него выборка была быстрее, чем у Innodb. Мб Innodb ускорился версии с 6й, я не знаю, но знаю, что MyISAM уже давно на свалку истории отправить хотели разрабы, а вот Innodb с момента его появления оптимизировали постоянно.

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

PS: помимо пробела с целостностью, MyISAM очень плох для любых других случаев (скорее даже, в первую очередь из-за этого, а уже потом целостность) из-за table-lock'а. insert'ы и join'ы на MyISAM могут убить все надежды на скорость
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sg.com  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Старик
***

Профиль
Группа: Пользователь
Сообщений: 121
Пользователь №: 42899
На форуме: 7 месяцев, 9 дней
Карма: 3




"что бы не пострадала производительность других таблиц используют разбиение таблиц на отдельные файлы в InnoDB" - статья Вестника Кгуста (Издательство: Кыргызский государственный университет строительства, транспорта и архитектуры им. Н.Исанова (Бишкек) , КАРИМБАЕВ Т.Т., МАМБЕТАЛИЕВА А.М. ) biggrin.gif, не, ну правильно же пишут.

Это сообщение отредактировал sg.com - 28.06.2016 - 16:27
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15562
Пользователь №: 6543
На форуме: 8 лет, 2 месяца, 4 дня
Карма: 299

Трезвый :
5 лет, 11 месяцев, 14 дней


Цитата (Гость_glock18 @ 28.06.2016 - 11:49)
поскольку такую таблицу даже джойнить больше не получится ни с чем, и все данные дергать отдельными запросами оттуда

Можно с этого места поподробнее? Почему не получится?


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Зачем ворошить старое, когда можно наворотить новое?

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Гость_glock18  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Цитата (twin @ 28.06.2016 - 17:39)
Цитата (Гость_glock18 @ 28.06.2016 - 11:49)
поскольку такую таблицу даже джойнить больше не получится ни с чем, и все данные дергать отдельными запросами оттуда

Можно с этого места поподробнее? Почему не получится?

Насколько я помню, таблицы на разных энжинах нельзя джойнить друг с другом
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Могу ошибаться, конечно, я помню, что меня в своё время мучило то, что внешними ключами эту таблицу ни с чем не соединить, но, кажется, что джойнить ее с innodb таблицами не получалось, и ошибка вроде бы характерная была
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Guest  
Дата
Цитировать сообщение


Гость пожелал остаться неизвестным

Unregistered









Видимо, ошибаюсь все же:

http://stackoverflow.com/questions/5475283...h-myisam-tables

Однако

Цитата
What jumps out immediately at me is MyISAM.

ASPECT #1 : The JOIN itself

Whenever there are joins involving MyISAM and InnoDB, InnoDB tables will end up having table-level lock behavior instead of row-level locking because of MyISAM's involvement in the query and MVCC cannot be applied to the MyISAM data. MVCC cannot even be applied to InnoDB in some instances.


ликвидирует одно из основных преимуществ innodb, что с небольшой натяжкой можно считать достаточной причиной отказаться от джойнов MyISAM с Innodb
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
twin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Глухой нуб
******

Профиль
Группа: Администратор
Почтальон группы
Сообщений: 15562
Пользователь №: 6543
На форуме: 8 лет, 2 месяца, 4 дня
Карма: 299

Трезвый :
5 лет, 11 месяцев, 14 дней


Ты наверное путаешь с транзакциями. Да, то геммор, если вдруг понадобится включить такую таблицу в транзакцию. С джоинами там все нормально.

С InnoDB есть один неприятный момент - deadlock. Так что на "горячих" таблицах MyISSAM пока предпочтительнее. Но все не стоит на месте, может и это поправят.

А в плане производительности, это не тот случай, когда можно пренебречь безопасностью данных в угоду скорости.


--------------------
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Зачем ворошить старое, когда можно наворотить новое?

user posted image
PMСайт пользователяICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sg.com  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Старик
***

Профиль
Группа: Пользователь
Сообщений: 121
Пользователь №: 42899
На форуме: 7 месяцев, 9 дней
Карма: 3




Прочитав с десяток статей, все таки аргументы оставить разбивку таблиц на несколько (в разрезе тематик) убедительнее, - если информации станет много, - перезалить БД, так, что бы для каждой таблицы сформировался свой отдельный файл. Но однозначно - это InnoDB.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
S.Chushkin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пофигист
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 783
Пользователь №: 36058
На форуме: 3 года, 11 месяцев, 11 дней
Карма: 40




Цитата (sg.com @ 28.06.2016 - 18:54)
Прочитав с десяток статей, все таки аргументы оставить разбивку таблиц на несколько (в разрезе тематик) убедительнее, - если информации станет много, - перезалить БД, так, что бы для каждой таблицы сформировался свой отдельный файл. Но однозначно - это InnoDB.

Похоже Вы запутались. Или заблудились. smile.gif

Цитата (sg.com @ 28.06.2016 - 18:54)
Когда человек наверняка не знает, то такой вот совет (без какой либо конкретики) неясно как воспринимать. Например какие проблемы? (хотя бы одну две) ...и готов вроде начать с классики... но что такое классика?

А искать инфу Вас не учили? Научитесь, полезно. И я и другие профи не раз писали об этом, или на этом сайте или в соседних, - повторять вряд-ли кто-то будет специально для Вас.
Хотя ... хозяин-барин. "Я прокукарекал, а там хош рассветай хош не рассветай" (с) wink.gif



--------------------
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
S.Chushkin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пофигист
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 783
Пользователь №: 36058
На форуме: 3 года, 11 месяцев, 11 дней
Карма: 40




Цитата (Zzepish @ 28.06.2016 - 15:24)
Эх, была у меня таблица на 250к+ записей. На ней все тестил. Данных не помню(

Так повтори, - в чём проблема?
Только пошире: одна-две-три таблицы, простые сложные выборки, добавление/изменение/удаление записей и т.д. и т.п.
Разбей тесты на группы и выложи таблицу результатов для этих сравнительных тестов в идентичных условиях для разных движков. Вот это будет убедительный для всех, особенно для начинающих, аргумент за или против.


--------------------
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Аццкая хрень
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5475
Пользователь №: 32538
На форуме: 4 года, 6 месяцев, 11 дней
Карма: 49




S.Chushkin
Хм. Ты прав.


--------------------
Правда тоже ложь, но с иным углом.
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sg.com  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Старик
***

Профиль
Группа: Пользователь
Сообщений: 121
Пользователь №: 42899
На форуме: 7 месяцев, 9 дней
Карма: 3




Цитата (S.Chushkin @ 28.06.2016 - 20:30)
А искать инфу Вас не учили?

в том и дело, что искал и из того что нашел, все об одном, что разделение по таблицам (файлам) разгружает нагрузку на отдельную таблицу. Другого не встретил, то есть Ваша позиция абсолютно неясна для меня. Мало того, не разделение таблиц по файлам - пишут "это по старинке".

Разговор идет о разделении одной таблицы на пять аналогичных с небольшими различиями между собой (в пределах +/- один столбец или тип хранимой информации в таком столбце).

Почему такое решение плохо? Кроме Вашего "плохо" больше аргументов против пока нет smile.gif
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
S.Chushkin  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Пофигист
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 783
Пользователь №: 36058
На форуме: 3 года, 11 месяцев, 11 дней
Карма: 40




Цитата (sg.com @ 28.06.2016 - 20:46)
разделение по таблицам (файлам) разгружает нагрузку на отдельную таблицу. ... не разделение таблиц по файлам - пишут "это по старинке".

Бред. Не читайте такие статьи.


--------------------
PM
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (3) 1 [2] 3  Ответ в темуСоздание новой темыСоздание опроса