powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / лог файл и вычисляемый стобец
16 сообщений из 16, страница 1 из 1
лог файл и вычисляемый стобец
    #40069841
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как можно хотя бы приблизительно прикинуть какого размера потребуется лог файл, чтобы создать вычислямый столбец (PERSISTED), если известно из каких стобцов он будет состоять?

К примеру, имеется таблица с 4мя стобцами, размер 7Гб. Вычислямый стобец будет состоять из всех 4х.
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069843
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То, что он "вычисляемый" - никакой рояли не играет, равно как и на базе чего он там вычисляется.

Требуется ровно стока же, сколько для создания простого столбца с дефолтным значением размером ~средняя длина вычисляемого.
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069866
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleks222
То, что он "вычисляемый" - никакой рояли не играет, равно как и на базе чего он там вычисляется.

Требуется ровно стока же, сколько для создания простого столбца с дефолтным значением размером ~средняя длина вычисляемого.
т.е. хотите сказать, что в моем примере понадобится 14Гб?
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069868
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleks222
Требуется ровно стока же, сколько для создания простого столбца с дефолтным значением размером ~средняя длина вычисляемого.


Начиная с 2017 (или 2016), добавление поля с дефолтом - это операция над метаданными. В лог и в данные записи практически нет.


Idol_111
Как можно хотя бы приблизительно прикинуть какого размера потребуется лог файл, чтобы создать вычислямый столбец (PERSISTED), если известно из каких стобцов он будет состоять?

К примеру, имеется таблица с 4мя стобцами, размер 7Гб. Вычислямый стобец будет состоять из всех 4х.


При добавлении вычисляемого PERSISTED поля, в лог должно записывать
1. Значение этого конкретного поля (в redo секцию)
2. Метаинформация (всякие lsn и прочее)
3. В undo секцию, по идее, ничего писаться не должно.
4. Еще в логе должно быть выделено место под undo операцию, но с учетом пустой undo секции, оно не должно занимать много места.

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

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

А я рискнул и запил прямо на продакшн :).
Никогда не догадаетесь сколько лог занял.
отгадка160Гб
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069887
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idol_111
msLex,

А я рискнул и запил прямо на продакшн :).
Никогда не догадаетесь сколько лог занял.
отгадка160Гб


надо полагать, на проде, кроме вашего добавления, крутились и другие процессы.
пока не закончилась ваша операция добавления столбца, в логе хранились данные всех операция, выполненных после старта вашего alter.
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069890
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
msLex,

Вы обо мне совсем плохо думаете :).
Я бы не рискнул на такие фокусы, если бы прод был реально активен.
Ничего кроме этого процесса не работало. И кстати, БД в Simple, хотя тут это значение мало имеет.
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069893
msLex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idol_111
msLex,

Вы обо мне совсем плохо думаете :).
Я бы не рискнул на такие фокусы, если бы прод был реально активен.
Ничего кроме этого процесса не работало. И кстати, БД в Simple, хотя тут это значение мало имеет.


верится с трудом


сделайте репро на меньшем объеме и посмотрите, что же у вас там в логе
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069901
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
msLex,

Вот и я офигел. Однако, это факт.
Похоже пора мне обновить знания о логах.

И возможно поиграть на тесте с меньшим количеством, как Вы вначале и предлагали. Просто ради спортивного интереса.
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069925
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idol_111,

160 Гб потребовалось для добавления столбца или лог просто на столько вырос?
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069932
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
invm
Idol_111,

160 Гб потребовалось для добавления столбца или лог просто на столько вырос?

лог вырос на 160Гб.
столбец занял 9Гб (если правильно помню).
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069933
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idol_111,

Ну так вырос != потребовалось
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069938
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
invm
Idol_111,

Ну так вырос != потребовалось

Странная логика.
Один процесс - лог пустой - затем вырос и заполнен на 100%. И это называется не потребовалось?
И что это по Вашему. Мне даже стал интересен полет вашей фантазии :).
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069939
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idol_111
invm
Idol_111,

Ну так вырос != потребовалось

Странная логика.
Один процесс - лог пустой - затем вырос и заполнен на 100%. И это называется не потребовалось?
И что это по Вашему. Мне даже стал интересен полет вашей фантазии :).
Например, автоприращение 160 Гб.
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069941
Idol_111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич
Idol_111
пропущено...

Странная логика.
Один процесс - лог пустой - затем вырос и заполнен на 100%. И это называется не потребовалось?
И что это по Вашему. Мне даже стал интересен полет вашей фантазии :).
Например, автоприращение 160 Гб.

хорошая версия :).
Но лог все равно заполнен на 100%.
А приращение у меня всего 100Мб.
...
Рейтинг: 0 / 0
лог файл и вычисляемый стобец
    #40069944
invm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Idol_111,

Насколько вырастет лог зависит от размера его приращения.
Чтобы узнать сколько же потребовалось места в ЖТ для добавления столбца, нужно сделать примерно так
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
begin tran;

alter table MyTable add MyColumn as ... persisted;

select
 dt.database_transaction_log_record_count,
 dt.database_transaction_log_bytes_used,
 dt.database_transaction_log_bytes_reserved,
 dt.database_transaction_log_bytes_used_system,
 dt.database_transaction_log_bytes_reserved_system
from
 sys.dm_tran_current_transaction ct join
 sys.dm_tran_database_transactions dt on dt.transaction_id = ct.transaction_id
where
 dt.database_id = db_id();

commit;
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / лог файл и вычисляемый стобец
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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