Подробные сведения о буферизации данных

Доступ для записи

В разделе Буферизация данных, основы уже упоминалось, что данные могут буферизироваться без подключения к БД (доступ только для записи), но их считывание из буфера невозможно (доступ только для считывания). Соответственно, буферизированные данные могут записываться в базу данных и считываться только после установления подключения к базе данных.

Ограничения буферизации данных

В случае длительного отсутствия подключения к базе данных, необходимо установить ограничение в Конфигурации РБД, в опции “Number of blocks on HDD” («Количество блоков на жестком диске») (МБ, Гб или в процентном соотношении). Это важно в случае недостаточного объема памяти ОЗУ и жесткого диска и, следовательно, данные не могут буферизироваться и, соответственно, могут быть потеряны.

Обеспечение возможности буферизации данных

Буферизацию данных можно активировать при помощи элемента внутренней точки данных «stopWriteToDB«, тип «_RDBArchive«.

stopWriteToDB = 1

Блоки данных не записываются в базу данных, а буферизируются в памяти, на жестком диске, соответственно. То есть, моделируется то же поведение, как во время отключения от базы данных. В случае отключения и повторного подключения к базе данных, блоки данных по-прежнему буферизируются и не записываются в базу данных, если значение элемента точки данных равно 1.

stopWriteToDB = 0

Значение по умолчанию. После установления подключения к БД, данные записываются непосредственно в базу данных. Если значение «stopWriteToDB» было равно 1, а затем было установлено 0, запись буферизированных данных в БД осуществляет менеджер РБД. 
 

В случае резервированной системы, этот элемент точки данных должен иметь одинаковое значение на обоих компьютерах, для обеспечения одинакового поведения после перехода из активного / пассивного режима. Это означает, что если значение этого элемента точки данных было равно 1 на активном компьютере и 0 на пассивном компьютере, пассивный компьютер записывает буферизированные блоки данных в базу данных после перехода.

Запуск менеджера РБД с буферизации и без подключения к базе данных

Следующая инструкция описывает возможность запуска менеджера РБД с автоматической буферизацией, при отсутствии подключения к базе данных, во время запуска проекта «КАСКАД Цифра», в связи с тем, что сервер Oracle еще не запущен.

Перед запуском менеджера РБД необходимо задать значения обоих элементов внутренней точки данных:

  • _RDBArchive.connection.closeDBConnection = 1
  • _RDBArchive.connection.openDBConnection = 0

После запуска базы данных, задавать значения можно только для одного из этих элементов точки данных. Второй элемент отображает состояние.

С помощью следующих шагов можно обеспечить постоянное наличие значения 1 или 0 для этих элементов внутренней точки данных.

  1. Открыть модуль «КАСКАД Цифра» PARA.
  2. Установить флажок в селекторе «Internal data points» («Внутренние точки данных»).
  3. Выбрать элемент точки данных «_RDBArchive.dbConnection.closeDBConnection«.
  4. Установить значение, равное «1«.
  5. Нажмите Apply (Применить).
  6. Отключить бит «Last value«.
  7. Повторно нажать «Apply«.
  1. Выбрать элемент точки данных «_RDBArchive.dbConnection.openDBConnection«.
  2. Установить значение, равное «0«. Таким образом, обеспечивается отсутствие немедленного подключения к базе данных.
  3. Нажмите Apply (Применить).
  4. Отключить бит «Last value«.
  5. Повторно нажать «Apply«.
  6. В случае применения резервированного проекта «КАСКАД Цифра», следует убедиться в применении установленных значений на пассивном компьютере.
  1. Выбрать элемент точки данных «_RDBArchive_2.dbConnection.closeDBConnection«.
  2. Установить значение, равное «1«.
  3. Нажмите Apply (Применить).
  4. Отключить бит «Last value«.
  5. Повторно нажать «Apply«.
  1. Выбрать элемент точки данных «_RDBArchive_2.dbConnection.openDBConnection«.
  2. Установить значение, равное «0«. Таким образом, обеспечивается отсутствие немедленного подключения к базе данных.
  3. Нажмите Apply (Применить).
  4. Отключить бит «Last value«.
  5. Повторно нажать «Apply«.
  6. В случае применения резервированного проекта «КАСКАД Цифра», следует убедиться в применении установленных значений на пассивном компьютере.

Активация подключения к базе данных осуществляется по истечении установленного периода времени задержки. Для определения установки подключения к базе данных, следует использовать команду «tnsping <connect_identifier>«. Для этого необходимо вызвать команду «tnsping» в функции «system()» сценария CTRL.

ПРИМЕР

main()

{

  string out;

  out = system(«tnsping EITST077_DB11g»);

  DebugN(out);

}

Результат фиксируется в средстве просмотра журнала «КАСКАД Цифра».

Тем не менее, в случае успешного завершения установки подключения к базе данных, необходимо подождать около 3 минут до завершения полной загрузки сервера Oracle. После чего подключение можно возобновлять:

  • Задав значение элемента точки данных «_RDBArchive.dbConnection.openDBConnection» равное 1 для «host 1».
  • Задав значение элемента точки данных «_RDBArchive_2.dbConnection.openDBConnection» равное 1 для «host 2», в случае использования резервированного проекта.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *