简介
假设你正在为某个在线零售商管理存储。 你需要一些工具来创建、更新和删除用户及产品数据。 还需具备查询数据的能力,以便作出业务或运营决策。
在本模块中,你将构建一个 Java 控制台应用程序,用于创建、更新和删除用户记录,并使用 Java 查询数据。 此模块将提供两个代码示例集 - 一个直接使用 Azure Cosmos DB Java SDK,另一个使用用于 Java 的 Spring Data 编程模型。
我们将使用 Maven 包管理器来创建项目结构和拉取依赖项。
为什么选择 Azure Cosmos DB?
假设有一家公司在云中管理其全球零售运营,它可能会受益于 Azure Cosmos DB。 该公司的工程师需要保证销售点 (POS) 设备可将数据持久保存到云数据库,且每个请求的响应时间较短。 该公司维护了库存存量的数据库。 需要确保此数据库高度可用(以避免客户不满)且全球分布(以确保客户在世界各地看到快速响应的网页)。
此外,公司的全球零售系统上的负载在一整年都会发生变化。 该公司知道,在零售假期前后的几周,其数据库的负载将达到高峰。 它正在寻找一种定价模型,按使用量付费,而不是为峰值使用量付费。
Azure Cosmos DB 是一个 NoSQL 云数据库,它提供关于延迟和可用性的性能服务级别协议 (SLA)。 它还提供统包全局分发,使用户能够与数据库的地理位置本地副本交互。 这些特征可满足零售公司的全球高可用性/低延迟方面的要求。 该公司通过用代码手动缩放数据库吞吐量或使用自动缩放吞吐量,有望仅为特定小时内消耗的服务吞吐量付费。
Azure Cosmos DB 是分片和复制的 NoSQL 数据库,可弹性启动足够多的物理计算机来处理应用程序的峰值数据库吞吐量,然后在不需要时释放该计算。 通过缩放计算机数量来处理负载的过程被称为“横向扩展”或“水平缩放”。
为了帮助用户开始使用 Azure Cosmos DB,本实验将指导开发基本的 Java 语言客户端。
学习目标
在此模块中,你将:
- 了解如何从 Java 应用程序向 Azure Cosmos DB 发送请求
- 创建应用程序以在 Azure Cosmos DB 中存储并查询数据
先决条件
- Java 编程语言知识
- 可选:熟悉 Spring Data 编程模型
- 具备在 Azure Cosmos DB 中创建和管理资源(包括创建和配置 Cosmos DB 帐户、数据库及容器)的经验
- 对以下工具的本地安装的了解达到初学者水平:Apache Maven、Git、Java JDK 8 或更高版本,以及 Java IDE 或文本编辑器