Архитектура базы данных

  • Автор темы O_Schalker
  • 28
  • Обновлено
  • 12, May 2024
  • #1
Я посмотрел на то, как Элгг хранит данные, и это заставило меня задуматься.

Обычно, когда на вашем сайте есть сообщения, комментарии и т. д., у вас есть таблицы типа (сообщения, комментарии), но здесь все хранится в двух таблицах. Это две таблицы: «сущности» и «метаданные», и они структурированы следующим образом: Сущности:
 ------------------------------------------------------------

| Имя | Тип |

------------------------------------------------------------

| гид | интервал(20) |

| тип | enum('объект', 'пользователь', 'группа', 'сайт') |

| подтип | варчар(252) |

| владелец_гид | интервал(20) |

| контейнер_гид | интервал(20) |

| доступ_ид | интервал(11) |

| время_создано | интервал(11) |

| время_обновлено | интервал(11) |

| последнее_действие | интервал(11) |

| включен | enum('да', 'нет') |

------------------------------------------------------------

и структура метаданных
 ----------------------------------------------

| Имя | Тип |

----------------------------------------------

| идентификатор | интервал(11) |

| Entity_guid | интервал(20) |

| имя | текст |

| ценность | длинный текст |

| тип_значения | enum('целое число', 'текст') |

| владелец_гид | интервал(11) |

| доступ_ид | интервал(11) |

| время_создано | интервал(11) |

| включен | enum('да', 'нет') |

----------------------------------------------

Если правильно индексироваться, будет ли это лучше и в масштабе? Каковы преимущества и недостатки этого метода?

O_Schalker


Рег
01 Jan, 2011

Тем
1

Постов
2

Баллов
12
Тем
49554
Комментарии
57426
Опыт
552966

Интересно