Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
После активации TDE существенно выросла загрузка процессора на зеркале.
Более того, процесор зеркала загружен в 3 раза выше, чем на основном сервере.
Доп. задачи на зеркале не выполняются.

Чем это может быть вызвано?

SQL: 2008R2, SP3
Зеркалирование синхронное, без шифрования

Флаг disable database mirroring log compression:
DBCC TRACESTATUS(1462)   --  >>  0
2 окт 19, 13:29    [21984832]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
Alexander Us,

Вот, появилось объяснение происходящему.

Одно не понятно, почему загрузка CPU на зеркале в разы выше.

Цитата:

TDE
Since we’re on the topic of encryption here’s a thought on database mirroring and Transparent Data Encryption (TDE). It can be done, no doubt, but be careful combining these two features. In the real world, to stay on budget, it’s pretty common for the DR partner in a high performance mirror session to be somewhat under provisioned – i.e. less CPU, less RAM, slower disk, etc. Remember that TDE data is decrypted when it is read off the disk, and encrypted when written to the disk. Decrypt\encrypt operations may not be a problem for a well provisioned production server, but the DR partner server might be struggling as the mirror session is continuously streaming transaction log records on to disk and all those writes must be encrypted via CPU cycles. Even more so if the DR partner is not the same caliber hardware as the production server. Test the workload before implementation and keep an eye on the CPU use to be sure the DR partner can handle the extra encryption work.
11 окт 19, 14:12    [21992159]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7746
Alexander Us,

Вы же на писали - "без шифрования".
11 окт 19, 14:24    [21992170]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
Владислав Колосов,

Конфигурация конечной точки для зеркалирования - без шифрования.
База зашифрована TDE.
11 окт 19, 14:29    [21992178]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
Что уж совсем непонятно:

эта же база учавствует в log shipping.
Загрузка процессора на сервере получателе в разы меньше, чем на зеркале.
11 окт 19, 14:32    [21992183]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2394
Alexander Us,

какие запросы нагружают процессор?
11 окт 19, 14:55    [21992205]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2394
Alexander Us,

SELECT TOP 10
[Average CPU used] = total_worker_time / qs.execution_count,
[Total CPU used] = total_worker_time,
[Execution count] = qs.execution_count,
[Individual Query] = SUBSTRING(qt.text,qs.statement_start_offset/2,
(CASE
WHEN qs.statement_end_offset = -1 THEN LEN(CONVERT(NVARCHAR(MAX), qt.text)) * 2
ELSE qs.statement_end_offset
END - qs.statement_start_offset)/2),
[Parent Query] = qt.text,
[DatabaseName] = DB_NAME(qt.dbid)
FROM sys.dm_exec_query_stats qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) as qt
ORDER BY [Average CPU used] DESC;
11 окт 19, 14:56    [21992207]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7746
StarikNavy,

нагружают не запросы, а "зеркальный" сервер.
11 окт 19, 15:03    [21992218]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7746
Alexander Us,

ну, не зря же MS выкинуло зеркалирование на свалку.
11 окт 19, 15:04    [21992220]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
а в каком порядке все делали?
сперва на будущем зеркали включили TDE,
потом зеркало сделали,
или сперва зеркало, потом TDE?
ну и про лог шиппинг: в каком порядке настраивали?
11 окт 19, 15:05    [21992221]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
StarikNavy,

Загрузка процессора на
принципале ~4%
зеркале на ~18%
получателе log shipping ~3%

Запросы, которые грузят проц - это разные селекты.
Они должны быть зеркалу по барабану.
11 окт 19, 15:13    [21992237]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
Alexander Us
Запросы, которые грузят проц - это разные селекты.
Они должны быть зеркалу по барабану.

если каждый раз начитывается с диска, то никакой не барабан
11 окт 19, 15:16    [21992244]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
Yasha123
а в каком порядке все делали?
сперва на будущем зеркали включили TDE,
потом зеркало сделали,
или сперва зеркало, потом TDE?
ну и про лог шиппинг: в каком порядке настраивали?


Ух, уже точно не вспомнить.
Но кажется, вначале отсоединили зеркало, зашифровали, затем полное восстановление и активация зеркала.
Что касается зеркала, дкмали там слабое железо. Обновили. Не помогло.
Кстати, при обновлении зеркала делали полное восстановление.

