使用AWS Redshift构建多租户SaaS应用程序



我们正在构建一个托管在AWS上的多租户SaaS应用程序,该应用程序通过RESTapi在前端公开和可视化数据。

现在,对于存储,我们考虑使用AWS Redshift(Cluster或Serverless?(,然后使用带有Redshift data API的API GatewayLambda公开数据。

我倾向于使用Redshift而不是RDS的原因是,在构建我们的产品时,能够在内部进行数据实验似乎是一个不错的选择。

我的问题是,这会被认为是一个好的策略吗?

Redshift的大小适用于非常大的数据和表。例如,最小存储大小为1MB。对于每一列和所有切片,这是1MB(最少2个(。一个包含5列和几行的表在最小的Redshift集群大小(默认分布样式(上将占用26MB。当您的表至少有1000到数百万行时,Redshift就会大放异彩。从您的案例中还不清楚您是否拥有在Redshift上高效运行的数据大小。

下一个问题是您的工作量。Redshift是一个强大的分析引擎,但不是为OLTP工作负载而设计的。大量的小写入操作不会很好地执行;它想要批量写入。轻度读取的高并发性将无法像为该工作负载设计的数据库那样工作。

在低级别的工作中,Redshift可以做这些事情——它是一个数据库。但如果你以一种没有优化的方式使用它,它可能不是最具成本效益的选择,也不会很好地扩展。如果作业A是SAS工作负载,而分析是作业B,则为作业A选择正确的数据库。如果此选择无法以所需的性能级别完成作业B,那么请将分析引擎添加到组合中。

我的0.02美元,我是红卫兵。如果我对你工作量的假设是错误的,请更新具体信息。

最新更新