总结
在本模块中,你学习了用于对 NoSQL 数据库(如 Azure Cosmos DB)的数据进行建模和分区的关键概念和方法。 我们已将这些概念和方法应用到我们需要从关系数据库迁移到 NoSQL 数据库的电子商务应用程序。 你在本模块中学习的内容包括:
- 关系数据库与 NoSQL 数据库之间的差异:你了解了 Azure Cosmos DB 等 NoSQL 数据库具有水平可扩展的能力,而关系数据库通常具有垂直可扩展性。
- 使用访问模式对数据进行建模:你了解了应用程序对数据的访问模式在如何建模和分区数据方面发挥了重要作用。
- 嵌入与引用:你了解了何时应在同一文档中嵌入不同的实体,而不是何时应引用数据并将其存储为单独的行。
- 选择分区键:你了解了选择分区键的关键概念。 这些概念包括如何避免热分区,以及如何处理读取和写入操作都很多的工作负载。
- 建模查找或引用数据:最后,你了解了如何为用作其他数据的查找或引用的数据建模。
我们对关系数据库应用了上述全部概念和方法,来针对 NoSQL 数据库进行数据建模。 我们对 3 个客户实体进行了建模,并将它们嵌入到了一个文档中。 这减少了数据请求数,从而提高了性能。
我们还对产品类别和产品标记实体进行了建模。 而且,我们使用了一种特殊方法来减少小型查找表所需的整体存储和吞吐量。
你已经完成本模块,现在可以:
- 确定数据的访问模式。
- 应用数据模型和分区策略,以支持高效且可缩放的 NoSQL 数据库。