172 похожих чатов

Всем привет, хотелось бы услышать мнение людей с большим опытом,

проетируем БД, для описание объектов недвижимости придется заводить таблицу которая будет содержать около 200 полей, со времен число полей может увеличиться, каждая запись в таблице может использовать 1-40% всех полей, имеет ли смысл выносить свойства объектов недвижимости в отдельный справочник и потом объединять их с объектами через третью таблицу, или это лишние танцы с бубном и мало повлияют на производительность? вариант хранить все свойства в json не рассматриваем. На первых парах в базе будет храниться примерно 10к объектов недвижимости

9 ответов

10 просмотров

Имеет. Притом дажэ не на производительность (производительность от введения avpair скорее пострадает) -- а на управляемость системы. И да, это важнее на самом деле. Плохую производительность можно залить жэлезом или нанять одного инжэнера на оптимизацыю critical path -- а плохая управляемость проекта чаще всего не лечится до его смерти. И да, есть определённый смысл самые часто требуемые атрибуты таки не выносить в avpair.

> имеет ли смысл выносить свойства объектов недвижимости в отдельный справочник и потом объединять их с объектами через третью таблицу А как конкретно выглядит это решение (непонятно, в чём альтернатива)? И да, почему Вас вообще волнует производительность, с учётом: > в базе будет храниться примерно 10к объектов недвижимости Даже если потом будет больше — насколько и какие (примерно) ожидаются запросы?

Может вынести не используемые в логике поля в JSONB ?

Если у тебя в таблице 200 полей — уже однозначно ты делаешь что-то не так...

имеет ли смысл выносить свойства объектов недвижимости в отдельный справочник и потом объединять их с объектами через третью таблицу, Имеет. То, что ты описываешь, называется "нормализация". Её НЕОБХОДИМО делать. вариант хранить все свойства в json не рассматриваем. И не надо... Не место JSON-у в РСУБД На первых парах в базе будет храниться примерно 10к объектов недвижимости Это мало.

Ilya Zviagin
имеет ли смысл выносить свойства объектов недвижи...

Уже много лет не так. Если эти свойства в логике не участвуют, по ним выборки не делается то смысл их хранит каждое в своём поле? Что бы что? Что бы показать структуру этих данных или что?

Che
Уже много лет не так. Если эти свойства в логике н...

Согласен, но если свойства в логике не участвуют, по ним выборки не делаются — нафига их вообще хранить в БД?

Che
А где?

Нигде , например... Давай не будем спорить в пустую — пусть автор вопроса про это думает...

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
Кибер Бомж
8
Карта сайта