Правильная ли структура БД? - MySQL
Формулировка задачи:
Добрый вечер.
Есть задача создать простой сайт с очень большим количеством статей - около 2 млн. статей. Сайт самый простой без админки работающей в связке с БД. Встал вопрос правильной организации БД. Основная задача - это быстрая работа выгрузки данных из БД.
Сейчас у меня сложилась следующая структура базы данных, в итоге будет 3 таблицы в БД.
Первая таблица - categories, соетвестнно категорий статей.
Дальше таблица posts - будет держать в себе в следующее ячейки:
И последняя таблица texts - будет содержать в себе сами текстов статьи, следующая структура:
Таблицы все планирую по типу InnoDB
Все. Вот теперь вопрос будет ли такая структура работать быстро с 2 млн. записями? Какие будут предложения по улучшению? Главное это быстрая выборка из БД при выводе заголовкой, записей, текстов и т.д. Поделитесь свои мнением пожалуйста. Спасибо.
Структрука таблицы categories: id - соотвественно id категории name - название категории
id - id записи name - название статьи catid - id категории (из таблицы categories) min_descr - краткое описание статьи views - количество просмотров статьи meta_keywords - ключевые слова для meta_keywords meta_descr - краткое описание для meta_description
id - id записи postid - id статьи (связка с таблицей postid), будет стоять индекс на это поле. text - сам текст статьи, поле будет - LONGTEXT
Решение задачи: «Правильная ли структура БД?»
textual
Листинг программы
SELECT * FROM posts
Объяснение кода листинга программы
- Запрос на выборку данных из таблицы
posts
- Значение
*
означает, что будут выбраны все столбцы из таблицы - Результат запроса будет содержать все строки и столбцы из таблицы
posts
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д