powered by simpleCommunicator - 2.0.48     © 2025 Programmizd 02
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Использование таблицы для хранения атрибутов сущности по принципу Key-Value
75 сообщений из 75, показаны все 3 страниц
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898632
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня есть основная таблица для хранения сущности, в которой довольно много столбцов. Периодически приходят требования на расширение списка атрибутов сущности. Во многих случаях новый атрибут нужен лишь для небольшого процента сущностей и я бы не хотел все больше раздувать таблицу, добавляя в нее столбцы, которые часто будут разреженные.
Поэтому я решил создать отдельную унифицированную таблицу для хранения произвольных атрибутов сущности. Она имеет столбцы: EntityId (ссылка на сущность). TypeId (тип значения атрибута), Key (имя ключа атрибута), TextValue, IntValue, BoolValue, DateValue.
На данный момент меня такое решение устраивает.

Насколько такой подход приветствуется при проектировании БД? Какие потенциальные минусы такого решения могут проявиться в перспективе?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898656
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Google "EAV".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898659
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Interloper
Насколько такой подход приветствуется при проектировании БД? Какие потенциальные минусы такого решения могут проявиться в перспективе?

Просто будет много глупой еботни.

А все из-за глупой фобии
Interloper
я бы не хотел все больше раздувать таблицу, добавляя в нее столбцы, которые часто будут разреженные.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898669
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ёёёёё,

В чем глупость?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898684
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Interloper
ёёёёё,

В чем глупость?

Interloper
я бы не хотел все больше раздувать таблицу, добавляя в нее столбцы, которые часто будут разреженные.

- а в чем "ум"? Ты берешь на себя то, что уже давным-давно сделано в движке.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898711
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ёёёёё
Interloper
ёёёёё,

В чем глупость?

Interloper
я бы не хотел все больше раздувать таблицу, добавляя в нее столбцы, которые часто будут разреженные.

- а в чем "ум"? Ты берешь на себя то, что уже давным-давно сделано в движке.

Что именно сделано в движке?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898715
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Interloper
ёёёёё
пропущено...

пропущено...

- а в чем "ум"? Ты берешь на себя то, что уже давным-давно сделано в движке.

Что именно сделано в движке?

DDL, DML и вопросы оптимального хранения "пустых" полей.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898737
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Interloper
Что именно сделано в движке?

нормализация
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898739
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ёёёёё
Interloper
пропущено...

Что именно сделано в движке?

DDL, DML и вопросы оптимального хранения "пустых" полей.


Есть нюанс. Я работаю с ORM. Поэтому добавления нового атрибута также влечет за собой необходимость доработки сущностей ORM.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898752
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Interloper
ёёёёё
пропущено...

DDL, DML и вопросы оптимального хранения "пустых" полей.


Есть нюанс. Я работаю с ORM. Поэтому добавления нового атрибута также влечет за собой необходимость доработки сущностей ORM.


А с твоей схемой "key-value" сущности модифицироваться будут сами собой, понятно.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898798
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ёёёёё
Interloper
пропущено...


Есть нюанс. Я работаю с ORM. Поэтому добавления нового атрибута также влечет за собой необходимость доработки сущностей ORM.


А с твоей схемой "key-value" сущности модифицироваться будут сами собой, понятно.


Да, с такой схемой класс сущности меняться не будет при добавлении нового атрибута.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898802
Interloper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Interloper
ёёёёё
пропущено...


А с твоей схемой "key-value" сущности модифицироваться будут сами собой, понятно.


Да, с такой схемой класс сущности меняться не будет при добавлении нового атрибута.


