Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Dalam panduan memulai cepat ini, Anda mengimplementasikan Azure Cosmos DB dasar untuk aplikasi NoSQL menggunakan Azure SDK untuk Rust. Azure Cosmos DB for NoSQL adalah penyimpanan data tanpa skema yang memungkinkan aplikasi menyimpan data yang tidak terstruktur di cloud. Kueri data dalam kontainer Anda dan lakukan operasi umum pada item individual menggunakan Azure SDK untuk Rust.
Penting
Rust SDK untuk Azure Cosmos DB saat ini dalam pratinjau publik. Pratinjau ini disediakan tanpa kesepakatan tingkat layanan, dan kami tidak merekomendasikannya untuk penggunaan dalam lingkungan produksi. Fitur tertentu tidak didukung atau memiliki dukungan terbatas dengan kemampuan yang dibatasi.
Untuk informasi lebih lanjut, lihat Supplemental Terms of Use for Microsoft Azure Previews.
Dokumentasi referensi API | Kode sumber pustaka | Crate (Rust) | Azure Developer CLI
Prasyarat
- ** Docker Desktop
- Rust 1.80 atau yang lebih baru
Jika Anda tidak memiliki akun Azure, buat akun gratis sebelum memulai.
Memasang pustaka klien
Pustaka klien tersedia melalui Rust, sebagai peti azure_data_cosmos .
Jika belum diinstal, instal buat
azure_data_cosmosmenggunakancargo install.cargo add azure_data_cosmosSelain itu, pasang crate
azure_identityjika belum dipasang.cargo add azure_identity
Mengimpor pustaka
Impor DefaultAzureCredential, CosmosClient, PartitionKey, dan Query ke dalam jenis kode aplikasi Anda.
use azure_data_cosmos::{CosmosClient, PartitionKey, Query};
use azure_identity::DefaultAzureCredential;
Model objek
| Nama | Description |
|---|---|
CosmosClient |
Jenis ini adalah klien utama dan digunakan untuk mengelola metadata atau database di seluruh akun. |
DatabaseClient |
Jenis ini mewakili database dalam akun. |
ContainerClient |
Jenis ini terutama digunakan untuk melakukan operasi baca, perbarui, dan hapus pada kontainer atau item yang disimpan dalam kontainer. |
Contoh kode
- Autentikasi klien
- Mendapatkan database
- Ambil sebuah kontainer
- Buat sebuah item
- Dapatkan item
- Item pencarian
Kode sampel dalam templat menggunakan database bernama cosmicworks dan kontainer bernama products. Kontainer products berisi detail seperti nama, kategori, kuantitas, pengidentifikasi unik, dan bendera penjualan untuk setiap produk. Kontainer menggunakan /category properti sebagai kunci partisi logis.
Mengautentikasi klien
Sampel ini membuat instans baru dari CosmosClient dengan menggunakan CosmosClient::new dan mengautentikasi melalui sebuah instans DefaultAzureCredential.
let credential = DefaultAzureCredential::new()?;
let client = CosmosClient::new(&endpoint, credential, None)?;
Akses database
Gunakan client.database untuk mengambil database yang sudah ada bernama cosmicworks.
let database = client.database_client("cosmicworks");
Dapatkan kontainer
Ambil kontainer products yang sudah ada menggunakan database.container.
let container = database.container_client("products");
Membuat sebuah item
Buat jenis baru dengan semua anggota yang ingin Anda serialkan ke JSON. Dalam contoh ini, tipe memiliki pengidentifikasi unik, dan kolom untuk kategori, nama, kuantitas, harga, dan penjualan. Dapatkan serde::Serialize sifat pada jenis ini, sehingga dapat diserialisasikan ke JSON.
use serde::{Deserialize, Serialize};
#[derive(Serialize, Deserialize)]
pub struct Item {
pub id: String,
pub category: String,
pub name: String,
pub quantity: i32,
pub price: f64,
pub clearance: bool,
}
Buat item dalam kontainer menggunakan container.upsert_item. Metode ini secara efektif melakukan "upsert" pada item, menggantinya jika item tersebut sudah ada.
let item = Item {
id: "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb".to_string(),
category: "gear-surf-surfboards".to_string(),
name: "Yamba Surfboard".to_string(),
quantity: 12,
price: 850.00,
clearance: false,
};
let partition_key = PartitionKey::from(item.category.clone());
let partition_key = PartitionKey::from(item.category.clone());
container.upsert_item(partition_key, item.clone(), None).await?;
Bacalah sebuah item
Lakukan operasi baca titik dengan menggunakan bidang pengidentifikasi unik (id) dan kunci partisi. Gunakan container.ReadItem untuk mengambil item tertentu secara efisien.
let item_id = "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb";
let item_partition_key = "gear-surf-surfboards";
let response = container.read_item(item_partition_key, item_id, None).await?;
let item: Item = response.into_json_body().await?;
Buat kueri item
Lakukan kueri melalui beberapa item dalam kontainer menggunakan container.NewQueryItemsPager. Temukan semua item dalam kategori tertentu menggunakan kueri berparameter ini:
SELECT * FROM products p WHERE p.category = @category
let item_partition_key = "gear-surf-surfboards";
let query = Query::from("SELECT * FROM c WHERE c.category = @category")
.with_parameter("@category", item_partition_key)?;
let mut pager = container.query_items::<Item>(query, item_partition_key, None)?;
while let Some(page_response) = pager.next().await {
let page = page_response?.into_body().await?;
for item in page.items {
// Do something
}
}
Jelajahi sampel Anda
Gunakan ekstensi Visual Studio Code untuk Azure Cosmos DB untuk menjelajahi data NoSQL Anda. Anda dapat melakukan operasi database inti termasuk, tetapi tidak terbatas pada:
- Melakukan kueri menggunakan fitur scrapbook atau editor kueri
- Memodifikasi, memperbarui, membuat, dan menghapus item
- Mengimpor data massal dari sumber lain
- Mengelola database dan kontainer
Untuk informasi selengkapnya, lihat Cara menggunakan ekstensi Visual Studio Code untuk menjelajahi Azure Cosmos DB untuk data NoSQL.
Konten terkait
- Panduan Memulai Cepat .NET
- Panduan Memulai Cepat Node.js
- Mulai Cepat Java
- Mulai Cepat Python
- Mulai Cepat