cancel
Showing results for 
Search instead for 
Did you mean: 

SAP CAP & SAP HANA Cloud - Multitenant best practices?

geert-janklaps
Active Contributor

Hi,

I'm looking into setting up multiple multitenant solutions on SAP Business Technology Platform using SAP Cloud Application Programming model.

As I've understood, CAP handles the creation of HDI containers for providing tenant isolation.

What's a little unclear to me personally is, what is the best approach in terms of SAP HANA Cloud databases for multiple multitenant applications running in different subaccounts?

Should we setup separate SAP HANA Cloud instances for each and every multitenant solution? Or is there a way to re-use a single SAP HANA Cloud instance across multiple multitenant solutions?

What I absolutely want to prevent is that if a same tenant subscribes to multiple solutions and unsubscribes from one of them, the HDI container with data of other solutions is deleted and data is lost.

I couldn't seem to find any straight answer / best practice for multitenant applications running in SAP HANA Cloud.

Cheers,

Geert-Jan

Accepted Solutions (1)

Accepted Solutions (1)

marcbecker
Contributor

Each multitenant application will have it's own Service Manager service instance. The Service Manager is used for creating and managing the HDI container instances of a multitenant application on one or multiple HANA instances. So if multiple multitenant applications use the same HANA database with separate Service Manager instances you will also have isolated HDI containers for each tenant on each multitenant application.

In that case there is no danger that a unsubscription of a tenant from one application deletes its resources in another application.

In the end reusing the HANA instance rather comes to questions of load, scaling, etc. If you want to learn more about how to specify the HANA instance on which a tenant's HDI container is created you can find more information here for CAP Java: https://cap.cloud.sap/docs/guides/deployment/as-saas#returning-a-database-id or here for CAP Node.js: https://cap.cloud.sap/docs/guides/multitenancy/mtxs?q=database_id#deployment-config

geert-janklaps
Active Contributor
0 Kudos

Thanks for this clear and straight answer Marc!

This is exactly what I was hoping for, but it will indeed be a matter of calculating the risk of how much load, scaling, volume, ... to expect for a group of solutions. Things to dive into a little deeper!

Answers (1)

Answers (1)

KM11
Participant
0 Kudos

Hi @marcbecker 

1) Can we subscribe applications in consumer accounts which are within the same global account but have different regions using CAP.

2) Currently I understood that we can have one database with multiple hdi containers for data isolation. But how can I achieve complete DB isolation that is single DB for each consumer account via cap.

Thanks

kanika