powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как происходит удаление в огромной таблице?
18 сообщений из 18, страница 1 из 1
Как происходит удаление в огромной таблице?
    #39600528
дампер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Запустил удаление в таблицы, примерно 50% от объема всей БД.

Но такое впечатление что ничего не происходит
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600529
дампер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DBCC SQLPERF(LOGSPACE);

Сначала показывал что лог растет и % его использования.

Сейчас рост остановился.



Удаление еще не выполнелось. Висит уже очень давно.
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600531
дампер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Свободное место в БД сначала тоже росло, сейчас свободное место не меняется уже минут 20.


К БД подключен 1 пользоватлель - я.
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600533
дампер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
блокировки отсутствуют.
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600534
дампер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сессия удаления висит в SUSPENDED
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600540
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дамперСессия удаления висит в SUSPENDED
ну раз в ,suspended значит ждет.
смотрите, что именно ждет: sys.dm_os_waiting_tasks
но наверное, лог растет, а ждете зануление лога.

50% проще перелить с мининальным логированием,
удаление же всегда логируется полно
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600542
дампер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123дамперСессия удаления висит в SUSPENDED
ну раз в ,suspended значит ждет.
смотрите, что именно ждет: sys.dm_os_waiting_tasks
но наверное, лог растет, а ждете зануление лога.

50% проще перелить с мининальным логированием,
удаление же всегда логируется полно


Тоже думаю уже перезалить (((



Ждет вот что:

PAGEIOLATCH_SH
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600546
дампер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123,

Если тут ничео не выводит

Код: sql
1.
2.
SELECT * FROM sys.sql_expression_dependencies
WHERE referencing_id = OBJECT_ID(N'my_big_table'); 



Получается что зависимостей у теблицы нет и если из нее удалять - из других таблиц по внешним ключам не удаляется?
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600549
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дамперЖдет вот что:

PAGEIOLATCH_SH
учитался значит
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600551
дампер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123дамперЖдет вот что:

PAGEIOLATCH_SH
учитался значит

Не понял

Диск слабый, инфа 100%
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600554
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дамперПолучается что зависимостей у теблицы нет и если из нее удалять - из других таблиц по внешним ключам не удаляется?
в плане можно посмотреть,
только эта таблица или еще что-то
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600561
дампер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123дамперПолучается что зависимостей у теблицы нет и если из нее удалять - из других таблиц по внешним ключам не удаляется?
в плане можно посмотреть,
только эта таблица или еще что-то

Хорошая идея.

Но пока удаление идет не дает удалить даже одну строчку и даже в другом диапазоне (
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600566
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
зачем еще что-то удалять,
когда надо всего лишь глянуть план?
---
учитался = много с диска читает, ожидания на чтении и диска
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600568
дампер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123зачем еще что-то удалять,
когда надо всего лишь глянуть план?
---
учитался = много с диска читает, ожидания на чтении и диска


Отменил запрос.

Затем кильнул сессию.


Пока блокировка висит.

Жду ролбэка. Чтобы 1 строчку удалить. И план глянуть.
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600573
Фотография Yasha123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дамперYasha123зачем еще что-то удалять,
когда надо всего лишь глянуть план?
---
учитался = много с диска читает, ожидания на чтении и диска


Отменил запрос.

Затем кильнул сессию.


Пока блокировка висит.

Жду ролбэка. Чтобы 1 строчку удалить. И план глянуть.
заставь *** богу молиться, он лоб расшибет
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600578
дампер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Yasha123дамперпропущено...



Отменил запрос.

Затем кильнул сессию.


Пока блокировка висит.

Жду ролбэка. Чтобы 1 строчку удалить. И план глянуть.
заставь *** богу молиться, он лоб расшибет


АХАХАХХААХАХАХАХАХАХА!!! жжешь.
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600600
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дампер, удаляйте порциями по 1-3 млн записей, иначе наступите на конкуренцию за диск между сбросом буфера на диск и чтениями.
...
Рейтинг: 0 / 0
Как происходит удаление в огромной таблице?
    #39600603
Тяп-ляп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот тебе скрипт посмотреть план:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
/*
запросы,  СЕЙЧАС выполняющиеся. План - крайняя колонка слева.
*/
SELECT
	 p.query_plan
	, req.command command_type
	, sqltext.TEXT command_text
	, SUBSTRING(sqltext.text,  (req.statement_start_offset/2) + 1,
        ((CASE req.statement_end_offset
          WHEN -1 THEN DATALENGTH(sqltext.text)
         ELSE req.statement_end_offset
         END - req.statement_start_offset)/2) + 1) AS statement_text
	, db_name(req.database_id) db_name
	, req.session_id
	, req.blocking_session_id
	, req.status as req_status
	, req.cpu_time req_cpu_time_ms
	, ses.cpu_time ses_cpu_time_ms
	, req.total_elapsed_time / 1000.0 AS req_elapsed_sec
	, ses.original_login_name
	, ses.host_name
	, ses.program_name
	, ses.host_process_id
	, ses.client_interface_name
	, ses.memory_usage
	, ses.reads
	, ses.writes
	, ses.logical_reads
FROM sys.dm_exec_requests AS req with(nolock)
   JOIN sys.dm_exec_sessions AS ses with(nolock) on req.session_id = ses.session_id
   CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS sqltext 
   CROSS APPLY	sys.dm_exec_query_plan(req.plan_handle) AS p
WHERE 1 = 1
   and req.database_id > 4
   and req.session_id <> @@SPID
   -- AND req.session_id = 78                   -- задать SPID
   -- AND ses.[host_name] = 'SRV-01'            -- задать хост
ORDER BY req.total_elapsed_time DESC
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как происходит удаление в огромной таблице?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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