И еще, у меня есть код для синхронизации изменений из БД в Elasticsearch. При добавлении атрибута как столбца в таблицу, придется править и этот код, в который хотелось бы лезть как можно реже.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898825
ёёёёё
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну раз все в порядке - в чем вопрос?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898976
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
InterloperНасколько такой подход приветствуется при проектировании БД? Какие потенциальные минусы такого решения могут проявиться в перспективе?
Key-value - это плохо. Прежде всего релиационную модель key-value ложатся херово, особенно если у тебя двухзвенка и самый лучший стак. Потом таблица станет толстой, тормозной и ты будешь спрашивать тут, как сделать pivot/unpivot, а я буду язвить и издеваться. Ты заплывешь жиром, облысеешь и станешь типичным ораклистом. Еще всё это сложно рефакторить, так что тебе обеспечено пассивно-агрессивное поведение и хроническая прокрастинация. А потом тебя выкинут с работы и наймут трех студентов-пистонщиков на твою зарплату.
Не делай key-value. А если уж делаешь, то не в РСУБД. А если в РСУБД, то это должна быть не двухзвенка на вложенках.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898986
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Interloper
Я работаю с ORM. Поэтому добавления нового атрибута также влечет за собой необходимость доработки сущностей ORM.

Уууу. Ну тогда делай, не думай. Хуже своей бд ты уже не сделаешь. В крайнем случае переложишь всё в какую-нибудь nosql типа redis или tarantool.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39898993
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чё-то анекдот вспомнился:
- медведь, а у тебя спички есть?
- не-а
- значит ты импотент
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39902985
Фотография Програмер.Илюша
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
чё-то анекдот вспомнился:
- медведь, а у тебя спички есть?
- не-а
- значит ты импотент


Я его слышал в варианте: "Фурманов, а у тебя спички есть? …"
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39903109
Riss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне в тему другой анекдот вспоминается:

Подходит Бабушка к нарикам и спрашивает: "Как мне на пролетарскую улицу пройти?"
"Как в кайф, так и иди"

Делайте, как считаете нужным, а остальное субъективно...
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39903323
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Interloper
У меня есть основная таблица для хранения сущности, в которой довольно много столбцов. Периодически приходят требования на расширение списка атрибутов сущности. Во многих случаях новый атрибут нужен лишь для небольшого процента сущностей и я бы не хотел все больше раздувать таблицу, добавляя в нее столбцы, которые часто будут разреженные.
Поэтому я решил создать отдельную унифицированную таблицу для хранения произвольных атрибутов сущности. Она имеет столбцы: EntityId (ссылка на сущность). TypeId (тип значения атрибута), Key (имя ключа атрибута), TextValue, IntValue, BoolValue, DateValue.
На данный момент меня такое решение устраивает.

Насколько такой подход приветствуется при проектировании БД? Какие потенциальные минусы такого решения могут проявиться в перспективе?


Не существует "правильных" или "неправильных" решений. Есть работающее решение и неработающее в конкретных условиях.
Я лично не всегда заморачиваюсь на том что все должно быть "по правилам". "Правильные" решения часто приводят к сложностям в сопровождении (например заказчики не хотят ставить обновления, которые касаются изменений структуры БД в четверг-пятницу, потому что админы хотят провести выходные дома с семьей), поэтому ничего не вижу зазорного в том, что в отдельных случаях отступить и сделать EAV. Но, конечно же, всю систему построить на EAV ИМХО- это утопия.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39903324
Nickfoster123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Thanks for sharing
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39903328
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crutchmaster
Key-value - это плохо. Прежде всего релиационную модель key-value ложатся херово, особенно если у тебя двухзвенка и самый лучший стак.


Если у тебя двухзвенка в 21м веке- это уже что то херово )
но в данном случае двухзвенка или 3х, если ты не правильно оперируешь данными - то ничего не поможет.

crutchmaster
А потом тебя выкинут с работы и наймут трех студентов-пистонщиков на твою зарплату.
Не делай key-value

