ContainerProxy Kelas
Antarmuka untuk berinteraksi dengan Kontainer DB tertentu.
Kelas ini tidak boleh diinstansiasi secara langsung. Sebagai gantinya get_container_client , gunakan metode untuk mendapatkan kontainer yang ada, atau create_container metode untuk membuat kontainer baru.
Kontainer dalam database Azure Cosmos DB SQL API adalah kumpulan dokumen, yang masing-masing direpresentasikan sebagai Item.
- Warisan
-
builtins.objectContainerProxy
Konstruktor
ContainerProxy(client_connection: CosmosClientConnection, database_link: str, id: str, properties: Dict[str, Any] = None)
Parameter
- client_connection
- database_link
- id
- properties
Variabel
- id
- str
ID (nama) kontainer
- session_token
- str
Token sesi untuk kontainer.
Metode
create_item |
Buat item dalam kontainer. Untuk memperbarui atau mengganti item yang ada, gunakan upsert_item metode . |
delete_all_items_by_partition_key |
Fitur hapus menurut kunci partisi adalah operasi latar belakang asinkron yang memungkinkan Anda menghapus semua dokumen dengan nilai kunci partisi logis yang sama, menggunakan Cosmos SDK. Operasi hapus menurut kunci partisi dibatasi untuk mengonsumsi paling banyak 10% dari total RU/dtk yang tersedia pada kontainer setiap detik. Ini membantu membatasi sumber daya yang digunakan oleh tugas latar belakang ini. |
delete_conflict |
Hapus konflik yang ditentukan dari kontainer. Jika konflik belum ada dalam kontainer, pengecualian akan dimunculkan. |
delete_item |
Hapus item yang ditentukan dari kontainer. Jika item belum ada dalam kontainer, pengecualian akan dinaikkan. |
get_conflict |
Dapatkan konflik yang diidentifikasi oleh konflik. |
get_throughput |
Dapatkan objek ThroughputProperties untuk kontainer ini. Jika tidak ada ThroughputProperties yang sudah ada untuk kontainer, pengecualian akan dimunculkan. :keyword Callable response_hook: Panggilan yang dipanggil dengan metadata respons. :returns: Throughput untuk kontainer. :raises ~azure.cosmos.exceptions.CosmosHttpResponseError: Tidak ada properti throughput untuk kontainer atau properti throughput tidak dapat diambil. |
list_conflicts |
Cantumkan semua konflik dalam kontainer. |
patch_item |
Metode provisi Menambal item yang ditentukan dengan operasi yang disediakan jika ada dalam kontainer. Jika item belum ada dalam kontainer, pengecualian akan dinaikkan. |
query_conflicts |
Mengembalikan semua konflik yang cocok dengan kueri tertentu. |
query_items |
Mengembalikan semua hasil yang cocok dengan kueri yang diberikan. Anda dapat menggunakan nilai apa pun untuk nama kontainer dalam klausa FROM, tetapi sering kali nama kontainer digunakan. Dalam contoh di bawah ini, nama kontainer adalah "produk," dan diberi alias sebagai "p" untuk referensi yang lebih mudah dalam klausul WHERE. token kelanjutan respons dalam respons kueri. Nilai yang valid adalah bilangan bulat positif. Nilai 0 sama dengan tidak melewati nilai (default tanpa batas). :kata kunci int max_integrated_cache_staleness_in_ms: Keusangan cache maks untuk cache terintegrasi di Milidetik. Untuk akun yang dikonfigurasi untuk menggunakan cache terintegrasi, menggunakan konsistensi Sesi atau Akhir, respons dijamin tidak akan lebih lama dari nilai ini. |
query_items_change_feed |
Dapatkan daftar item yang diurutkan yang diubah, dalam urutan di mana item tersebut diubah. |
read |
Baca properti kontainer. |
read_all_items |
Cantumkan semua item dalam kontainer. |
read_item |
Dapatkan item yang diidentifikasi berdasarkan item. |
read_offer |
Dapatkan objek ThroughputProperties untuk kontainer ini. Jika tidak ada ThroughputProperties yang sudah ada untuk kontainer, pengecualian akan dimunculkan. :keyword Callable response_hook: Panggilan yang dipanggil dengan metadata respons. :returns: Throughput untuk kontainer. :raises ~azure.cosmos.exceptions.CosmosHttpResponseError: Tidak ada properti throughput untuk kontainer atau properti throughput tidak dapat diambil. |
replace_item |
Mengganti item yang ditentukan jika ada dalam kontainer. Jika item belum ada dalam kontainer, pengecualian akan dinaikkan. |
replace_throughput |
Ganti throughput kontainer. Jika tidak ada ThroughputProperties yang sudah ada untuk kontainer, pengecualian akan dimunculkan. |
upsert_item |
Sisipkan atau perbarui item yang ditentukan. Jika item sudah ada dalam kontainer, item akan diganti. Jika item belum ada, item akan disisipkan. |
create_item
Buat item dalam kontainer.
Untuk memperbarui atau mengganti item yang ada, gunakan upsert_item metode .
create_item(body: Dict[str, Any], populate_query_metrics: bool | None = None, pre_trigger_include: str | None = None, post_trigger_include: str | None = None, indexing_directive: Any | None = None, **kwargs: Any) -> Dict[str, Any]
Parameter
- body
Objek seperti dikte yang mewakili item yang akan dibuat.
- pre_trigger_include
id pemicu yang akan digunakan sebagai pemicu pra-operasi.
- post_trigger_include
id pemicu yang akan digunakan sebagai pemicu pasca operasi.
- indexing_directive
Menunjukkan apakah dokumen harus dihilangkan dari pengindeksan.
- enable_automatic_id_generation
- bool
Aktifkan pembuatan id otomatis jika tidak ada id.
- session_token
- str
Token untuk digunakan dengan konsistensi Sesi.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Mengembalikan
Dict yang mewakili item baru.
Tipe hasil
Pengecualian
Item dengan ID yang diberikan sudah ada.
delete_all_items_by_partition_key
Fitur hapus menurut kunci partisi adalah operasi latar belakang asinkron yang memungkinkan Anda menghapus semua dokumen dengan nilai kunci partisi logis yang sama, menggunakan Cosmos SDK. Operasi hapus menurut kunci partisi dibatasi untuk mengonsumsi paling banyak 10% dari total RU/dtk yang tersedia pada kontainer setiap detik. Ini membantu membatasi sumber daya yang digunakan oleh tugas latar belakang ini.
delete_all_items_by_partition_key(partition_key: str | int | float | bool, **kwargs: Any) -> None
Parameter
- pre_trigger_include
- str
id pemicu yang akan digunakan sebagai pemicu pra-operasi.
- post_trigger_include
- str
id pemicu yang akan digunakan sebagai pemicu pasca operasi.
- session_token
- str
Token untuk digunakan dengan konsistensi Sesi.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Tipe hasil
Pengecualian
Item dengan ID yang diberikan sudah ada.
delete_conflict
Hapus konflik yang ditentukan dari kontainer.
Jika konflik belum ada dalam kontainer, pengecualian akan dimunculkan.
delete_conflict(conflict: str | Dict[str, Any], partition_key: Any, **kwargs: Any) -> None
Parameter
- conflict
ID (nama) atau dict yang mewakili konflik yang akan dihapus.
- partition_key
Kunci partisi untuk konflik yang akan dihapus.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Tipe hasil
Pengecualian
Konflik tidak berhasil dihapus.
Konflik tidak ada dalam kontainer.
delete_item
Hapus item yang ditentukan dari kontainer.
Jika item belum ada dalam kontainer, pengecualian akan dinaikkan.
delete_item(item: Dict[str, Any] | str, partition_key: Any, populate_query_metrics: bool | None = None, pre_trigger_include: str | None = None, post_trigger_include: str | None = None, **kwargs: Any) -> None
Parameter
- item
ID (nama) atau dict yang mewakili item yang akan dihapus.
- partition_key
Menentukan nilai kunci partisi untuk item.
- pre_trigger_include
id pemicu yang akan digunakan sebagai pemicu pra-operasi.
- post_trigger_include
id pemicu yang akan digunakan sebagai pemicu pasca operasi.
- session_token
- str
Token untuk digunakan dengan konsistensi Sesi.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Tipe hasil
Pengecualian
Item tidak berhasil dihapus.
Item tidak ada dalam kontainer.
get_conflict
Dapatkan konflik yang diidentifikasi oleh konflik.
get_conflict(conflict: str | Dict[str, Any], partition_key: Any, **kwargs: Any) -> Dict[str, Any]
Parameter
- conflict
ID (nama) atau dict yang mewakili konflik yang akan diambil.
- partition_key
Kunci partisi untuk konflik yang akan diambil.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Mengembalikan
Dict yang mewakili konflik yang diambil.
Tipe hasil
Pengecualian
Konflik yang diberikan tidak dapat diambil.
get_throughput
Dapatkan objek ThroughputProperties untuk kontainer ini.
Jika tidak ada ThroughputProperties yang sudah ada untuk kontainer, pengecualian akan dimunculkan. :keyword Callable response_hook: Panggilan yang dipanggil dengan metadata respons. :returns: Throughput untuk kontainer. :raises ~azure.cosmos.exceptions.CosmosHttpResponseError: Tidak ada properti throughput untuk kontainer atau
properti throughput tidak dapat diambil.
get_throughput(**kwargs: Any) -> ThroughputProperties
Tipe hasil
Pengecualian
Item dengan ID yang diberikan sudah ada.
list_conflicts
Cantumkan semua konflik dalam kontainer.
list_conflicts(max_item_count: int | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parameter
- max_item_count
Jumlah maksimum item yang akan dikembalikan dalam operasi enumerasi.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Mengembalikan
Iterable konflik (dicts).
Tipe hasil
Pengecualian
Item dengan ID yang diberikan sudah ada.
patch_item
Metode provisi Menambal item yang ditentukan dengan operasi yang disediakan jika ada dalam kontainer.
Jika item belum ada dalam kontainer, pengecualian akan dinaikkan.
patch_item(item: str | Dict[str, Any], partition_key: str | int | float | bool, patch_operations: List[Dict[str, Any]], **kwargs: Any) -> Dict[str, Any]
Parameter
ID (nama) atau dict yang mewakili item yang akan di-patch.
- filter_predicate
- str
filter kondisional untuk diterapkan pada operasi Patch.
- pre_trigger_include
- str
id pemicu yang akan digunakan sebagai pemicu pra-operasi.
- post_trigger_include
- str
id pemicu yang akan digunakan sebagai pemicu pasca operasi.
- session_token
- str
Token untuk digunakan dengan konsistensi Sesi.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Mengembalikan
Dict yang mewakili item setelah operasi patch dilalui.
Tipe hasil
Pengecualian
Operasi patch gagal atau item dengan id yang diberikan tidak ada.
query_conflicts
Mengembalikan semua konflik yang cocok dengan kueri tertentu.
query_conflicts(query: str, parameters: List[str] | None = None, enable_cross_partition_query: bool | None = None, partition_key: Any | None = None, max_item_count: int | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parameter
- query
Kueri Azure Cosmos DB SQL untuk dijalankan.
- parameters
Array parameter opsional ke kueri. Diabaikan jika tidak ada kueri yang disediakan.
- enable_cross_partition_query
Memungkinkan pengiriman lebih dari satu permintaan untuk menjalankan kueri di layanan Azure Cosmos DB. Lebih dari satu permintaan diperlukan jika kueri tidak terlingkup ke nilai kunci partisi tunggal.
- partition_key
Menentukan nilai kunci partisi untuk item.
- max_item_count
Jumlah maksimum item yang akan dikembalikan dalam operasi enumerasi.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Mengembalikan
Iterable konflik (dicts).
Tipe hasil
Pengecualian
Item dengan ID yang diberikan sudah ada.
query_items
Mengembalikan semua hasil yang cocok dengan kueri yang diberikan.
Anda dapat menggunakan nilai apa pun untuk nama kontainer dalam klausa FROM, tetapi sering kali nama kontainer digunakan. Dalam contoh di bawah ini, nama kontainer adalah "produk," dan diberi alias sebagai "p" untuk referensi yang lebih mudah dalam klausul WHERE.
token kelanjutan respons dalam respons kueri. Nilai yang valid adalah bilangan bulat positif. Nilai 0 sama dengan tidak melewati nilai (default tanpa batas). :kata kunci int max_integrated_cache_staleness_in_ms: Keusangan cache maks untuk cache terintegrasi di
Milidetik. Untuk akun yang dikonfigurasi untuk menggunakan cache terintegrasi, menggunakan konsistensi Sesi atau Akhir, respons dijamin tidak akan lebih lama dari nilai ini.
query_items(query: str, parameters: List[Dict[str, object]] | None = None, partition_key: Any | None = None, enable_cross_partition_query: bool | None = None, max_item_count: int | None = None, enable_scan_in_query: bool | None = None, populate_query_metrics: bool | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Mengembalikan
Iterable item (dicts).
Tipe hasil
Pengecualian
Item dengan ID yang diberikan sudah ada.
Contoh
Dapatkan semua produk yang belum dihentikan:
import json
for item in container.query_items(
query='SELECT * FROM products p WHERE p.productModel <> "DISCONTINUED"',
enable_cross_partition_query=True,
):
print(json.dumps(item, indent=True))
Kueri berparameter untuk mendapatkan semua produk yang telah dihentikan:
discontinued_items = container.query_items(
query='SELECT * FROM products p WHERE p.productModel = @model AND p.productName="Widget"',
parameters=[dict(name="@model", value="DISCONTINUED")],
)
for item in discontinued_items:
print(json.dumps(item, indent=True))
query_items_change_feed
Dapatkan daftar item yang diurutkan yang diubah, dalam urutan di mana item tersebut diubah.
query_items_change_feed(partition_key_range_id: str | None = None, is_start_from_beginning: bool = False, continuation: str | None = None, max_item_count: int | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parameter
- partition_key_range_id
Permintaan ChangeFeed dapat dijalankan terhadap rentang kunci partisi tertentu. Ini digunakan untuk memproses umpan perubahan secara paralel di beberapa konsumen.
- partition_key
kunci partisi di mana permintaan ChangeFeed ditargetkan.
- is_start_from_beginning
Dapatkan apakah umpan perubahan harus dimulai dari awal (benar) atau dari saat ini (false). Secara default, dimulai dari saat ini (false).
- continuation
e_tag nilai yang akan digunakan sebagai kelanjutan untuk membaca umpan perubahan.
- max_item_count
Jumlah maksimum item yang akan dikembalikan dalam operasi enumerasi.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Mengembalikan
Iterable item (dicts).
Tipe hasil
Pengecualian
Item dengan ID yang diberikan sudah ada.
read
Baca properti kontainer.
read(*, populate_partition_key_range_statistics: bool | None = None, populate_quota_info: bool | None = None, **kwargs)
Parameter
- populate_partition_key_range_statistics
- bool
Aktifkan statistik rentang kunci partisi yang dikembalikan di header respons.
- populate_quota_info
- bool
Aktifkan informasi kuota penyimpanan koleksi yang dikembalikan di header respons.
- session_token
- str
Token untuk digunakan dengan konsistensi Sesi.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Mengembalikan
Dict mewakili kontainer yang diambil.
Tipe hasil
Pengecualian
Dimunculkan jika kontainer tidak dapat diambil. Ini termasuk jika kontainer tidak ada.
read_all_items
Cantumkan semua item dalam kontainer.
read_all_items(max_item_count: int | None = None, populate_query_metrics: bool | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parameter
- max_item_count
Jumlah maksimum item yang akan dikembalikan dalam operasi enumerasi.
- session_token
- str
Token untuk digunakan dengan konsistensi Sesi.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
- max_integrated_cache_staleness_in_ms
- int
Keusangan cache maksimum untuk cache terintegrasi dalam milidetik. Untuk akun yang dikonfigurasi untuk menggunakan cache terintegrasi, menggunakan konsistensi Sesi atau Akhir, respons dijamin tidak akan lebih lama dari nilai ini.
Mengembalikan
Iterable item (dicts).
Tipe hasil
Pengecualian
Item dengan ID yang diberikan sudah ada.
read_item
Dapatkan item yang diidentifikasi berdasarkan item.
read_item(item: str | Dict[str, Any], partition_key: Any, populate_query_metrics: bool | None = None, post_trigger_include: str | None = None, **kwargs: Any) -> Dict[str, Any]
Parameter
- item
ID (nama) atau dict yang mewakili item yang akan diambil.
- partition_key
Kunci partisi untuk item yang akan diambil.
- post_trigger_include
id pemicu yang akan digunakan sebagai pemicu pasca operasi.
- session_token
- str
Token untuk digunakan dengan konsistensi Sesi.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
- max_integrated_cache_staleness_in_ms
- int
Keusangan cache maksimum untuk cache terintegrasi dalam milidetik. Untuk akun yang dikonfigurasi untuk menggunakan cache terintegrasi, menggunakan konsistensi Sesi atau Akhir, respons dijamin tidak akan lebih lama dari nilai ini.
Mengembalikan
Dict yang mewakili item yang akan diambil.
Tipe hasil
Pengecualian
Item yang diberikan tidak dapat diambil.
Contoh
Dapatkan item dari database dan perbarui salah satu propertinya:
item = container.read_item("item2", partition_key="Widget")
item["productModel"] = "DISCONTINUED"
updated_item = container.upsert_item(item)
read_offer
Dapatkan objek ThroughputProperties untuk kontainer ini. Jika tidak ada ThroughputProperties yang sudah ada untuk kontainer, pengecualian akan dimunculkan. :keyword Callable response_hook: Panggilan yang dipanggil dengan metadata respons. :returns: Throughput untuk kontainer. :raises ~azure.cosmos.exceptions.CosmosHttpResponseError: Tidak ada properti throughput untuk kontainer atau
properti throughput tidak dapat diambil.
read_offer(**kwargs: Any) -> Offer
Tipe hasil
Pengecualian
Item dengan ID yang diberikan sudah ada.
replace_item
Mengganti item yang ditentukan jika ada dalam kontainer.
Jika item belum ada dalam kontainer, pengecualian akan dinaikkan.
replace_item(item: str | Dict[str, Any], body: Dict[str, Any], populate_query_metrics: bool | None = None, pre_trigger_include: str | None = None, post_trigger_include: str | None = None, **kwargs: Any) -> Dict[str, Any]
Parameter
- item
ID (nama) atau dict yang mewakili item yang akan diganti.
- body
Objek seperti dikte yang mewakili item untuk diganti.
- pre_trigger_include
id pemicu yang akan digunakan sebagai pemicu pra-operasi.
- post_trigger_include
id pemicu yang akan digunakan sebagai pemicu pasca operasi.
- session_token
- str
Token untuk digunakan dengan konsistensi Sesi.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Mengembalikan
Dict yang mewakili item setelah penggantian dilalui.
Tipe hasil
Pengecualian
Penggantian gagal atau item dengan id yang diberikan tidak ada.
replace_throughput
Ganti throughput kontainer.
Jika tidak ada ThroughputProperties yang sudah ada untuk kontainer, pengecualian akan dimunculkan.
replace_throughput(throughput: int | ThroughputProperties | None, **kwargs: Any) -> ThroughputProperties
Parameter
- throughput
Throughput yang akan diatur (bilangan bulat).
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Mengembalikan
ThroughputProperties untuk kontainer, diperbarui dengan throughput baru.
Tipe hasil
Pengecualian
Tidak ada properti throughput untuk kontainer atau properti throughput yang tidak dapat diperbarui.
upsert_item
Sisipkan atau perbarui item yang ditentukan.
Jika item sudah ada dalam kontainer, item akan diganti. Jika item belum ada, item akan disisipkan.
upsert_item(body: Dict[str, Any], populate_query_metrics: bool | None = None, pre_trigger_include: str | None = None, post_trigger_include: str | None = None, **kwargs: Any) -> Dict[str, Any]
Parameter
- body
Objek seperti dikte yang mewakili item untuk diperbarui atau disisipkan.
- pre_trigger_include
id pemicu yang akan digunakan sebagai pemicu pra-operasi.
- post_trigger_include
id pemicu yang akan digunakan sebagai pemicu pasca operasi.
- session_token
- str
Token untuk digunakan dengan konsistensi Sesi.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- response_hook
- Callable
Panggilan yang dipanggil dengan metadata respons.
Mengembalikan
Dict yang mewakili item yang ditingkatkan.
Tipe hasil
Pengecualian
Item yang diberikan tidak dapat ditingkatkan.
Atribut
is_system_key
scripts
Azure SDK for Python