Наш продукт базується на Microsoft SQL Server. В даний час ми використовуємо три бази даних і завжди розгортали їх в одному екземплярі SQL Server.
Три бази даних - OLTP, OLAP та аудит. База даних OLAP має масивні вхідні дані про EOD як від OLTP, так і від аудиту, використовуючи крос-запити до бази даних.
Запитання
Якби ми розгорнули ці три бази даних на три окремі екземпляри Standard Edition всередині одного фізичного сервера та з'єднали їх разом за допомогою функції Linked Server SQL Server:
- Наскільки прозорим він буде до коду програми? Скільки змін я повинен очікувати?
- Вхідні дані до OLAP складали в 50k-100k рядків, 200-500MB корисного навантаження на EOD. Скільки падіння продуктивності слід очікувати?
- Яких ще великих обмежень слід очікувати?
Фон
Наразі ми розкриваємо наш потенційно перший клієнт із 500+ одночасно користувачами.
Ми розробляємо специфікацію сервера, яка включає 64 ядра та 256 ГБ оперативної пам’яті. Щоб SQL Server використовував усі ці рясні ресурси, клієнтові доведеться придбати Enterprise Edition, яка для SQL Server 2016 доступна лише в рамках базового ліцензування.
Ми боїмось, що ціна ліцензування сама (64 х 7400 доларів) знизить їх. Тож я думаю розбити базу даних на три екземпляри Standard Edition та з'єднати їх, сподіваючись, що функція зв’язку буде прозорою від коду програми.