Гость
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Page splits is too high / 19 сообщений из 19, страница 1 из 1
05.02.2020, 12:25
    #39922767
AndrF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
Просьба - что может приводить к этому (сообщение мониторинга Zabbix):

авторProblem started at 12:05:23 on 2020.02.05 Problem name: SQLServer, instance [MyInstance]: Access Methods: Page splits is too high

И как это можно исправить?

REINDEX выполнялся...
...
Рейтинг: 0 / 0
05.02.2020, 12:33
    #39922772
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
AndrF,

вставки в "середину" индекса... filfactor например как "так себе" вариант, или менят подход к ключам индекса или вставки
...
Рейтинг: 0 / 0
05.02.2020, 12:38
    #39922778
a_voronin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
TaPaK
AndrF,

вставки в "середину" индекса... filfactor например как "так себе" вариант, или менят подход к ключам индекса или вставки



А какой у вас тип поля индекса? Если GIUD меняйте на NEWSEQUENTIALID . Если строка, то вводите суррогатный ключ IDENTITY
...
Рейтинг: 0 / 0
05.02.2020, 12:39
    #39922779
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
AndrF,

уменьшайте fill factor индекса до устранения проблемы, но его размер увеличится.
...
Рейтинг: 0 / 0
05.02.2020, 12:43
    #39922781
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
Владислав Колосов
AndrF,

уменьшайте fill factor индекса до устранения проблемы, но его размер увеличится.

это как читайте молитвы при пожаре
...
Рейтинг: 0 / 0
05.02.2020, 12:45
    #39922784
AndrF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
a_voronin

А какой у вас тип поля индекса? Если GIUD меняйте на NEWSEQUENTIALID . Если строка, то вводите суррогатный ключ IDENTITY


Ну я не разработчик, так что подобные манипуляции в базе - не вариант.
...
Рейтинг: 0 / 0
05.02.2020, 12:51
    #39922793
AndrF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
Как можно узнать имя индекса и таблицы с которыми проблема?
...
Рейтинг: 0 / 0
05.02.2020, 12:55
    #39922797
AndrF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
Как можно узнать имя индекса и таблицы с которыми проблема? Zabbix этого не выдает...
...
Рейтинг: 0 / 0
05.02.2020, 12:57
    #39922802
AndrF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
[quot a_voronin#22073615]
TaPaK
AndrF,
А какой у вас тип поля индекса? Если GIUD меняйте на NEWSEQUENTIALID . Если строка, то вводите суррогатный ключ IDENTITY


Как я понимаю, это для индекса, используемого в качестве PrimaryKey?
...
Рейтинг: 0 / 0
05.02.2020, 12:58
    #39922804
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
AndrF
AndrF
Как можно узнать имя индекса и таблицы с которыми проблема? Zabbix этого не выдает...

профайлер или правильнее extended events и смотрите объект/индекс
...
Рейтинг: 0 / 0
05.02.2020, 13:29
    #39922821
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
AndrF
пропущено...
Как я понимаю, это для индекса, используемого в качестве PrimaryKey?

и при чем тут PrimaryKey?
сплиты в любом индексе могут быть.
возьмите свой же скрипт ребилда,
он же не все подряд ребилдит?
ну и проанализируйтете индексы, что попали под "сильно фрагментированные"
...
Рейтинг: 0 / 0
05.02.2020, 16:23
    #39923000
AndrF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
Yasha123

ну и проанализируйтете индексы, что попали под "сильно фрагментированные"


Собственно сильно фрагментированы индексы размером до 1000 страниц - IndexOptimize такие индексы по умолчанию игнорирует...
...
Рейтинг: 0 / 0
05.02.2020, 16:25
    #39923005
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
AndrF
Yasha123

ну и проанализируйтете индексы, что попали под "сильно фрагментированные"


Собственно сильно фрагментированы индексы размером до 1000 страниц - IndexOptimize такие индексы по умолчанию игнорирует...

это будет очень странно на них получить Page splits is too high
...
Рейтинг: 0 / 0
05.02.2020, 17:03
    #39923026
AndrF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
TaPaK

это будет очень странно на них получить Page splits is too high


Ну а фрагментация остальных (>1000 страниц) сейчас - менее 5%.
...
Рейтинг: 0 / 0
05.02.2020, 17:27
    #39923034
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
TaPaK
Владислав Колосов
AndrF,

уменьшайте fill factor индекса до устранения проблемы, но его размер увеличится.

это как читайте молитвы при пожаре


Ну так если вопрос "у меня что-то скрипит", то и ответ будет "залейте всё маслом".
...
Рейтинг: 0 / 0
05.02.2020, 17:35
    #39923036
AndrF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
Владислав Колосов
Ну так если вопрос "у меня что-то скрипит", то и ответ будет "залейте всё маслом".


IMHO - лучше все же подсказать ответ - как найти что именно скрипит...
...
Рейтинг: 0 / 0
05.02.2020, 17:41
    #39923042
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
AndrF
Владислав Колосов
Ну так если вопрос "у меня что-то скрипит", то и ответ будет "залейте всё маслом".


IMHO - лучше все же подсказать ответ - как найти что именно скрипит...

Код: sql
1.
2.
3.
SELECT *
FROM fn_dblog (NULL, NULL)
WHERE Operation = N'LOP_DELETE_SPLIT'


или
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
SELECT
[AllocUnitName] AS N'Index',
(CASE [Context]
WHEN N'LCX_INDEX_LEAF' THEN N'Nonclustered'
WHEN N'LCX_CLUSTERED' THEN N'Clustered'
ELSE N'Non-Leaf'
END) AS [SplitType],
COUNT (1) AS [SplitCount]
FROM
fn_dblog (NULL, NULL)
WHERE
[Operation] = N'LOP_DELETE_SPLIT'
GROUP BY [AllocUnitName], [Context];
...
Рейтинг: 0 / 0
05.02.2020, 19:20
    #39923084
a_voronin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
[quot AndrF#22073652]
a_voronin
пропущено...


Как я понимаю, это для индекса, используемого в качестве PrimaryKey?


Для кластерного индекса.
...
Рейтинг: 0 / 0
05.02.2020, 20:13
    #39923097
invm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Page splits is too high
AndrF
Как можно узнать имя индекса и таблицы с которыми проблема?
https://www.red-gate.com/simple-talk/blogs/how-to-identify-the-source-of-page-splits-in-a-database/
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Page splits is too high / 19 сообщений из 19, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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