Jak działa multi-tenancy?
Aplikacja wielodostępna dołącza identyfikator tenanta do każdego żądania i każdego rekordu. Gdy użytkownik się loguje, aplikacja ustala, do którego tenanta należy, a potem zawęża do tego tenanta każde zapytanie, każde zadanie w tle i każdą wiadomość. Wszyscy tenanci działają na tych samych serwerach i zwykle na tej samej bazie danych, co utrzymuje niski koszt operacyjny na tenanta – ale izolacja jest tylko tak silna, jak kod i ograniczenia bazy danych, które ją egzekwują.
Jakie są główne modele izolacji?
| Model izolacji | Jak działa | Kompromis |
|---|---|---|
| Wspólna baza danych, klucz tenanta | Każdy wiersz ma identyfikator tenanta; każde zapytanie po nim filtruje | Najtańszy w utrzymaniu; jeden pominięty filtr może ujawnić dane innemu tenantowi |
| Schemat na tenanta | Każdy tenant dostaje własny schemat we wspólnej bazie danych | Silniejsza separacja; migracje mnożą się wraz z liczbą tenantów |
| Baza danych na tenanta | Każdy tenant dostaje dedykowaną bazę danych lub instancję | Najsilniejsza izolacja; najwyższy koszt i narzut operacyjny |
Dlaczego multi-tenancy ma znaczenie dla małego zespołu?
Jeśli prowadzisz jeden produkt pod jedną marką, o tenantach możesz nigdy nie pomyśleć. Ma to znaczenie w chwili, gdy z jednej instalacji obsługujesz kilka marek, przestrzeni roboczych klientów lub środowisk – typowy przypadek agencji i małych platform. Narzędzia do customer engagement open source, takie jak Dittofeed, modelują tenantów jako przestrzenie robocze, a samodzielnie hostowane narzędzie do customer engagement sprawia, że cała instalacja staje się Twoją własną granicą tenanta: dane Twoich klientów nie dzielą infrastruktury z nikim spoza Twojej firmy.
Co multi-tenancy zmienia w kwestii zgodności z przepisami?
We współdzielonym SaaS jesteś jednym tenantem spośród tysięcy i polegasz na izolacji, wyborach dotyczących rezydencji danych i umowach dostawcy. Self-hosting to odwraca: stajesz się operatorem, więc izolacja poszczególnych tenantów, retencja danych i dziennik audytu są po Twojej stronie – to Ty je konfigurujesz i to Ty musisz wykazać, że działają. Żaden model nie jest zgodny z przepisami z natury; obowiązki z RODO podążają za danymi, a nie za architekturą.