Жути то нагнали... Побежал срочно выкорчевывать EAV ))
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39903584
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Чтобы добиться успеха, надо принимать правильные решения" (с)
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39903789
Sergei.Agalakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возможно следует разбить таблицу на несколько, может быть с общим предком. Ваш вариант работает, но я бы рассмотрел вариант с JSON для экстра аттрибутов, если потенциально каждая запись может иметь какие-то произвольные дополнительные аттрибуты.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39903839
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serguei
Жути то нагнали... Побежал срочно выкорчевывать EAV ))

Ты уже не сможешь, даже если захочешь. В этом вся и подлость. А когда понимаешь это, то уже поздно.
Serguei
если ты не правильно оперируешь данными

РСУБД никак не оперирует с EAV, кроме простейших выборок. Всё что угодно другое превратится в дикий изврат и тормоза. Извращенца, который с этим работает, вместе с его базой наблюдаю каждый день.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39903870
Serguei
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crutchmaster

Ты уже не сможешь, даже если захочешь. В этом вся и подлость. А когда понимаешь это, то уже поздно.

Весь секрет в том, что я не использую это решение в тех местах, где есть частые выборки. Поэтому нет смысла что то менять.


crutchmaster

РСУБД никак не оперирует с EAV, кроме простейших выборок. Всё что угодно другое превратится в дикий изврат и тормоза. Извращенца, который с этим работает, вместе с его базой наблюдаю каждый день.


если вы не любите кошек -значит вы не умеете их готовить. С базами тоже самое ;)
Огульное использование EAV -да приведет к таким последствиям, но только огульное.;)
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39903944
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Serguei
Весь секрет в том, что я не использую это решение в тех местах, где есть частые выборки

Serguei
Огульное использование EAV -да приведет к таким последствиям, но только огульное.;)

Ну вот есть банальный магазин с товарами, там да, свойства товаров никак не сделаешь, кроме как через EVA и там таки да, частые выборки. У нас тут вообще свойства чего угодно через eva и таки да, тоже частые выборки. И куда тогда этот eva можно без страха засунуть?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39903962
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://www.sql.ru/forum/1320420/import-eksport-zapisey-mezhdu-bd
Хотя после такого, я не знаю, что хуже, eva или col60.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39904287
Daniel Logovenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По мнению Тома Кайта EAV такой должен быть :)
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39904435
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Daniel Logovenko,

Так есть nosql базы данных для всего этого. Зачем велосипедить это на рсубд?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39904436
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crutchmaster

Ну вот есть банальный магазин с товарами, там да, свойства товаров никак не сделаешь, кроме как через EVA и там таки да, частые выборки. У нас тут вообще свойства чего угодно через eva и таки да, тоже частые выборки. И куда тогда этот eva можно без страха засунуть?


Для магазина с товарами, для хранения каталога товаров и поиска по нему, возможно имеет смысл посмотреть в сторону NoSQL.
Т.к. как сказано здесь, структура каталога товаров может меняться чуть ли не каждый день.

А вот уже для корзины и оформления заказа возможно нужен SQL, т.к. транзакции.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39904474
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
crutchmaster

Ну вот есть банальный магазин с товарами, там да, свойства товаров никак не сделаешь, кроме как через EVA и там таки да, частые выборки. У нас тут вообще свойства чего угодно через eva и таки да, тоже частые выборки. И куда тогда этот eva можно без страха засунуть?


Для магазина с товарами, для хранения каталога товаров и поиска по нему, возможно имеет смысл посмотреть в сторону NoSQL.
Т.к. как сказано здесь, структура каталога товаров может меняться чуть ли не каждый день.

А вот уже для корзины и оформления заказа возможно нужен SQL, т.к. транзакции.

Так в MongoDB есть транзакции, в RavenDB есть транзакции.
Вот только знаний по NoSQL у многих нет.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39904478
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
А вот уже для корзины и оформления заказа возможно нужен SQL, т.к. транзакции.

Ну, а там eva не нужен.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39904761
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crutchmaster
mad_nazgul
А вот уже для корзины и оформления заказа возможно нужен SQL, т.к. транзакции.

