Страницы

Поиск по вопросам

четверг, 23 января 2020 г.

Оптимизированная структура базы SQL

#sql #база_данных #оптимизация


Здравствуйте, друзья!

У меня очень серьезная проблему по созданию структуры БД.

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

Я думал создать отдельную таблицу для ссылок, но он очень быстро пополнится, и это
меня пугает.

Вопрос: Есть какие то идеи?

Буду рад любой идей.

Заранее спасибо.
    


Ответы

Ответ 1



Не стоит делать из этого проблему. Производительность вашей РСУБД зависит от используемого железа (правильную архитектуру не забываем здесь). Поставили SSD диск, мощный процессор, побольше памяти и никаких проблем с производительностью при средней нагрузке не будет на выгрузках, но если у вас большая нагрузка, и еще не только выгрузки, а еще всякие расчеты, то против природы не пойдешь, большие данные требуют больших ресурсов для обработки. Нужно больше чтения - подняли второй сервер в режиме слейва. Чисто теоретический, один сервер, в котором один диск на 480 ГБ, при максимальном размере ссылки в 1024 символа, может хранить где-то 400 млн записей в таблице ссылок у Вас даже не возникнет проблем размещения всего этого на одном сервере, главное сделайте индексы на свои папки. Иногда используют словарный подход для контроля ссылок, это таблица вида id - hash - value, позволяет сократить расходы на одинаковые ссылки, но также требует ресурсов для работы, применять нужно, только если есть необходимость в этом функционале. Не беспокойтесь, если объем таблицы перевалит за размер одного сервера, тогда займетесь партицированнием таблицы и способами кластеризации вашего сервера.

Комментариев нет:

Отправить комментарий