Лог шиппинг: полное восстановление после TDE.
Может дело в том, что в базе много блобов с опцией хранениея "out of row" ?
11 окт 19, 15:21    [21992255]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
Yasha123
Alexander Us
Запросы, которые грузят проц - это разные селекты.
Они должны быть зеркалу по барабану.

если каждый раз начитывается с диска, то никакой не барабан


Может при асинхронном зеркалировании всё таки по барабану?
11 окт 19, 15:23    [21992260]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
Alexander Us
Yasha123
пропущено...

если каждый раз начитывается с диска, то никакой не барабан


Может при асинхронном зеркалировании всё таки по барабану?

при чем тут синхронность.
если ваши селекты начитывают с диска каждый раз
(ну может зеркалу памяти пожадничали),
это же значит каждый раз декриптить.
11 окт 19, 15:42    [21992294]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
Yasha123
...если ваши селекты начитывают с диска каждый раз...

как это проверить?
11 окт 19, 15:46    [21992297]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
Alexander Us
Может дело в том, что в базе много блобов с опцией хранениея "out of row" ?

ну уж блобы точно из памяти первыми вытесняются.
и если их постоянно читают, они все равно вылетают из буфера первыми,
т.е. каждый раз начитываются с диска.
у вас какой процент PAGEIOLATCH_SH среди всех ожиданий?
вообще, показали бы свою десятку ожиданий на зеркале.
скрипт тут:
SQL Server Wait Statistics (or please tell me where it hurts…)
11 окт 19, 15:47    [21992299]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
Yasha123
Alexander Us
Может дело в том, что в базе много блобов с опцией хранениея "out of row" ?

ну уж блобы точно из памяти первыми вытесняются.
и если их постоянно читают, они все равно вылетают из буфера первыми,
т.е. каждый раз начитываются с диска.
у вас какой процент PAGEIOLATCH_SH среди всех ожиданий?
вообще, показали бы свою десятку ожиданий на зеркале.
скрипт тут:
SQL Server Wait Statistics (or please tell me where it hurts…)


WaitTypeWait_SResource_SSignal_SWaitCountPercentageAvgWait_SAvgRes_SAvgSig_S
CXPACKET626660.39603598.3523062.0433935859840.860.00180.00180.0001
LATCH_EX193945.57188572.355373.2213181298812.650.00150.00140.0000
ASYNC_NETWORK_IO187916.63185077.702838.9419929357712.250.00090.00090.0000
WRITELOG160751.95158132.312619.659885994910.480.00160.00160.0000
ASYNC_IO_COMPLETION96923.3296923.280.04100386.329.65569.65560.0000
BACKUPBUFFER91218.9090516.43702.47445212365.950.00200.00200.0000
BACKUPIO35981.7335789.98191.75232965072.350.00150.00150.0000
CMEMTHREAD31830.1310587.7521242.389037416002.080.00000.00000.0000
PREEMPTIVE_OS_WAITFORSINGLEOBJECT31707.2131707.210.00417968142.070.00080.00080.0000
PAGEIOLATCH_SH25287.1024807.46479.64590803171.650.00040.00040.0000
11 окт 19, 16:00    [21992312]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
Yasha123,

ещё раз с урлами:

