- 12, May 2024
- #1
Я посмотрел на то, как Элгг хранит данные, и это заставило меня задуматься.
Обычно, когда на вашем сайте есть сообщения, комментарии и т. д., у вас есть таблицы типа (сообщения, комментарии), но здесь все хранится в двух таблицах. Это две таблицы: «сущности» и «метаданные», и они структурированы следующим образом: Сущности:
Обычно, когда на вашем сайте есть сообщения, комментарии и т. д., у вас есть таблицы типа (сообщения, комментарии), но здесь все хранится в двух таблицах. Это две таблицы: «сущности» и «метаданные», и они структурированы следующим образом: Сущности:
------------------------------------------------------------
| Имя | Тип |
------------------------------------------------------------
| гид | интервал(20) |
| тип | enum('объект', 'пользователь', 'группа', 'сайт') |
| подтип | варчар(252) |
| владелец_гид | интервал(20) |
| контейнер_гид | интервал(20) |
| доступ_ид | интервал(11) |
| время_создано | интервал(11) |
| время_обновлено | интервал(11) |
| последнее_действие | интервал(11) |
| включен | enum('да', 'нет') |
------------------------------------------------------------
и структура метаданных
----------------------------------------------
| Имя | Тип |
----------------------------------------------
| идентификатор | интервал(11) |
| Entity_guid | интервал(20) |
| имя | текст |
| ценность | длинный текст |
| тип_значения | enum('целое число', 'текст') |
| владелец_гид | интервал(11) |
| доступ_ид | интервал(11) |
| время_создано | интервал(11) |
| включен | enum('да', 'нет') |
----------------------------------------------
Если правильно индексироваться, будет ли это лучше и в масштабе? Каковы преимущества и недостатки этого метода?