Однак, звичайно, є деякі компанії, які бояться, що їхні дані можуть бути порушені, тому ми оцінюємо інші рішення.
Це прикро, оскільки клієнти іноді страждають від помилки, що лише фізична ізоляція може забезпечити достатню безпеку.
Існує цікава стаття MSDN під назвою Архітектура даних Multi-Tenant , яку ви, можливо, захочете перевірити. Ось як автори зверталися з оманою до спільного підходу:
Поширена помилкова думка, що лише фізична ізоляція може забезпечити належний рівень безпеки. Фактично, дані, що зберігаються за допомогою спільного підходу, можуть також забезпечити високу безпеку даних, але вимагають використання більш складних моделей дизайну.
Що стосується технічних та ділових міркувань, то в статті робиться короткий аналіз того, де певний підхід може бути більш доцільним, ніж інший:
Кількість, природа та потреби орендарів, яких ви очікуєте обслуговувати, по-різному впливають на рішення архітектури даних. Деякі з наведених нижче питань можуть заперечувати вас до більш ізольованого підходу, тоді як інші можуть заперечувати вас до більш спільного підходу.
Скільки потенційних орендарів ви очікуєте націлити? Можливо, ви ніде не зможете оцінити потенційне використання з повноваженнями, але подумайте з точки зору порядку: ви будуєте заявку на сотні орендарів? Тисячі? Десятки тисяч? Більше? Чим більше ви очікуєте, що ваша база орендарів буде, тим більше шансів, що вам захочеться розглянути більш спільний підхід.
Скільки місця для зберігання даних, як ви очікуєте, займе середньостатистичний орендар? Якщо ви очікуєте, що деякі або всі орендарі зберігають дуже великі обсяги даних, підхід із окремою базою даних, мабуть, найкращий. (Дійсно, вимоги щодо зберігання даних можуть змусити вас прийняти модель окремої бази даних у будь-якому випадку. Якщо це так, буде набагато простіше розробити додаток таким чином з самого початку, ніж пізніше піти на підхід до окремої бази даних.)
Скільки паралельних кінцевих користувачів ви очікуєте на підтримку середнього орендаря? Чим більше число, тим більш доцільним буде більш ізольований підхід для задоволення вимог кінцевих споживачів.
Чи очікуєте ви пропонувати будь-які послуги з доданою вартістю орендаря, такі як резервне копіювання та відновлення можливостей для орендатора? Такі послуги простіше запропонувати через більш ізольований підхід.
ОНОВЛЕННЯ: Далі про оновлення щодо очікуваної кількості орендарів.
Ця очікувана кількість орендарів (10 к) повинна виключати підхід із багатьох баз даних для більшості, якщо не всіх сценаріїв. Я не думаю, що вам сподобається ідея підтримувати 10 000 екземплярів баз даних і щодня створювати сотні нових.
Тільки з цього параметра, схоже, підхід із загальною базою даних є найбільш підходящим. Той факт, що ви будете зберігати приблизно 50 Мбіт на одного орендаря, і що додатків на орендаря не буде, робить цей підхід ще більш доцільним.
У цитованій вище статті MSDN згадуються три моделі безпеки, які вирішують питання безпеки для підходу до спільної бази даних:
Якщо ви впевнені в заходах щодо безпеки даних у вашій програмі, ви зможете запропонувати своїм клієнтам Угоду про рівень обслуговування, яка забезпечує чіткі гарантії безпеки даних. У своєму Урядовому договорі, окрім гарантій, ви можете також описати заходи, які ви вживали б для того, щоб не порушувати дані.
ОНОВЛЕННЯ 2: Очевидно, хлопці Microsoft переїхали / створили нову статтю з цього приводу, оригінальне посилання вже відсутнє, і це нове: моделі оренди баз даних SaaS з кількома орендарями (кудо Шай Кереру)