홈
topics
multi tenant
멀티 테넌트 소프트웨어 아키텍처(소프트웨어 멀티테넌시라고도 함)에서 소프트웨어 애플리케이션(및 해당하는 기본 데이터베이스와 하드웨어)의 단일 인스턴스는 여러 테넌트(또는 사용자 계정)를 수용합니다. 테넌트는 개별 사용자일 수 있지만 애플리케이션 인스턴스 내에서 공통 액세스 및 권한을 공유하는 사용자 그룹(예: 고객 조직)인 경우가 더 많습니다. 각 테넌트의 데이터는 애플리케이션 인스턴스를 공유하는 다른 테넌트와 격리되어 보이지 않으므로 모든 테넌트에 대한 데이터 보안 및 개인정보 보호가 보장됩니다.
소프트웨어 멀티테넌시는 SaaS(Software-as-a-Service)가 제공되는 아키텍처입니다. 조직에서 salesforce.com, HubSpot 또는 기타 클라우드 기반 SaaS 오퍼링을 사용하는 경우 해당 조직은 멀티 테넌트 오퍼링의 테넌트가 됩니다.
다소 혼란스럽지만 멀티 테넌트는 클라우드 호스팅 서비스를 참조할 수도 있습니다. 멀티 테넌트 호스팅(공유 호스팅이라고도 함)에서는 단일 물리적 컴퓨터 또는 가상 머신(VM)이 여러 사용자 또는 고객 조직 간에 공유됩니다. 멀티 테넌트 호스팅 솔루션은 일반적으로 클라우드 서비스 제공자에 의해 단일 테넌트 또는 전용 호스팅 솔루션에 대한 저렴한 대안으로 제공됩니다.
이 문서의 나머지 부분에서는 소프트웨어 멀티테넌시를 집중적으로 다룰 예정입니다. 여기에서 멀티 테넌트 및 단일 테넌트 호스팅 유형에 대해 자세히 알아보세요.
각 테넌트가 고유한 애플리케이션, 데이터베이스 및 지원 하드웨어 인프라 인스턴스를 가져오는 단일 테넌트 아키텍처와 비교할 때 멀티 테넌트 아키텍처는 소프트웨어 제공자와 테넌트 고객에게 다음을 포함한 상당한 이점을 제공합니다.
멀티 테넌트 클라우드는 고객이 퍼블릭 또는 프라이빗 클라우드에서 컴퓨팅 리소스를 공유하는 모든 아키텍처나 공유 호스팅의 동의어로 자주(하지만 현재는 빈번하지 않음) 사용되었습니다. 오늘날 대부분의 선도적인 클라우드 서비스 제공자는 전용 호스팅 서비스를 제외한 대부분의 오퍼링을 멀티 테넌트 모델을 기반으로 제공하고 있으며, 이를 통해 제공자는 데이터 센터 하드웨어 및 인프라의 활용도를 극대화하고 결과적으로 가능한 가장 낮은 비용으로 고객에게 클라우드 서비스를 제공합니다.
멀티 테넌트 애플리케이션을 위한 데이터베이스를 선택할 때 개발자는 데이터 격리에 대한 고객의 요구사항 또는 희망사항과 애플리케이션 트래픽의 증가 또는 급증에 대응하여 신속하고 경제적으로 솔루션을 확장하는 것 균형을 유지해야 합니다.
완벽한 격리를 보장하기 위해 개발자는 각 테넌트에 대해 별도의 데이터베이스 인스턴스를 할당할 수 있습니다. 반대로 확장성을 최대화하기 위해 개발자는 모든 테넌트가 동일한 데이터베이스를 공유하도록 할 수 있습니다. 그러나 대부분의 개발자는 각 테넌트가 동일한 데이터베이스 인스턴스 내에 자체 스키마를 배치할 수 있도록 하고('소프트 격리'라고도 함) 두 환경의 장점을 모두 제공하는 PostgreSQL과 같은 데이터 저장소를 사용하도록 선택합니다.
IBM Cloud를 사용하여 VMware 워크로드와 애플리케이션을 완벽하게 현대화합니다.
이 IBM Watson® 기반 BI 솔루션은 데이터를 정리 및 연결하고, 탁월한 데이터 시각화를 생성하며, 비즈니스의 현재 상태를 보여주는 동시에 향후 어떤 상황이 발생할지 예측하는 데 도움을 줄 수 있습니다.