Ну, а там eva не нужен.


Об этом и речь ;-)
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39904814
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul
crutchmaster
пропущено...

Ну, а там eva не нужен.


Об этом и речь ;-)

да, да... лямбда-архитектура, микросервисы... у каждого своя БД...
у микросервиса каталога продуктов NoSQL, у микросервиса корзины и микросервиса оформления заказа SQL
общение между ними через очереди

...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39904838
Daniel Logovenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skyANA
mad_nazgul
пропущено...
Об этом и речь ;-)

да, да... лямбда-архитектура, микросервисы... у каждого своя БД...
у микросервиса каталога продуктов NoSQL, у микросервиса корзины и микросервиса оформления заказа SQL
общение между ними через очереди

И всё это заставить согласованно вместе работать удаётся???
Накладными расходами ресурсы вычислительные немерено пожираются, я думаю.
Подтверждаете?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39904911
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Daniel Logovenko
skyANA
пропущено...

да, да... лямбда-архитектура, микросервисы... у каждого своя БД...
у микросервиса каталога продуктов NoSQL, у микросервиса корзины и микросервиса оформления заказа SQL
общение между ними через очереди

И всё это заставить согласованно вместе работать удаётся???
Да, конечно.
Daniel Logovenko
Накладными расходами ресурсы вычислительные немерено пожираются, я думаю.
Подтверждаете?
Не понял фразы "Накладными расходами ресурсы вычислительные немерено пожираются".
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905007
Daniel Logovenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skyANA
Daniel Logovenko
Накладными расходами ресурсы вычислительные немерено пожираются, я думаю.
Подтверждаете?
Не понял фразы "Накладными расходами ресурсы вычислительные немерено пожираются".

skyANA"лямбда-архитектура, микросервисы...
у каждого своя БД...
у микросервиса каталога продуктов NoSQL,
у микросервиса корзины и микросервиса оформления заказа SQL
общение между ними через очереди"Итого минимум две базы и одна очередь имеются.
Они между собой взаимодействуют способами множественными.

На это множественное взаимодействие ресурсы вычислительные тратятся?
Тратятся.
Это накладные расходы и есть.
накладные расходы
автор Накладные расходы – это дополнительные затраты, не относящиеся напрямую к основному производству ,
не входящие в оплату труда основного персонала и в стоимость сырья.
Для предприятия такие затраты важны не меньше, чем прямые расходы,
поскольку позволяют обеспечить работу всего предприятия.

В классических (старомодных) системах такого множественного взаимодействия нет?
Нет.

Поэтому предполагаю, что в новомодной архитектуре накладные расходы выше и ресурсов больше пожирают.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905019
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA
mad_nazgul
пропущено...


Об этом и речь ;-)

да, да... лямбда-архитектура, микросервисы... у каждого своя БД...
у микросервиса каталога продуктов NoSQL, у микросервиса корзины и микросервиса оформления заказа SQL
общение между ними через очереди


а какая нагрузка там?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905189
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Daniel Logovenko
И всё это заставить согласованно вместе работать удаётся???

YouTube Video
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905190
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Daniel Logovenko
Поэтому предполагаю, что в новомодной архитектуре накладные расходы выше и ресурсов больше пожирают.

Это понимают и делают так, чтобы сообщений дико много не гонялось. Плюс это все компенсируется с головой возможностями масштабирования.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905430
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
skyANA
пропущено...

да, да... лямбда-архитектура, микросервисы... у каждого своя БД...
у микросервиса каталога продуктов NoSQL, у микросервиса корзины и микросервиса оформления заказа SQL
общение между ними через очереди


а какая нагрузка там?

Где там?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905433
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Daniel Logovenko
skyANA
пропущено...
Не понял фразы "Накладными расходами ресурсы вычислительные немерено пожираются".

