Я работаю над проектом, который включает в себя создание приложения в стиле социальной сети, позволяющего пользователям обмениваться информацией о запасах/товарах в своей сети (для поиска).Реляционная база данных MySQL с большими наборами данных, уникальная для каждого пользователя
Я порядочный программист, но я, по общему признанию, не специалист по базам данных; тем более, когда дело доходит до проектирования базы данных. В настоящее время информация о пользователе/компании хранится через схему реляционной базы данных в MySQL, которая работает отлично.
Моя проблема заключается в том, что, хотя моя реляционная схема работает блестяще для информации о пользователях/компаниях, это путает меня о том, как внедрять информацию инвентаризации. Проблема в том, что каждый «список инвентаря» определенно содержит разные атрибуты, относящиеся к типу продукта, но идентичные атрибутам каждого другого продукта в списке. Моя первая мысль заключалась в создании таблицы для каждого «списка инвентаря». Тем не менее, я чувствую, что это было бы очень грязно и осложнило будущие попытки KDD. Я также (кратко) рассматривается с использованием «мастер инвентаризации» и хранения информации (например, переменные категории и данные в виде строки JSON. Но я полагал, что JSON строки MySQL просто стала больше боль в заднице.
Мой вопрос по существу в том, как кто-то другой может решить эту проблему? Или, в более общем плане, придерживаться принципов управления реляционными базами данных, каков «правильный» способ связывания уникальных больших наборов данных аналогичного типа с родительским пользователем? , Я знаю, что я мог бы легко создать что-то, что сработало бы, но я искренне интересуюсь консенсусом относительно того, как решить эту проблему.
PArt как вы решаете это включает в себя вопрос о том, как вы собираетесь использовать эти поля, которые не являются стандартными? Если вы их только покажете, то все описание в поле varchar или nvarchar (max) будет работать с общими функциями, которые вы запрашивали бы в качестве таблицы inteh как отдельные поля. Если вам нужно запрашивать различные типы атрибутов vastlky, существуют другие альтернативы, включающие EAV или базу данных документов. – HLGEM
Да, мне нужно будет сделать некоторые манипуляции на PHP, а затем: – CRK
Да, мне нужно будет сделать некоторые манипуляции на PHP, а затем передать их в приложение Backbone в браузере пользователя. Поскольку данные должны обрабатываться в каждой транзакции, я думаю, что слишком интенсивно работать с процессором JSON (или любым другим VARCHAR), обрабатывать его и т. Д. Кроме того, я чувствую, что хранение всего в VARCHAR в конечном итоге станет кошмаром так как данные инвентаризации могут быстро складываться. Извините, мой комментарий выше был отрезан. – CRK