Структура БД: несколько таблиц с общим идентификаторомPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Структура БД: несколько таблиц с общим идентификатором

Сообщение Anonymous »

Я строю приложение, которое необходимо управлять различными объектами (3 на данный момент, но это может увеличиться во времени). Все эти объекты имеют уникальный идентификатор, использующий один и тот же формат, но не имею другого общего атрибута. < /p>

Я думал о базах данных NoSQL, но я должен использовать MySQL. Код PHP использует Laravel 4 с красноречивым Orm. < /P>

Допустим, я хочу, чтобы элемент с ID ABCD-123456 < /code>, я понятия не имею, какую таблицу запрашиваю, поэтому я подумал об этом: < /p>


[*] Когда вставление на таблицу идентификаторов идентификатор имена идентификатора (идентификатор идентификатор другой настолько идентификатор.

Код: Выделить всё

CommonIndex
)
[*] При запросе по идентификатору поиск имени таблицы в таблице CommonIndex , храните в $ tableName variable
[*] Получить окончательные данные с использованием $ tablememe :: find ('abcd-12345') в Eloquent (используется модели abcd-123456) < /ol>

Но я обеспокоен тем, что этот процесс станет вялым, когда мне придется искать свой идентификатор в 300K+ Rows < /p>

Любые мысли о том, как улучшить этот процесс или построить новый? < /p>

. />

Мои таблицы не связаны друг с другом, каждый представляет тип объекта < /li>
Каждая таблица имеет поле идентификатора < /li>
Каждый объект имеет уникальный идентификатор, но в одном и том же формате (Ex: таблица 1 содержит объекты ab-1 hi-5 < /code> Таблица 2 Cd 2-g-4 jk-4 jk-4 jk-4 jk-> jk-4 jk-> jk-4 jk-4 jk> jk-4 jk-4 jk-4 jk-код. etc...)
[*]Two objects from different types cannot have the same ID
[*]I do not assign the ID, each object already has one
[*]Most of the searches will be done by ID, because it's easier for the users
[*]In specific conditions, users may search a product on a different field than the ID, but I don't have the same worries about performance, because Это будет очень редко
[*], чтобы разрешить поиск по другим полям, эти конкретные поля будут индексировать (1 или 2 на таблицу)
[*] Поиск будет один за другим
[*] Если я добавлю пакетный поиск по пути, я обработаю один на один
>

Подробнее здесь: https://stackoverflow.com/questions/212 ... -common-id
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»