cosmosdb-sdk について
Azure Cosmos DB を .NET、Java、Python、Go、Spring Boot で使う開発者向けのリファレンススキルです。接続、可用性、並行性、診断に関する SDK の実践知識に加え、エミュレーターや VS Code ツールの設定を扱います。
主な機能
- 01複数言語向け Cosmos DB SDK の設定指針
- 02接続、可用性、障害対応
- 03ETag による並行制御と条件付き書き込み
- 04診断、リトライ、シリアライズ
- 05エミュレーターと VS Code 拡張機能の案内
活用シーン
- 01本番環境向け Cosmos DB クライアントの設定
- 02スロットリング、接続、診断問題の調査
- 03ローカルでのエミュレーター開発とテストの準備
- 04Spring Boot プロジェクトでの SDK 設定
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ azurecosmosdb/ cosmosdb-agent-kit --skill cosmosdb-sdkインストール後、Claude Code で/cosmosdb-sdkを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
AGENTS.mdmetadata.jsonREADME.mdrules/_sections.md_template.mdsdk-async-api.mdsdk-availability-strategy.mdsdk-circuit-breaker.mdsdk-conditional-create-etag.mdsdk-connection-mode.mdsdk-continuation-token-null-guard.mdsdk-diagnostics.mdsdk-dotnet-cosmos-package-id.mdsdk-dotnet-namespace-collision.mdsdk-emulator-ssl.mdsdk-etag-concurrency.mdsdk-excluded-regions.mdsdk-go-partition-key-metadata.mdsdk-java-content-response.mdsdk-java-cosmos-config.mdsdk-java-spring-boot-versions.mdsdk-local-dev-config.mdsdk-newtonsoft-dependency.mdsdk-patch-counter-increment.mdsdk-preferred-regions.mdsdk-python-async-deps.mdsdk-request-options-per-call.mdsdk-retry-429.mdsdk-serialization-enums.mdsdk-singleton-client.md詳細
Azure Cosmos DB SDK と開発者向けツール
.NET、Java、Python、Go、Spring Boot における Azure Cosmos DB SDK のベストプラクティスに加え、ローカル開発やエミュレーターのツールについて説明します。
適用するタイミング
.NET、Java、Python、Go、Spring Boot で Azure Cosmos DB SDK を構成する場合や、ローカル開発用ツールを設定する場合は、これらのガイドラインを参照してください。
ルール
SDK のベストプラクティス
- sdk-async-api - スループット向上のために非同期 API を使用する
- sdk-availability-strategy - 閾値ベースの可用性戦略(ヘッジング)を構成する
- sdk-circuit-breaker - パーティションレベルのサーキットブレーカーを構成する
- sdk-conditional-create-etag - 重複を防ぐため、条件付き作成には IfNoneMatchETag("*") を使用する
- sdk-connection-mode - 本番環境ではダイレクト接続モードを使用する
- sdk-continuation-token-null-guard - byPage の呼び出し前に、空の継続トークンをチェックする
- sdk-diagnostics - トラブルシューティングのために診断情報をログに記録する
- sdk-dotnet-cosmos-package-id - 廃止された Azure.Cosmos ではなく、Microsoft.Azure.Cosmos パッケージを使用する
- sdk-dotnet-namespace-collision - Microsoft.Azure.Cosmos 名前空間とドメインモデルの衝突を避ける
- sdk-emulator-ssl - Cosmos DB Emulator の SSL と接続モードを構成する
- sdk-etag-concurrency - 読み取り・変更・書き込み操作で、楽観的同時実行制御に ETag を使用する
- sdk-excluded-regions - 動的フェイルオーバーのために除外リージョンを構成する
- sdk-go-partition-key-metadata - 最新の Go Cosmos DB SDK バージョンを使用し、パーティションキーのメタデータを明示的に指定する
- sdk-java-content-response - CosmosItemResponse のラップを解除し、Java SDK でコンテンツ応答を有効にする
- sdk-java-cosmos-config - Spring Boot で Cosmos DB を初期化する際は、依存関係のある @Bean メソッドを使用する
- sdk-java-spring-boot-versions - Cosmos DB SDK に対応する Spring Boot と Java のバージョン
- sdk-local-dev-config - クラウド接続との競合を避けるため、ローカル開発環境を構成する
- sdk-newtonsoft-dependency - Newtonsoft.Json パッケージを明示的に参照する
- sdk-patch-counter-increment - カウンターをアトミックにインクリメントするには Patch API を使用する
- sdk-preferred-regions - 可用性のために優先リージョンを構成する
- sdk-python-async-deps - Python の非同期 SDK を使用する場合は aiohttp を含める
- sdk-request-options-per-call - 複数の createItem 呼び出し間で、同じ CosmosItemRequestOptions インスタンスを共有しない
- sdk-retry-429 - Retry-After を使用して 429 エラーを処理する
- sdk-serialization-enums - Cosmos SDK とアプリケーション層で一貫した列挙型のシリアル化を使用する
- sdk-singleton-client - CosmosClient をシングルトンとして再利用する
- sdk-spring-data-annotations - @Container、@PartitionKey、String ID を使用して、Spring Data Cosmos のエンティティにアノテーションを付ける
- sdk-spring-data-repository - CosmosRepository を正しく使用し、Iterable の戻り値型を処理する
開発者向けツール
- tooling-emulator-setup - ローカル開発とテストに Azure Cosmos DB Emulator を使用する
- tooling-vscode-extension - 日常的な確認と管理に Azure Cosmos DB VS Code 拡張機能を使用する
コメント
Markdown 対応