Size: a a a

SqlCom.ru - Стиль жизни SQL

2021 January 25

S

Sergey in SqlCom.ru - Стиль жизни SQL
Ilia Zviagin
Чем тебе JOIN ы так не нравятся?
Потому что будет одна таблица фактов и 50+ join ов
источник

S

Sergey in SqlCom.ru - Стиль жизни SQL
Сколько этот запрос выполняться будет, с учётом того что и сервера не самые сильные
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Sergey
Потому что будет одна таблица фактов и 50+ join ов
И?
(не , как будто что-то плохое, ей Коду)
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Sergey
Сколько этот запрос выполняться будет, с учётом того что и сервера не самые сильные
Это сложный вопрос, я тебе не отвечу на него, до тех пор пока не увижу структуру БД и запрос.
источник

O

Oleg T in SqlCom.ru - Стиль жизни SQL
Sergey
Сколько этот запрос выполняться будет, с учётом того что и сервера не самые сильные
нормализация приводит к уменьшению объема хранения, а значит читать обычно придется  меньше. диск - самый медленный компонент ЭВМ. денормализованная схема в виде плоской таблицы будет работать быстрее только если у тебя много памяти и данные с жатом виде, например columnstore index. Если они просто лежат кучей, то из нормализованной таблицы они почти наверняка с 50 джойнами быстрее вылетят чисто за счёт IO при наличии индексов на ключах соединения.
источник

IZ

Ilia Zviagin in SqlCom.ru - Стиль жизни SQL
Oleg T
нормализация приводит к уменьшению объема хранения, а значит читать обычно придется  меньше. диск - самый медленный компонент ЭВМ. денормализованная схема в виде плоской таблицы будет работать быстрее только если у тебя много памяти и данные с жатом виде, например columnstore index. Если они просто лежат кучей, то из нормализованной таблицы они почти наверняка с 50 джойнами быстрее вылетят чисто за счёт IO при наличии индексов на ключах соединения.
Очень +
источник

YS

Yaroslav Schekin in SqlCom.ru - Стиль жизни SQL
Oleg T
Даже в postgresql наследование это весьма сомнительная фича для таблиц крупных размеров, как были у нас. яб не парился, если бы пришлось сканировать таблицы в 1000 записей каждая, но там было существенно больше.
И даже там оно для этого уже не используется. ;) И к использованию в принципе не рекомендуется.
Вообще, "встроенное" наследование и все эти "object-relational databases", по-моему, "провалились" на практике.
источник

O

Oleg T in SqlCom.ru - Стиль жизни SQL
Yaroslav Schekin
И даже там оно для этого уже не используется. ;) И к использованию в принципе не рекомендуется.
Вообще, "встроенное" наследование и все эти "object-relational databases", по-моему, "провалились" на практике.
Я не эксперт в postgresql, но когда прочитал документацию по этой теме, то у меня возникло ощущение, что это очень ненадёжная и нишевая штука, хотя сама идея безусловно хорошая. Я её тогда назвал "диагональным секционированием"
источник

S

Sergey in SqlCom.ru - Стиль жизни SQL
Oleg T
нормализация приводит к уменьшению объема хранения, а значит читать обычно придется  меньше. диск - самый медленный компонент ЭВМ. денормализованная схема в виде плоской таблицы будет работать быстрее только если у тебя много памяти и данные с жатом виде, например columnstore index. Если они просто лежат кучей, то из нормализованной таблицы они почти наверняка с 50 джойнами быстрее вылетят чисто за счёт IO при наличии индексов на ключах соединения.
Я и не спорю с этим. Вы правы, но то же какой-то гемор получается. Сначала все нормализовывать, потом заливать в базу, потом обратно денормализовывать и выдавать этот набор пользователям.
источник

O

Oleg T in SqlCom.ru - Стиль жизни SQL
Sergey
Я и не спорю с этим. Вы правы, но то же какой-то гемор получается. Сначала все нормализовывать, потом заливать в базу, потом обратно денормализовывать и выдавать этот набор пользователям.
Если это нормальный DWH, то у вас должно быть еще куча вещей, которые вы делаете над этими данными. Например в измерениях нужна денормализация дат, извлечение кварталов, месяцев, выходных\рабочих дней, праздников и т.п. Без этого DWH будет плохо себя показывать
источник

O

Oleg T in SqlCom.ru - Стиль жизни SQL
Так что это не такая уж большая проблема. один раз запрограммировать извлечение данных.
источник

O

Oleg T in SqlCom.ru - Стиль жизни SQL
и написать одну вьюху
источник

YS

Yaroslav Schekin in SqlCom.ru - Стиль жизни SQL
Oleg T
Я не эксперт в postgresql, но когда прочитал документацию по этой теме, то у меня возникло ощущение, что это очень ненадёжная и нишевая штука, хотя сама идея безусловно хорошая. Я её тогда назвал "диагональным секционированием"
Да что в ней "безусловно хорошего"? ;)
Т.е. это вызывает ощущение "ну да, любопытная возможность...".
Но когда доходит до вопроса "как бы это применить на практике?", как-то мысль останавливается.
Хотя, наверное, это off topic.
источник

O

Oleg T in SqlCom.ru - Стиль жизни SQL
Yaroslav Schekin
Да что в ней "безусловно хорошего"? ;)
Т.е. это вызывает ощущение "ну да, любопытная возможность...".
Но когда доходит до вопроса "как бы это применить на практике?", как-то мысль останавливается.
Хотя, наверное, это off topic.
Ну... я бы применил как раз к моему случаю CMDB, но перф конечно удручает.
источник

S

Sergey in SqlCom.ru - Стиль жизни SQL
Oleg T
Так что это не такая уж большая проблема. один раз запрограммировать извлечение данных.
Возможно вы правы. Но разбирать по справочникам таблицу в 250+ столбцов, такое себе занятие
источник

O

Oleg T in SqlCom.ru - Стиль жизни SQL
Sergey
Возможно вы правы. Но разбирать по справочникам таблицу в 250+ столбцов, такое себе занятие
а зачем вам эту таблицу дают, если её можно конечному потребителю отдать как есть 😊 простите, если чего не понял
источник

DI

Dmitriy Ivanov in SqlCom.ru - Стиль жизни SQL
Коллеги у меня вопрос.
Какой уровень изоляции выбирается для запросов на вторичной реплике в AO?
Если перефразировать, то:
Я открываю ssms и делаю select с базы которая была реплицированна с другого сервера. Какие блокировки и на каком уровне я буду накладывать?
источник

YS

Yaroslav Schekin in SqlCom.ru - Стиль жизни SQL
Oleg T
Ну... я бы применил как раз к моему случаю CMDB, но перф конечно удручает.
А зачем конкретно это в CMDB? И там не в "перф" дело, по идее — это вопрос возможностей и ограничений, скорее всего.
источник

O

Oleg T in SqlCom.ru - Стиль жизни SQL
Dmitriy Ivanov
Коллеги у меня вопрос.
Какой уровень изоляции выбирается для запросов на вторичной реплике в AO?
Если перефразировать, то:
Я открываю ssms и делаю select с базы которая была реплицированна с другого сервера. Какие блокировки и на каком уровне я буду накладывать?
SNAPSHOT вроде по доке. накладываешь SCHEMA_STABILITY
источник

DI

Dmitriy Ivanov in SqlCom.ru - Стиль жизни SQL
Oleg T
SNAPSHOT вроде по доке. накладываешь SCHEMA_STABILITY
Вот я также думал. Но что будет когда я включу rcsi на первичной реплике?
источник