skyANA"лямбда-архитектура, микросервисы...
у каждого своя БД...
у микросервиса каталога продуктов NoSQL,
у микросервиса корзины и микросервиса оформления заказа SQL
общение между ними через очереди"
Итого минимум две базы и одна очередь имеются.
Они между собой взаимодействуют способами множественными.

На это множественное взаимодействие ресурсы вычислительные тратятся?
Тратятся.
Это накладные расходы и есть.
накладные расходы
автор Накладные расходы – это дополнительные затраты, не относящиеся напрямую к основному производству ,
не входящие в оплату труда основного персонала и в стоимость сырья.
Для предприятия такие затраты важны не меньше, чем прямые расходы,
поскольку позволяют обеспечить работу всего предприятия.

В классических (старомодных) системах такого множественного взаимодействия нет?
Нет.

Поэтому предполагаю, что в новомодной архитектуре накладные расходы выше и ресурсов больше пожирают.
Предлагаю тупо измерить. Благо в "новомодной архитектуре" мониторинг настроен :)
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905463
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Я что-то слышал про 20%, но тут всё зависит от задач. В моём случае база будет работать подавляющую долю времени, так что нет смысла что-то там измерять.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905486
Daniel Logovenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skyANA
Daniel Logovenko
пропущено...

пропущено...
Итого минимум две базы и одна очередь имеются.
Они между собой взаимодействуют способами множественными.

На это множественное взаимодействие ресурсы вычислительные тратятся?
Тратятся.
Это накладные расходы и есть.
накладные расходы
пропущено...

В классических (старомодных) системах такого множественного взаимодействия нет?
Нет.

Поэтому предполагаю, что в новомодной архитектуре накладные расходы выше и ресурсов больше пожирают.

Предлагаю тупо измерить. Благо в "новомодной архитектуре" мониторинг настроен :)
Давайте!
Потом расскажите, что "тупые измерения" вам показали! :)
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905669
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA
полудух
пропущено...

а какая нагрузка там?

Где там?

там где потребовалось делать по микросервису на каждый чих
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905702
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
skyANA
пропущено...

Где там?

там где потребовалось делать по микросервису на каждый чих

По микросервису на каждый чих у Амазона
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905709
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Daniel Logovenko
skyANA
пропущено...

Предлагаю тупо измерить. Благо в "новомодной архитектуре" мониторинг настроен :)
Давайте!
Потом расскажите, что "тупые измерения" вам показали! :)

Вы напишите в чем вы пожирание ресурсов измеряете и накладные расходы. А то метрик много, долго рассказывать, что они показывают :)
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905723
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA
полудух
пропущено...

там где потребовалось делать по микросервису на каждый чих

По микросервису на каждый чих у Амазона

и у вас
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39905727
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
skyANA
пропущено...

По микросервису на каждый чих у Амазона

и у вас

У нас пока нет
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39906941
Daniel Logovenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
skyANA
Daniel Logovenko
пропущено...
Давайте!
Потом расскажите, что "тупые измерения" вам показали! :)

Вы напишите в чем вы пожирание ресурсов измеряете и накладные расходы. А то метрик много, долго рассказывать, что они показывают :)
Временем использования процессора и объемом использования оперативной памяти измеряйте.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39907761
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Daniel Logovenko
skyANA
пропущено...

Вы напишите в чем вы пожирание ресурсов измеряете и накладные расходы. А то метрик много, долго рассказывать, что они показывают :)
Временем использования процессора и объемом использования оперативной памяти измеряйте.

Хорошо.

Тупые измерения показывают, что всем сервисам хватает и процессора и памяти, и при этом не требуется тратиться на топовое железо.
Также легко оптимизировать данные затраты, тупо наблюдая статистику.

А когда всё крутится на одном большом серваке в виде монолита, то бывает сложно разобрать какая часть системы отъедает процессор и память и тем самым мешает работе остальных.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39907766
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Daniel Logovenko
Временем использования процессора и объемом использования оперативной памяти измеряйте.

