Конфигурирование баз данных Microsoft SQL Server и Azure SQL
|
Этот раздел перенесён из документации Camunda 7 и в дальнейшем будет доработан с учётом особенностей OpenBPM Engine |
Этот раздел документирует дополнительные изменения к конфигурации базы данных, необходимые для правильного использования баз данных Microsoft SQL Server или Microsoft Azure SQL с Camunda 7. Он предоставляет руководства по следующим вопросам:
-
Как установить правильный уровень изоляции транзакций для базы данных
-
Как различные версии Microsoft SQL Server поддерживаются в Azure SQL
-
Как Camunda поддерживает Azure SQL.
-
Как конфигурировать базы данных в Azure SQL, чтобы ее поддерживала Camunda.
Чтобы использовать эти руководства, вам потребуется базовое понимание синтаксиса T-SQL от Microsoft. Вам также будет необходим доступ к инструментам администрирования базы данных, которые взаимодействуют с вашей базой данных от Microsoft.
Уровни изоляции транзакций
Этот раздел применим к следующим типам баз данных:
-
Microsoft SQL Server
-
Microsoft Azure SQL
Microsoft SQL Server и Azure SQL реализуют уровень изоляции READ_COMMITTED не так, как большинство СУБД и плохо взаимодействуют со схемой
optimistic locking от движка управления процессами. В результате вы можете испытать deadlock-и при попытке поставить движок под высокую нагрузку.
Если у вас появляются deadlock-и в вашей инсталляции MSSQL, вам необходимо выполнить следующие запросы, чтобы разрешить SNAPSHOT-изоляцию:
ALTER DATABASE [process-engine]
SET ALLOW_SNAPSHOT_ISOLATION ON
ALTER DATABASE [process-engine]
SET READ_COMMITTED_SNAPSHOT ON
где [process-engine] содержит имя вашей базы данных.
Поддержка Azure SQL в Camunda
Этот раздел применим только к следующим продуктам Microsoft, относящимся к базам данных:
-
Azure SQL Managed Instance
-
Azure SQL Database
Двидок баз данных SQL Server имеет настройку a Database Compatibility Level (уровень совместимости базы данных), которая предоставляет обратную совместимость с более ранними версиями SQL Server. Эта обратная совместимость покрывает Transact-SQL и поведение оптимизатора запросов и моет применяться для каждой базы данных в отдельности.
Продукты Microsoft Azure SQL Managed Instance и Azure SQL Database всегда используют самую последнюю стабильную версию движка баз даных SQL Server. Чтобы предоставить обратную совместимость с более ранними версиями SQL Server, продукты Azure SQL используют настройку Database Compatibility Level.
Azure SQL compatibility levels supported by Camunda
Microsoft ассоциирует каждую версию SQL Server с Database Compatibility Level. Вы можете найти таблицу версий SQL Server и ассоциированных с ними значений уровней совместимости на странице Alter Compatibility Level от Microsoft.
Camunda поддерживает значения Database Compatibility Level текущих поддерживаемых версий Microsoft SQL Server, что задокументировано в разделе versions documented in our Поддерживаемые продукты, относящиеся к базам данных.
Конфигурирование базы данных на Azure SQL
Мы рекомендуем в явном виде устанавливать настройку Database Compatibility Level для каждой базы данных, создаваемой на Azure SQL. Значение по умолчанию для настройки Database Compatibility Level меняется каждый раз, когда выходит новая версия SQL Server Если значение Database Compatibility Level не установлено на базу данных в явном виде, будет использоваться значение по умолчанию. Использование значения по умолчанию может привести к неожиданному поведению, не поддерживаемому Camunda.
Чтобы установить Database Compatibility Level в конкретное значение, выполните следующий код:
ALTER DATABASE [database_name]
SET COMPATIBILITY_LEVEL = [compatibility_level]
В приведенном коде [database_name] должно заменяться на имя вашей базы данных, а [compatibility_level] надо заменить на значение Database Compatibility Level для версии SQL Server, которую вы хотите использовать. Вы можете найти список всех доступных значений по ссылке на страницу Alter Compatibility Level от Microsoft.
Лицензия и атрибуция
Эта документация была создана на базе материала "Camunda 7 Docs" от Camunda, находится под лицензией Creative Commons Attribution-ShareAlike 3.0 Unported License .
Оригинал документации: https://docs.camunda.org