Кто-то использовал в продакшене темпоральные таблицы (system-versioned temporal tables). Можно использовать?
Что у них с производительностью? Какие подводные камни?
Здравствуйте, BlackEric, Вы писали:
BE>Кто-то использовал в продакшене темпоральные таблицы (system-versioned temporal tables). Можно использовать? BE>Что у них с производительностью? Какие подводные камни?
на проде не доводилось, но смотрел планы на примере.
По сути работает так же, как создать historytable руками и триггеры на создание\изменение\удаление. Вероятнее всего под капотом именно так и делается.
При запросе исторически данных выполняется join на этот самый historytable
Здравствуйте, BlackEric, Вы писали:
BE>Кто-то использовал в продакшене темпоральные таблицы (system-versioned temporal tables). Можно использовать? BE>Что у них с производительностью? Какие подводные камни?
Насколько я помню, в них одна большая проблема: своё время не вставить, всегда вставляется текущее.
Поэтому для моих потребностей, например, они не подошли.
Здравствуйте, vmpire, Вы писали:
V>Здравствуйте, BlackEric, Вы писали:
BE>>Кто-то использовал в продакшене темпоральные таблицы (system-versioned temporal tables). Можно использовать? BE>>Что у них с производительностью? Какие подводные камни? V>Насколько я помню, в них одна большая проблема: своё время не вставить, всегда вставляется текущее. V>Поэтому для моих потребностей, например, они не подошли.
Это да, но для нас не критично. Меня больше волнует производительность этой конструкции на нагруженной бд.
Здравствуйте, BlackEric, Вы писали:
BE>Кто-то использовал в продакшене темпоральные таблицы (system-versioned temporal tables). Можно использовать? BE>Что у них с производительностью? Какие подводные камни?
Я не использовал в реализации MSSQL.
После беглого чтения доки хочу обратить внимание на свойство immutable history. Период действия записей устанавливается системой, используется только системное время, у тебя нет над ним контроля. Это может быть как плюсом, так и минусом, в зависимости от сценария использования.
BE>Кто-то использовал в продакшене темпоральные таблицы (system-versioned temporal tables). Можно использовать? BE>Что у них с производительностью? Какие подводные камни?
на mysql через год тормозили select запросы катастрофически, при этом таблички размером всего в пару гб.
BE>>Кто-то использовал в продакшене темпоральные таблицы (system-versioned temporal tables). Можно использовать? BE>>Что у них с производительностью? Какие подводные камни?
Gt_>на mysql через год тормозили select запросы катастрофически, при этом таблички размером всего в пару гб.
Вот и я за скорость боюсь. Вы после этого отключили? Или как решали?
Здравствуйте, BlackEric, Вы писали:
BE>Вот и я за скорость боюсь. Вы после этого отключили? Или как решали?
Эта фича не гарантирует "скорость", только немного переписывает запросы, своего рода синтаксический сахар. Ответственности за производительность с админов и разработчиков не снимает.
BE>>>Кто-то использовал в продакшене темпоральные таблицы (system-versioned temporal tables). Можно использовать? BE>>>Что у них с производительностью? Какие подводные камни?
Gt_>>на mysql через год тормозили select запросы катастрофически, при этом таблички размером всего в пару гб.
BE>Вот и я за скорость боюсь. Вы после этого отключили? Или как решали?
да, отключил и навернул микро dwh для powerbi отчетиков. благо халтурка небольшая еще. из темпоральных powerbi просто перестал успевать выкачивать данные, так тормозило.