Oracle waits “log file sync” and “log file parallel write” on Linux
Презентация начинается с обзора механизма семафоров в Linux. Рассматриваются функции semget, semtimedop и semctl. Так же дается описание реализации асинхронного ввода-вывода на Linux через функции io_submit и io_getevents.
Далее рассматриваются известные C-функции базы данных Oracle, такие как kskthbwt, kskthewt, kslgetl. Говорится о выявлении новой функции kslwt_update_stats_int, через которую происходит обновление статистики в v$sesstat. Рассматриваются средства трассировки выполняемых программ на Linux: strace, gdb, systemtap.
После этого приводятся результаты трассировки LGWR и пользовательских процессов при различных комбинация параметров _log_parallelism_max, in_memory_undo, _disable_logging, _use_adaptive_log_file_sync. В заключении даются рекомендации по настройке инстанса для минимизации ожиданий “log file sync” and “log file parallel write”.
Презентация начинается с обзора механизма семафоров в Linux. Рассматриваются функции semget, semtimedop и semctl. Так же дается описание реализации асинхронного ввода-вывода на Linux через функции io_submit и io_getevents.
Далее рассматриваются известные C-функции базы данных Oracle, такие как kskthbwt, kskthewt, kslgetl. Говорится о выявлении новой функции kslwt_update_stats_int, через которую происходит обновление статистики в v$sesstat. Рассматриваются средства трассировки выполняемых программ на Linux: strace, gdb, systemtap.
После этого приводятся результаты трассировки LGWR и пользовательских процессов при различных комбинация параметров _log_parallelism_max, in_memory_undo, _disable_logging, _use_adaptive_log_file_sync. В заключении даются рекомендации по настройке инстанса для минимизации ожиданий “log file sync” and “log file parallel write”.