Там можно раскидать сервисы хоть по тачкам бухов, которые и так 99% времени простаивают. Или по телефонам. Оверхед даже в 50% не критичен, потому что система легко масштабируется хоть на подкроватные сервера.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39907875
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а потом, чтобы вывести плёвый виджет с инфой, надо будет пробежать по десятку серверов по сети ...
наоптимизировали
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908037
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
а потом, чтобы вывести плёвый виджет с инфой, надо будет пробежать по десятку серверов по сети ...
наоптимизировали

И где вы такое видели?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908038
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA
у микросервиса каталога продуктов NoSQL, у микросервиса корзины и микросервиса оформления заказа SQL

В какой момент и зачем возникает необходимость бегать по десятку серверов?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908040
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
научись читать уже:
crutchmaster
Daniel Logovenko
Временем использования процессора и объемом использования оперативной памяти измеряйте.

Там можно раскидать сервисы хоть по тачкам бухов, которые и так 99% времени простаивают. Или по телефонам. Оверхед даже в 50% не критичен, потому что система легко масштабируется хоть на подкроватные сервера.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908042
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух,

а, мы тут сферически системы в вакууме обсуждаем, понятно

в реальности вы видели, чтобы сервисы раскидывали по тачкам бухов и чтобы собрать плёвый виджет с инфой, по ним надо пробежаться?

бред же
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908043
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
читать мало уметь, надо ещё головой думать :)
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908048
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот кстати такое явление, как корпоративный портал, интегрирующий в себе данные из различных систем предприятия - это тоже новомодная архитектура с накладными расходами, пожирающая ресурсы?

следует всё необходимое реализовать в одной системе, верно? :)
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908074
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а это что, сильно чем-то отличается?
skyANA
mad_nazgul
Об этом и речь ;-)

да, да... лямбда-архитектура, микросервисы... у каждого своя БД...
у микросервиса каталога продуктов NoSQL, у микросервиса корзины и микросервиса оформления заказа SQL
общение между ними через очереди


те же яйца, только в профиль...
но владелец утверждает, что это не зоопарк:
skyANA
У нас пока нет

...хотя даже про нагрузку рассказывать не хочет
(походу засмеют)
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908075
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух,

ты даже не понял, что это был стёб :)

мало уметь читать, надо ещё головой думать...
а это не так-то просто, когда хочется съязвить и перейти на личности, верно?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908076
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
...хотя даже про нагрузку рассказывать не хочет
(походу засмеют)

смейся на здоровье, за последние три месяца нагрузка на веб морду системы следующая:
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908098
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и опять же ты сам себя посадил в лужу
Дмитрий Мух
а, мы тут сферически системы в вакууме обсуждаем, понятно
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908099
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий Мух
смейся на здоровье, за последние три месяца нагрузка на веб морду системы следующая:

вот так и напиши в следующий раз, когда тебя спросили о нагрузке, а не воду лей.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908150
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
Дмитрий Мух
смейся на здоровье, за последние три месяца нагрузка на веб морду системы следующая:

вот так и напиши в следующий раз, когда тебя спросили о нагрузке, а не воду лей.

а смысл? вот ты теперь знаешь о нагрузке, и что? где хоть какое-то мнение?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908152
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух,

и где вода?
ты спросил: "а какая нагрузка там?"

там? где там? за сараем?

спроси нормально
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908221
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий Мух
полудухвот так и напиши в следующий раз, когда тебя спросили о нагрузке, а не воду лей.
а смысл? вот ты теперь знаешь о нагрузке, и что? где хоть какое-то мнение?
Так ежели ты там "пошутил", то к чему эта "нагрузка"?
Да и не нагрузка это... 9000 rpm это что за попугаи, requests per minute? гы.
И уж конечно, если бы тот описанный (в шутку) зоопарк оказался бы истиной, это действительно выглядело бы смешно.
Да, я мимо проходил, не вникал в тонкости местных сарказмов (забыл с кем говорю).
Но под соответствующую нагрузку и такие решения действительно находят своё место в миру.
Дмитрий Мух
там? где там? за сараем?

