Нужен совет от опытных проектировщиков БД и программистов

1 2345 6
Thats right
На сайте с 29.08.2005
Offline
84
#31
bearman:
это мало, хочется больше рассчитать

Читаю топик и думаю - пора разрабатывать свою CFS (comment file system) :))))

bearman:
важна расстановка ключей и индексов ... остальное - мелочи.

bearman, на самом деле explain всем в помощь. Остальное - понимание, проверка понимания(тесты), реализация для конкретной задачи. Разве нет?

Магазин керамической плитки и керамогранита (http://www.sbsshop.ru)
[Удален]
#32
Thats right:
bearman, на самом деле explain всем в помощь. Остальное - понимание, проверка понимания(тесты), реализация для конкретной задачи. Разве нет?

индексы - я и имел ввиду explain.

Thats right:
пора разрабатывать свою CFS (comment file system) )))

у меня было свое решение на основе nested sets и порядка 5 индексов смежных. тестов больших не проводил, но explain радовал своим отсутствием записей в extra :D

Hi!
На сайте с 15.12.2006
Offline
103
Hi!
#33
bearman:
это мало, хочется больше рассчитать

bearman добавил 06.02.2010 в 18:40

важна расстановка ключей и индексов ... остальное - мелочи.

Многое зависит от архитектуры и подхода. Можно все хранить в одной таблице, применять nested sets и т.д. Иметь в ней миллионы записей и при этом обращаться только к 10% записей.

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

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

[Удален]
#34

Как вариант, использовать merge-таблицы по времени. Частые обращения только к новым комментам, поэтому и по времени. И действий руками минимум.

[Удален]
#35

nikitian, увы не тестировал, не могу ничего сказать :)

вопрос только в одном - там же как хранилище - myisam выступает? он крашится частенько :( (ну бекапы конечно сила, но иногда это не то :( )

Thats right
На сайте с 29.08.2005
Offline
84
#36
bearman:
он крашится частенько (ну бекапы конечно сила, но иногда это не то )

Да, плюс ограничение размера таблиц. И ещё в довес - при постоянных чтение-вставка - лучше инодб.

[Удален]
#37
Thats right:
И ещё в довес - при постоянных чтение-вставка - лучше инодб.

осообенно при миллионах строк :D

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

bearman добавил 06.02.2010 в 20:17

но селекты(простые select * from .. where) на муйисаме и правда быстрее, где то на 10-15%. хотя для меня целостность важнее

[Удален]
#38

Для комментов всё-таки чтение более актуально, чем вставка. Сильно уверен, что для мержа лочится физическая таблица.

[Удален]
#39
nikitian:
Для комментов всё-таки чтение более актуально, чем вставка.

на самом деле 0.05 или 0.06 секунды разница - ничто на чтение)) если потом это в кеш класть :) а без кеша многохитовый проект с 1млн коментами врядли выживет в любом случае))

[Удален]
#40

выбираешь здесь книгу из подборки по базам данных и чатаешь, чатаешь :)

принцип создания БД всегда один, а построение или структура баз могут быть разные.

1 2345 6

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий