SaaS Storage Strategies - SaaS Storage Strategies

SaaS Storage Strategies

Publication date: May 6, 2021 (Document revisions)

Abstract

Multitenant storage represents one of the more challenging aspects of building and delivering Software as a Service (SaaS) solutions. There are a variety of strategies that can be used to partition tenant data, each with a unique set of nuances that shape your approach to multitenancy. Adding to this complexity is the need to map each of these strategies to the different storage models offered by AWS, such as Amazon DynamoDB, Amazon Relational Database Service (Amazon RDS), and Amazon Redshift. Although there are high-level themes you can apply universally to these technologies, each storage model has its own approach to scoping, managing, and securing data in a multitenant environment. This paper offers SaaS developers insights into a range of data partitioning options, allowing them to determine which combination of strategies and storage technologies best align with the needs of their SaaS environment.

Are you Well-Architected?

The AWS Well-Architected Framework helps you understand the pros and cons of the decisions you make when building systems in the cloud. The six pillars of the Framework allow you to learn architectural best practices for designing and operating reliable, secure, efficient, cost-effective, and sustainable systems. Using the AWS Well-Architected Tool, available at no charge in the AWS Management Console, you can review your workloads against these best practices by answering a set of questions for each pillar.

In the SaaS Lens, we focus on best practices for architecting your software as a service (SaaS) workloads on AWS.

For more expert guidance and best practices for your cloud architecture—reference architecture deployments, diagrams, and whitepapers—refer to the AWS Architecture Center.

Introduction

AWS offers Software as a Service (SaaS) developers a rich collection of storage solutions, each with its own approach to scoping, provisioning, managing, and securing data. The way that each service represents, indexes, and stores data adds a unique set of considerations to your multitenant strategy. As a SaaS developer, the diversity of these storage options represents an opportunity to align the storage needs of your SaaS solution with the storage technologies that best match your business and customer needs.

As you weigh AWS storage options, you must also consider how the multitenant model of your SaaS solution fits with each storage technology. Just as there are multiple flavors of storage, there are also multiple flavors of multitenant partition strategies. The goal is to find the best intersection of your storage and tenant partitioning needs.

This paper explores all the moving parts of this puzzle. It examines and classifies the models that are typically used to achieve multitenancy, and helps you weigh the pros and cons that shape your selection of a partitioning model. It also outlines how each model is realized on Amazon RDS, Amazon DynamoDB, and Amazon Redshift. As you dig into each storage technology, you’ll learn how to use the AWS constructs to scope and manage your multitenant storage.

Although this paper gives you general guidance for selecting a multitenant partitioning strategy, it’s important to recognize that the business, technical, and operational dimensions of your environment will often introduce factors that will also shape the approach you select. In many cases, SaaS organizations adopt a hybrid of the variations described in this paper.