在 Azure Cosmos DB for PostgreSQL 中对应用程序工作负载进行分类

适用对象: Azure Cosmos DB for PostgreSQL(由 PostgreSQL 的 Citus 数据库扩展提供支持)

下面是最适合 Azure Cosmos DB for PostgreSQL 的工作负荷的常见特征。

先决条件

本文假定你了解 缩放的基本概念。 如果你还没有阅读过这些内容,请花点时间这样做。

多租户 SaaS 的特征

  • 租户看到自己的数据;他们看不到其他租户的数据。
  • 大多数 B2B SaaS 应用都是多租户应用。 示例包括 Salesforce 或 Shopify。
  • 在大多数 B2B SaaS 应用中,有数百到数万个租户,越来越多的租户继续加入。
  • 多租户 SaaS 应用主要是操作/事务应用,其数据库查询的延迟要求为位数毫秒。
  • 这些应用具有经典关系数据模型,并使用 ORM 生成,例如 RoR、Hibernate、Django 等。

实时操作分析的特征

  • 这些应用具有面向客户/用户的交互式分析仪表板,具有子秒的查询延迟要求。
  • 需要高并发性 - 至少 20 个用户。
  • 分析最近一秒到几分钟内的新鲜数据。
  • 大多数都有时序数据,例如事件、日志等。
  • 这些应用中的常见数据模型包括:
    • 星型架构 - 少数大型/事实数据表,其余表为小型/维度表
    • 大多少于 20 个主要表

高吞吐量事务性的特征

  • 运行 NoSQL/文档样式工作负荷,但需要 PostgreSQL 功能,例如事务、外键/主键、触发器、PostGIS 等扩展。
  • 工作负荷基于单个密钥。 它具有基于该密钥的 CRUD 和查找。
  • 这些应用具有较高的吞吐量要求:数千到数十万 TPS。
  • 查询延迟(以单位数毫秒为单位),具有较高的并发要求。
  • 时序数据,如物联网。

后续步骤

选择适合应用程序的最佳位置: