Iam инженер-программист (с тех пор как несколько месяцев готов к учебе), и для моей работы я разрабатываю большое масштабируемое веб-приложение. Другая фирма выполняет работу по программированию и делает базу данных за ней. Мы определили данные и отношения между ними, но не создали жесткую структуру базы данных, которую они должны использовать.Структура таблицы базы данных для больших и масштабируемых приложений
Теперь первые (внутренние) вещи являются видимыми. Я посмотрел в структуре базы данных позади пилы (по-моему) что-то странное.
Для пользователей они создали пользователей таблицы, которые содержат такие вещи, как идентификатор, адрес электронной почты и пароль. Рядом с этим они создали таблицу user_meta, содержащую идентификатор, ключ и значение.
Когда я есть пользователь с:
- идентификатору пользователя
- электронной
- пароль
- имя
- Lastname
- адрес
- телефон
идентификатор, адрес электронной почты и пароль хранятся в таблице пользователя. Другая информация - это строки, созданные в таблице user_meta. Это означает, что в этом случае для 1 пользователя создано 4 строки (в нашем случае это более 20 строк для каждого пользователя). Эта структура является пользователем для каждого объекта, что должно быть сохранено в базе данных.
Я научился создавать таблицу, которая содержит все данные, необходимые для пользователя. Так что в моей логике она должна быть одна таблица с 7 полями ...
Дополнительная информация:
- Наше программное обеспечение построить на каркасе Laravel (по моему совету)
- Наше программное обеспечение использует База данных MySQL
Вопросы:
- Это обычный способ создания базы данных для больших систем или что-то в этом роде, потому что я никогда не вижу этого в своем исследовании или других проектах в своей жизни.
- Это хорошая или плохая практика?
- По-моему, это плохо для производительности. Особенно, когда растет количество пользователей, это правда? или это можно сделать для того, чтобы добиться высокой производительности (потому что не нужно выбирать целую запись (в нашем случае мы ожидаем, что к концу 2017 года пользователи ПОЛНОСТЬЮ 100.000 пользователей будут расти быстрее и быстрее, когда наш проект пройдет. материальный шанс, что мы вырасти намного выше 1.000.000 пользователей за несколько лет)
- Я думаю, что причина, по которой они это делают, заключается в том, что «объекты» можно изменить очень просто, но, на мой взгляд, всегда возможно добавить полей в таблицу, и вы НИКОГДА не должны удалять поля (также не тогда, когда это возможно по структуре базы данных), является ли мое мнение в этом праве?
Извините, когда вопросы «вопросы noob», но для меня это первый большой проект в моей жизни, поэтому я пропустил какой-то опыт, но стараюсь профессионально управлять проектом. Мы обсудим эту среду на встрече. На этом пути я хочу немного подготовиться к этой теме.
Почему -1 в течение 5 минут? Разве я не описал мой вопрос подробно? – RoDo
Я не думаю, что этот вопрос должен быть опущен. Большинство людей скажут вам, что это плохой подход, поиск * entity-attribute-value * или * one-true-lookup-table *. – dnoeth
Спасибо за + so iam on 0 снова, я отредактировал свой вопрос и разместил его new :-(так что теперь у него есть копия * thumb down * извините за это ..., я буду использовать ваши ключевые слова Google, спасибо за подсказку. – RoDo