Примеры Azure Cosmos DB для NoSQL: Spring Data Azure Cosmos DB версии 5
ОБЛАСТЬ ПРИМЕНЕНИЯ: NoSQL
Внимание
Эти заметки о выпуске предназначены для spring Data Azure Cosmos DB версии 5. Здесь можно найти заметки о выпуске для версии 3 и версии 2.
Spring Data Azure Cosmos DB поддерживает только API для NoSQL.
Сведения о Spring Data в других API-интерфейсах Azure Cosmos DB см. в этих статьях:
Внимание
Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.
- Вы можете активировать преимущества подписчика Visual Studio— каждый месяц ваша подписка Visual Studio предоставляет вам кредиты, которые можно использовать для оплаты служб Azure.
Пробную версию Azure Cosmos DB можно использовать бесплатно, без подписки Azure и без и каких-либо обязательств. Кроме того, вы можете создать учетную запись Azure Cosmos DB категории "Бесплатный". Для этой учетной записи бесплатно предоставляются первые 1000 ЕЗ/с и 25 ГБ пространства в хранилище. Также можно использовать эмулятор Azure Cosmos DB, который доступен по URI https://localhost:8081
. Сведения о ключе для использования с эмулятором см. в этом разделе.
Последние примеры приложений, выполняющих операции CRUD и другие распространенные операции с ресурсами Azure Cosmos DB, включены в репозиторий GitHub azure-spring-boot-samples . Эта статья содержит:
- Ссылки на задачи в каждом из примеров файлов проектов Spring Data Azure Cosmos DB.
- Ссылки на соответствующие справочные материалы по API.
Необходимые условия
Чтобы запустить пример приложения, необходимы следующие компоненты:
- комплект разработчика Java 8;
- Spring Data Azure Cosmos DB версии 5
При необходимости можно использовать Maven, чтобы получить последние двоичные файлы Spring Data Azure Cosmos DB версии 3 для использования в этом проекте. Maven автоматически добавляет все необходимые зависимости. В противном случае можно непосредственно скачать зависимости, которые перечислены в файле pom.xml, и добавить их в путь сборки.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-spring-data-cosmos</artifactId>
<version>LATEST</version>
</dependency>
Запуск примеров приложений
Клонирование примера репозитория:
$ git clone https://github.com/Azure-Samples/azure-spring-boot-samples
$ cd cosmos/azure-spring-data-cosmos/spring3-samples/cosmos-quickstart-samples
Примеры можно запустить с помощью интегрированной среды разработки (Eclipse, IntelliJ или VS Code) или из командной строки с помощью Maven.
Необходимо задать эти переменные среды в application.properties.
cosmos.uri=${ACCOUNT_HOST}
cosmos.key=${ACCOUNT_KEY}
cosmos.secondaryKey=${SECONDARY_ACCOUNT_KEY}
dynamic.collection.name=spel-property-collection
# Populate query metrics
cosmos.queryMetricsEnabled=true
Это предоставит для примеров доступ на чтение и запись для вашей учетной записи, базы данных и контейнеров.
Интегрированная среда разработки может предоставить возможность выполнения примера кода Spring Data. В противном случае для выполнения примера можно использовать следующую команду терминала:
mvn spring-boot:run
Примеры документации CRUD
В файле samples показано, как выполнять следующие задачи. Сведения о документах Azure Cosmos DB перед выполнением следующих примеров см . в статье о работе с базами данных, контейнерами и элементами .
Задача | Справочник по API |
---|---|
Создание документа | CosmosRepository.save |
Чтение документа по идентификатору | CosmosRepository.derivedQueryMethod |
Удаление всех документов | CosmosRepository.deleteAll |
Примеры производных методов запроса
В файле samples показано, как выполнять следующие задачи. Чтобы узнать больше о запросах Azure Cosmos DB перед выполнением следующих примеров, ознакомьтесь со статьей Производные методы запросов Baeldung в Spring.
| Запрос документов | CosmosRepository.derivedQueryMethod |
Примеры пользовательских запросов
В файле samples показано, как выполнять следующие задачи с помощью грамматики SQL-запроса. Чтобы узнать больше об SQL-запросах в Azure Cosmos DB перед выполнением приведенных ниже примеров, ознакомьтесь со статьей о примерах SQL-запросов для Azure Cosmos DB.
Задача | Справочник по API |
---|---|
Запрос всех документов | Заметка к @Query |
Выполнение запроса на соответствие условию с использованием оператора равенства == | Заметка к @Query |
Выполнение запроса на несоответствие условию с использованием операторов != и NOT | Заметка к @Query |
Выполнение запроса с использованием операторов диапазона, таких как >, <, >=, <= | Заметка к @Query |
Выполнение запроса к строкам с использованием операторов диапазона | Заметка к @Query |
Выполнение запроса с использованием предложения ORDER BY | Заметка к @Query |
Создание запросов с помощью DISTINCT | Заметка к @Query |
Выполнение запроса с использованием агрегатных функций | Заметка к @Query |
Работа с вложенными документами | Заметка к @Query |
Выполнение запроса с использованием внутридокументных соединений | Заметка к @Query |
Выполнение запроса с использованием операторов string, math и array | Заметка к @Query |
Следующие шаги
Если вы планируете ресурсы для миграции в Azure Cosmos DB, Для планирования ресурсов можно использовать сведения об имеющемся кластере базы данных.
- Если вам известно только количество виртуальных ядер и серверов в существующем кластере баз данных, прочитайте об оценке единиц запроса на основе этих данных.
- Если вам известна стандартная частота запросов для текущей рабочей нагрузки базы данных, ознакомьтесь со статьей о расчете единиц запросов с помощью планировщика ресурсов Azure Cosmos DB