Как определить оптимальный размер BI-кластера
Размер BI кластера влияет на частоту возникновения контрольных точек в базе данных. В основном, большой размер кластера означает, что контрольные точки будут возникать менее часто, при этом увеличится время восстановления, а так же увеличится период «заморозки» (freeze) активности пользовательских процессов когда BI файл будет расширяться. Меньший размер кластера будет способствовать более частому выполнению контрольных точек.
Время между формированием контрольных точек должно быть не менее 60 секунд, а лучше 5 минут. Обычно диапазон размеров кластера должен составляет от 2 Мб до 16 Мб. По умолчанию, его размер равен 512 Кб.
Подбор оптимального размера кластера, это циклический процесс, который выполняется относительно промышленной базы данных работающей в нормальном режиме, т.е. при обычной нагрузке.
Для того чтобы выяснить частоту выполнения контрольных точек используется экран Checkpoints утилиты promon. (Promon -> R&D -> 3 Other -> 4 Checkpoints).
Например:
Предположим, что желаемый минимум между контрольными точками, это 120 секунд.
Допустим, что в promon между какими-нибудь двумя контрольными точками расстояние по времени равно 30 секунд, смотрите поле LEN упомянутого экрана promon. Для того чтобы увеличить этот интервал до 120 секунд, необходимо увеличить размер кластера. Для этого разделим желаемое время на реальное, т.е. 120/30 = 4. Таким образом, размер кластера необходимо увеличить в четыре раза по отношению к текущему его размеру. Т.е. если размер кластер был равен 512Кб, то 512 * 4 = 2048 Кб = 2Мб.
Увеличить размер кластера можно следующей командой:
proutil <dbname> -C truncate bi -bi <new cluster size in KB>
Эта операция должна выполняться когда база данных будет остановлена.
Помните, что чрезмерное увеличение размера BI кластера может привести к ухудшению производительности вместо желаемого улучшения. Поэтому дополнительно необходимо отслеживать значение поля “Flushed at checkpoint”, которое можно посмотреть на экранах “Activity: Buffer Cache”, “Activity: Summary”, “Activity: Page Writers” утилиты promon. В идеале, это значение должно стремиться к нулю. Если количество буферов, сброшенных на диск в контрольной точке, будет увеличиваться, то вероятнее всего вам стоит запустить дополнительный APW процесс.