спроси нормально

Мне сложно придумать, что непонятно "где там" в вопросе сразу после цитаты:
skyANA
да, да... лямбда-архитектура, микросервисы... у каждого своя БД...
у микросервиса каталога продуктов NoSQL, у микросервиса корзины и микросервиса оформления заказа SQL
общение между ними через очереди

вот ТАМ ^^ где каталоги и корзины (которых нет, как оказалось)
как ещё "нормальней" спросить, схему надо было нарисовать?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908235
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух,

ты не обязан понимать мой сарказм, верно?
а я не обязан понимать что такое ТАМ в твоём вопросе

mad_nazgul не в первом топике упоминает лмбда-архитектуру и микросервисы
и я его решил этим подколоть

ты этого не понял, и не обязан, и я не ожидаю этого от тебя
но ты встрял и ожидаешь чего-то от меня

чего? о чём конкретно хочешь поговорить? про нагрузку? у вас какая?
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908246
Фотография crutchmaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
а потом, чтобы вывести плёвый виджет с инфой, надо будет пробежать по десятку серверов по сети ...

Допустим, и что? Через любой брокер сообщений это делается тривиально. Твой виджит говорит: "мне надо такие-то данные вот сюда, живо!", ему скидывают. Нагрузка распределяется по куче тачек. Горизонтальная масштабируемость - сколько угодно. Резервная избыточность - сколько угодно.
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908387
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
crutchmaster
полудух
а потом, чтобы вывести плёвый виджет с инфой, надо будет пробежать по десятку серверов по сети ...

Допустим, и что? Через любой брокер сообщений это делается тривиально. Твой виджит говорит: "мне надо такие-то данные вот сюда, живо!", ему скидывают. Нагрузка распределяется по куче тачек. Горизонтальная масштабируемость - сколько угодно. Резервная избыточность - сколько угодно.

ты не забывай, что "микросервису оформления заказа" нужны сначала данные от "микросервиса корзины"...
т.е. не такая уж и горизонтальная там нагрузка, а всё-таки немножко и "зависимая друг от друга"
и всем им нужны общие данные от "микросервиса с данными юзеров" и прочие
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908388
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий Мух
ты не обязан понимать мой сарказм, верно?
а я не обязан понимать что такое ТАМ в твоём вопросе

блин во что ты форум превратил
зачем вся эта вода тут
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908403
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
Дмитрий Мух
ты не обязан понимать мой сарказм, верно?
а я не обязан понимать что такое ТАМ в твоём вопросе

блин во что ты форум превратил
зачем вся эта вода тут

напиши, что конкретно хотелось бы обсудить - обсудим без воды
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908516
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да вон обсуждаем архитектуру микросервисов с crutchmaster
предметно, без воды
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908517
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а с тобой у нас из простого вопроса получилась целая "дискуссия" ни о чём...
...
Рейтинг: 0 / 0
Использование таблицы для хранения атрибутов сущности по принципу Key-Value
    #39908557
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух
а с тобой у нас из простого вопроса получилась целая "дискуссия" ни о чём...

я в этом виноват что-ли?
к чему ты вообще решил узнать, какая у нас нагрузка, не зная архитектуры

к примеру помимо веб морды у нас ещё 25 приложений, и на них тоже идёт нагрузка, хоть и меньшая
и вот мы типа берём и разворачиваем всё в одном месте

случится какая-то экономия ресурсов, снижение накладных расходов?
нет конечно... случится куча проблем
...
Рейтинг: 0 / 0
75 сообщений из 75, показаны все 3 страниц
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Использование таблицы для хранения атрибутов сущности по принципу Key-Value
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]