WaitTypeWait_SResource_SSignal_SWaitCountPercentageAvgWait_SAvgRes_SAvgSig_SHelp/Info URL
CXPACKET626660.39603598.3523062.0433935859840.860.00180.00180.0001https://www.sqlskills.com/help/waits/CXPACKET
LATCH_EX193945.57188572.355373.2213181298812.650.00150.00140.0000https://www.sqlskills.com/help/waits/LATCH_EX
ASYNC_NETWORK_IO187916.63185077.702838.9419929357712.250.00090.00090.0000https://www.sqlskills.com/help/waits/ASYNC_NETWORK_IO
WRITELOG160751.95158132.312619.659885994910.480.00160.00160.0000https://www.sqlskills.com/help/waits/WRITELOG
ASYNC_IO_COMPLETION96923.3296923.280.04100386.329.65569.65560.0000https://www.sqlskills.com/help/waits/ASYNC_IO_COMPLETION
BACKUPBUFFER91218.9090516.43702.47445212365.950.00200.00200.0000https://www.sqlskills.com/help/waits/BACKUPBUFFER
BACKUPIO35981.7335789.98191.75232965072.350.00150.00150.0000https://www.sqlskills.com/help/waits/BACKUPIO
CMEMTHREAD31830.1310587.7521242.389037416002.080.00000.00000.0000https://www.sqlskills.com/help/waits/CMEMTHREAD
PREEMPTIVE_OS_WAITFORSINGLEOBJECT31707.2131707.210.00417968142.070.00080.00080.0000https://www.sqlskills.com/help/waits/PREEMPTIVE_OS_WAITFORSINGLEOBJECT
PAGEIOLATCH_SH25287.1024807.46479.64590803171.650.00040.00040.0000https://www.sqlskills.com/help/waits/PAGEIOLATCH_SH
11 окт 19, 16:02    [21992314]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
ну из ожиданий следует, что моя версия неверна.
чтений с диска на общем фоне совсем немного
11 окт 19, 16:14    [21992328]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
Yasha123
ну из ожиданий следует, что моя версия неверна.
чтений с диска на общем фоне совсем немного


а это на зеркале:
WaitTypeWait_SResource_SSignal_SWaitCountPercentageAvgWait_SAvgRes_SAvgSig_SHelp/Info URL
DBMIRROR_DBM_MUTEX132293265.73132284644.998620.7421897943791.160.60410.60410.0000https://www.sqlskills.com/help/waits/DBMIRROR_DBM_MUTEX
DBMIRROR_SEND9078276.929076940.361336.56944362326.260.09610.09610.0000https://www.sqlskills.com/help/waits/DBMIRROR_SEND
11 окт 19, 16:20    [21992334]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
Alexander Us

а это на зеркале:
WaitTypeWait_SResource_SSignal_SWaitCountPercentageAvgWait_SAvgRes_SAvgSig_SHelp/Info URL
DBMIRROR_DBM_MUTEX132293265.73132284644.998620.7421897943791.160.60410.60410.0000https://www.sqlskills.com/help/waits/DBMIRROR_DBM_MUTEX
DBMIRROR_SEND9078276.929076940.361336.56944362326.260.09610.09610.0000https://www.sqlskills.com/help/waits/DBMIRROR_SEND

ну привет.
зачем мне вообще нужны были ожидания принципала?

а зеркало похоже вообще не читается.
наверное так и задумано.
и что же тогда за "Запросы, которые грузят проц - это разные селекты"?
11 окт 19, 16:26    [21992344]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
Yasha123
...зеркало похоже вообще не читается...


что значит не читается?
там висит ~ десяток баз, одна асинхронно, её очередь я отслеживаю.
Остальные синхронно. Там тоже все ок.

Или я Вас не понял?
11 окт 19, 16:30    [21992352]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Yasha123
Member

Откуда:
Сообщений: 1833
Alexander Us
что значит не читается?
там висит ~ десяток баз, одна асинхронно, её очередь я отслеживаю.
Остальные синхронно. Там тоже все ок.

Или я Вас не понял?

читаемое зеркало это когда есть снэпшот с базы,
которая зеркалируется.
снэпшот можно читать.
на вашем сервере не читается ничего,
это просто скопище зеркал.
вот я и интересуюсь, какие же на этом сервере селекты?
11 окт 19, 16:55    [21992396]     Ответить | Цитировать Сообщить модератору
 Re: загрузка процессора на зеркале  [new]
Alexander Us
Member

Откуда:
Сообщений: 1130
Yasha123
читаемое зеркало это когда есть снэпшот с базы,
которая зеркалируется.
снэпшот можно читать.
на вашем сервере не читается ничего,
это просто скопище зеркал.
вот я и интересуюсь, какие же на этом сервере селекты?


нет, на зеркале никаких снэпшотов и никаких селектов
загрузку проца даёт одна единственная база, она же самая большая и "интенсивная".
если её зеркалирование поставить на паузу, загрузка проца идёт вниз к ~ 1% или меньше
11 окт 19, 17:11    [21992416]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить