При каких обстоятельствах это - хорошая идея повторно индексировать таблицы каждую ночь?

Хотя Вы не указываете свои другие навыки, MySQL Certification исторически понизился хорошо на резюме и не настолько широко распространен - зависящий от Вашего situtaion существует четыре отдельных сертификата:

  • CMA: сертифицированный MySQL Associate
  • CMDEV: сертифицированный MySQL Developer
  • CMDBA: сертифицированный MySQL Database Administrator
  • CMCDBA: сертифицированный MySQL Cluster Database Administrator

Я предполагаю, что Вы хотели бы третий. Прогрессия с RH также имеет выгоду, это действительно зависит от Ваших карьерных стремлений. Где Вы видите себя за 5 лет? Сделайте курс для получения Вас там :)

5
задан 15 September 2010 в 15:48
2 ответа

Если информация прокручивается, который указывает, что существует значительная часть, примерно 20%, общего DB, вставляемого каждый день. Это указывает, что Ваша статистика и Ваши индексы составляют 20% неправильно.

Это походит точно на условия, для которых необходимо повторно индексировать.

7
ответ дан 3 December 2019 в 01:21

В основном Ваше уменьшение и переиндекс просто отменяли друг друга (таблицы фрагментов уменьшения для восстановления пространства, затем переиндекс использует дополнительное пространство для дефрагментации таблиц).

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

Но, учитывая прокручивающиеся 5 дней данных, Вы могли бы на самом деле быть в порядке без REINDEXES вообще на тех столах на колесиках (в зависимости от точно, как кластерный индекс настроен). Вот то, что я имею в виду:

Принятие Вас делает вставляет только (никакие обновления), и кластерный индекс или в дату/время или просто в постоянно увеличивающее числовое значение, внутреннее расположение таблицы могло бы посмотреть что-то как:

[  Day 1  ][  Day 2  ][  Day 3  ][  Day 4  ][  Day 5  ][  Empty  ]

В день 6, Вы удаляете данные со дня 1 и вставляете данные со дня 6:

[  Empty  ][  Day 2  ][  Day 3  ][  Day 4  ][  Day 5  ][  Day 6  ]

и тот же шаблон продолжается, снова используя недавно освобожденное пространство:

[  Empty  ][  Day 2  ][  Day 3  ][  Day 4  ][  Day 5  ][  Day 6  ]
[  Day 7  ][  Empty  ][  Day 3  ][  Day 4  ][  Day 5  ][  Day 6  ]
[  Day 7  ][  Day 8  ][  Empty  ][  Day 4  ][  Day 5  ][  Day 6  ]
[  Day 7  ][  Day 8  ][  Day 9  ][  Empty  ][  Day 5  ][  Day 6  ]

Для знания наверняка, если это - то, что происходит я использовал бы запросы фрагментации таблицы SQL (dm_db_index_physical_stats) после заключительного переиндекса, затем выключая переиндексы в течение нескольких дней. Если числа фрагментации являются очень небольшими, то это, вероятно, что продолжается. Если они высоки, то это, вероятно, не точная картина, и Вы, возможно, должны были бы восстановить свои переиндексы.

1
ответ дан 3 December 2019 в 01:21

Теги

Похожие вопросы