Как определить размер памяти, необходимой для базы данных TimesTen в памяти?

#memory #sizing #timesten

#память #определение размера #timesten

Вопрос:

Как мне определить правильные значения для параметров памяти в TimesTen? Сколько памяти мне нужно на основе моих таблиц и данных?

Ответ №1:

База данных TimesTen состоит из двух сегментов общей памяти; один небольшой и используется исключительно PL / SQL, а другой является основным сегментом базы данных, который содержит ваши данные (таблицы, индексы и т.д.), временное рабочее пространство, буфер журнала транзакций и некоторое пространство, используемое системой.

Атрибуты в определении DSN устанавливают размер для этих областей следующим образом:

PLSQL_MEMORY_SIZE — задает размер сегмента PL / SQL (по умолчанию 128 МБ). Если вы не планируете использовать PL / SQL каждый раз, вы можете уменьшить это до 32 МБ. Если вы планируете очень интенсивно использовать PL / SQL, вам может потребоваться увеличить это значение.

LogBufMB — задает размер буфера журнала транзакций. По умолчанию используется 64 МБ, но это слишком мало для большинства производственных баз данных. Рабочая нагрузка, связанная в основном с чтением, может обойтись значением 256 МБ, но для рабочих нагрузок, связанных с большим количеством операций записи в базу данных, обычно требуется 1024 МБ, а в крайних случаях может достигать 16384 МБ. При установке этого значения вы также должны учитывать настройку (или значение по умолчанию) для атрибута LogBufParallelism .

PermSize — задает размер для постоянного (постоянного) хранилища базы данных. Она должна быть достаточно большой, чтобы вместить все ваши табличные данные, индексы, системные метаданные и т. Д. И, Как правило, с учетом роста, непредвиденных обстоятельств и т. Д.

TempSize — задает значение для области временной памяти. Эта область используется для блокировок базы данных, материализованных таблиц, временных индексов, сортировки и т. Д. И Не Сохраняется на диске.

Общий размер сегмента разделяемой памяти основной базы данных определяется как PermSize TempSize LogBufMB SystemOverhead . Значение для SystemOverhead варьируется от выпуска к выпуску, но если вы разрешаете 64 МБ, этого обычно достаточно.

Документацию по атрибутам базы данных можно найти здесь: https://docs.oracle.com/database/timesten-18.1/TTREF/attribute.htm#TTREF114

Вы можете оценить объем памяти, необходимый для ваших таблиц и связанных индексов, с помощью утилиты TimesTen ttSize https://docs.oracle.com/database/timesten-18.1/TTREF/util.htm#TTREF369