Хотите создать хранилище данных ... новую базу данных или просто сложить таблицы в существующую базу данных? - PullRequest
0 голосов
/ 31 декабря 2010

Итак, у меня есть база данных MySQL для веб-сообщества, которая является потенциальной статистической золотой жилой.В настоящее время я обслуживаю статистику, созданную с помощью всевозможных неприятных запросов в моей хорошо нормализованной базе данных.Я столкнулся с «пределом терпения» для таких запросов на своем общем хостинге и хотел бы перейти к хранилищу данных и ежедневной работе cron, жертвуя тем самым мгновенными обновлениями для увеличения статистической глубины в 100 раз.

Я только что начал читать о хранилищах данных, и в частности схеме «звезда», и все это кажется довольно простым.

Мой вопрос, по сути, заключается в том, должен ли я бросить все это дерьмо в новую базу данных илипросто сложить таблицы в мою существующую базу данных MySQL?Текущая база данных имеет 47 таблиц, самая большая из которых имеет 30 тыс. Записей.Я понимаю, что это ничтожно мало по сравнению с обычным корпоративным приложением, но среднее корпоративное приложение (я надеюсь!) Не работает на разделяемом хостинге!

Итак, учитывая мои аппаратные ограничения, какой метод был бы лучше?

Я действительно совсем немного знаю об этом, но я предполагаю, что читать Таблицу A, вычислять, а затем обновлять Таблицу B намного проще в той же базе данных, чем в разных базах данных, правильно?

Должен ли я заботиться о том, сколько таблиц в моей базе данных?

Ответы [ 2 ]

2 голосов
/ 31 декабря 2010

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

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

  • Вы можете поддерживать различные SLA для DW и веб-сайта
  • DW и веб-база данных могут иметь различные конфигурации
  • База данных DW в основном доступна только для чтения большую часть дня
  • DW и веб-база данных могут иметь разные циклы выпуска (это большой)
  • Типичные запросы DW (большой объем данных) не уничтожают кэш для веб-базы данных.
0 голосов
/ 31 декабря 2010

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

Вы не говорите, какой механизм хранения вы используете. В общем, вы хотите, чтобы индексы в вашей базе данных помещались в память для хорошей производительности вставки / обновления / удаления, поэтому размер буфера ключей или пула буферов должен быть достаточно большим, чтобы содержать «горячую» часть индекса.

...