Megosztás a következőn keresztül:


CosmosClient Osztály

Egy Azure Cosmos DB-fiók ügyféloldali logikai ábrázolása.

Ezzel az ügyfélprogramtal konfigurálhatja és végrehajthatja az Azure Cosmos DB szolgáltatásra irányuló kéréseket.

Azt javasoljuk, hogy az alkalmazás élettartama során egyetlen CosmosClient-példányt tartson fenn, amely lehetővé teszi a hatékony kapcsolatkezelést és -teljesítményt.

A CosmosClient inicializálása nehéz művelet – ne használjon inicializálási CosmosClient-példányokat hitelesítő adatokként vagy hálózati kapcsolat érvényesítéseként.

Új CosmosClient példányosítása.

Öröklődés
builtins.object
CosmosClient

Konstruktor

CosmosClient(url: str, credential: Any, consistency_level: str | None = None, **kwargs: Any)

Paraméterek

url
str
Kötelező

A Cosmos DB-fiók URL-címe.

credential
Union[str, Dict[str, str], TokenCredential]
Kötelező

Lehet a fiókkulcs vagy az erőforrás-jogkivonatok szótára.

consistency_level
str
alapértelmezett érték: None

A munkamenethez használandó konzisztenciaszint. Az alapértelmezett érték a Nincs (fiókszint). További információ a konzisztenciaszintekkel és a lehetséges értékekkel kapcsolatban: https://aka.ms/cosmos-consistency-levels

timeout
int

Abszolút időtúllépés másodpercben a HTTP-kérések és -válaszok kombinált feldolgozásához.

connection_timeout
int

A HTTP-kérés időtúllépése másodpercben.

connection_mode
str

Az ügyfél kapcsolati módja – jelenleg csak az átjárót támogatja.

proxy_config
ProxyConfiguration

Kapcsolatproxy konfigurálása.

ssl_config
SSLConfiguration

Kapcsolat SSL-konfigurációja.

connection_verify
bool

A kapcsolat ellenőrzéséhez az alapértelmezett érték Igaz.

connection_cert
str

Alternatív tanúsítvány a kapcsolat ellenőrzéséhez.

retry_total
int

Újrapróbálkozási kísérletek maximális száma.

retry_backoff_max
int

Az újrapróbálkozás maximális várakozási ideje másodpercben.

retry_fixed_interval
int

Rögzített újrapróbálkozási időköz ezredmásodpercben.

retry_read
int

A szoftvercsatornák olvasási újrapróbálkozási kísérleteinek maximális száma.

retry_connect
int

A csatlakozási hibák újrapróbálkozási kísérleteinek maximális száma.

retry_status
int

A hibaállapot-kódokkal kapcsolatos újrapróbálkozási kísérletek maximális száma.

retry_on_status_codes
list[int]

Az újrapróbálkozandó állapotkódok listája.

retry_backoff_factor
float

Az újrapróbálkozási kísérletek közötti várakozási idő kiszámításának tényezője.

enable_endpoint_discovery
bool

Engedélyezze a végpontfelderítést a georeplikált adatbázisfiókokhoz. (Alapértelmezett: Igaz)

preferred_locations
list[str]

A georeplikált adatbázisfiókok előnyben részesített helyei.

enable_diagnostics_logging
bool

Engedélyezze a CosmosHttpLogging szabályzatot. A működéshez a naplózóval együtt kell használni.

logger
Logger

A kérésdiagnosztikák gyűjtéséhez használandó naplózó. Az átadás ügyfélszinten (az összes kérés naplózásához) vagy egyetlen kérelemszinten adhatók át. A kérések naplózása info szinten fog folytatódni.

Példák

Hozza létre a Cosmos DB-ügyfél új példányát:


   from azure.cosmos import exceptions, CosmosClient, PartitionKey

   import os

   url = os.environ["ACCOUNT_URI"]
   key = os.environ["ACCOUNT_KEY"]
   client = CosmosClient(url, key)

Metódusok

create_database

Hozzon létre egy új adatbázist a megadott azonosítóval (névvel).

create_database_if_not_exists

Hozza létre az adatbázist, ha még nem létezik.

Ha az adatbázis már létezik, a rendszer a meglévő beállításokat adja vissza.

.. megjegyzés:: Ez a függvény nem ellenőrzi vagy frissíti a meglévő adatbázis-beállításokat, és nem kínál átviteli sebességet, ha eltérnek a átadotttól.

delete_database

Törölje az adatbázist a megadott azonosítóval (névvel).

from_connection_string

Hozzon létre egy CosmosClient-példányt egy kapcsolati sztring.

Ez lekérhető a Azure Portal. A választható kulcsszóargumentumok teljes listáját a CosmosClient konstruktorban találja.

get_database_account

Kérje le az adatbázisfiók adatait.

get_database_client

Egy meglévő adatbázis lekérése az azonosító (név) azonosítójával.

list_databases

A Cosmos DB SQL-adatbázisfiókban található adatbázisok listázása.

query_databases

Egy Cosmos DB SQL-adatbázisfiók adatbázisainak lekérdezése.

create_database

Hozzon létre egy új adatbázist a megadott azonosítóval (névvel).

create_database(id: str, populate_query_metrics: bool | None = None, offer_throughput: int | ThroughputProperties | None = None, **kwargs: Any) -> DatabaseProxy

Paraméterek

id
Kötelező

A létrehozandó adatbázis azonosítója (neve).

offer_throughput
Kötelező

Az ajánlathoz kiosztott átviteli sebesség.

session_token
str

Jogkivonat a munkamenet-konzisztenciához.

initial_headers
dict[str,str]

A kérés részeként elküldendő kezdeti fejlécek.

etag
str

ETag-érték vagy helyettesítő karakter (*). Annak ellenőrzésére szolgál, hogy az erőforrás megváltozott-e, és a match_condition paraméter által megadott feltételnek megfelelően működik-e.

match_condition
MatchConditions

Az etagen használandó egyezési feltétel.

response_hook
Callable

Meghívható a válasz metaadataival.

Válaszok

Az új adatbázist jelölő DatabaseProxy-példány.

Visszatérési típus

Kivételek

A megadott azonosítóval rendelkező adatbázis már létezik.

Példák

Hozzon létre egy adatbázist a Cosmos DB-fiókban:


   database_name = "testDatabase"
   try:
       database = client.create_database(id=database_name)
   except exceptions.CosmosResourceExistsError:
       database = client.get_database_client(database=database_name)

create_database_if_not_exists

Hozza létre az adatbázist, ha még nem létezik.

Ha az adatbázis már létezik, a rendszer a meglévő beállításokat adja vissza.

.. megjegyzés:: Ez a függvény nem ellenőrzi vagy frissíti a meglévő adatbázis-beállításokat, és nem kínál átviteli sebességet, ha eltérnek a átadotttól.

create_database_if_not_exists(id: str, populate_query_metrics: bool | None = None, offer_throughput: int | ThroughputProperties | None = None, **kwargs: Any) -> DatabaseProxy

Paraméterek

id
Kötelező

Az olvasni vagy létrehozni kívánt adatbázis azonosítója (neve).

populate_query_metrics
bool
Kötelező

Lekérdezési metrikák visszaadásának engedélyezése a válaszfejlécekben.

offer_throughput
int vagy <xref:azure.cosmos.ThroughputProperties.>
Kötelező

Az ajánlathoz kiosztott átviteli sebesség.

session_token
str

Jogkivonat a munkamenet-konzisztenciához.

initial_headers
dict[str,str]

A kérés részeként elküldendő kezdeti fejlécek.

etag
str

ETag-érték vagy helyettesítő karakter (*). Annak ellenőrzésére szolgál, hogy az erőforrás megváltozott-e, és a match_condition paraméter által megadott feltételnek megfelelően működik-e.

match_condition
MatchConditions

Az etagen használandó egyezési feltétel.

response_hook
Callable

Meghívható a válasz metaadataival.

Válaszok

Az adatbázist jelölő DatabaseProxy-példány.

Visszatérési típus

Kivételek

Az adatbázis olvasása vagy létrehozása nem sikerült.

delete_database

Törölje az adatbázist a megadott azonosítóval (névvel).

delete_database(database: str | DatabaseProxy | Dict[str, Any], populate_query_metrics: bool | None = None, **kwargs: Any) -> None

Paraméterek

database
str vagy dict(str, str) vagy DatabaseProxy
Kötelező

A törölni kívánt adatbázis tulajdonságait vagy DatabaseProxy példányát jelölő azonosító (név).

session_token
str

Jogkivonat a munkamenet-konzisztenciához.

initial_headers
dict[str,str]

A kérés részeként elküldendő kezdeti fejlécek.

etag
str

ETag-érték vagy helyettesítő karakter (*). Annak ellenőrzésére szolgál, hogy az erőforrás megváltozott-e, és a match_condition paraméter által megadott feltételnek megfelelően működik-e.

match_condition
MatchConditions

Az etagen használandó egyezési feltétel.

response_hook
Callable

Meghívható a válasz metaadataival.

Visszatérési típus

Kivételek

Ha az adatbázis nem törölhető.

from_connection_string

Hozzon létre egy CosmosClient-példányt egy kapcsolati sztring.

Ez lekérhető a Azure Portal. A választható kulcsszóargumentumok teljes listáját a CosmosClient konstruktorban találja.

from_connection_string(conn_str: str, credential: Any | None = None, consistency_level: str | None = None, **kwargs: Any) -> CosmosClient

Paraméterek

conn_str
str
Kötelező

A kapcsolati sztring.

credential
str vagy dict(str, str)
alapértelmezett érték: None

Alternatív hitelesítő adatok a kapcsolati sztring megadott kulcs helyett.

consistency_level
Optional[str]
alapértelmezett érték: None

A munkamenethez használandó konzisztenciaszint. Az alapértelmezett érték a Nincs (fiókszint).

Kivételek

A megadott azonosítóval rendelkező adatbázis már létezik.

get_database_account

Kérje le az adatbázisfiók adatait.

get_database_account(**kwargs: Any) -> DatabaseAccount

Paraméterek

response_hook
Callable

Meghívható a válasz metaadataival.

Válaszok

A Cosmos DB-adatbázisfiókot jelölő DatabaseAccount-példány .

Visszatérési típus

Kivételek

A megadott azonosítóval rendelkező adatbázis már létezik.

get_database_client

Egy meglévő adatbázis lekérése az azonosító (név) azonosítójával.

get_database_client(database: str | DatabaseProxy | Dict[str, Any]) -> DatabaseProxy

Paraméterek

database
str vagy dict(str, str) vagy DatabaseProxy
Kötelező

Az olvasni kívánt adatbázis tulajdonságait vagy DatabaseProxy-példányát jelölő azonosító (név).

Válaszok

A beolvasott adatbázist jelölő DatabaseProxy-példány .

Visszatérési típus

Kivételek

A megadott azonosítóval rendelkező adatbázis már létezik.

list_databases

A Cosmos DB SQL-adatbázisfiókban található adatbázisok listázása.

list_databases(max_item_count: int | None = None, populate_query_metrics: bool | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]

Paraméterek

max_item_count
int
Kötelező

Az enumerálási műveletben visszaadandó elemek maximális száma.

session_token
str

Jogkivonat a munkamenet-konzisztenciához.

initial_headers
dict[str,str]

A kérés részeként elküldendő kezdeti fejlécek.

response_hook
Callable

Meghívható a válasz metaadataival.

Válaszok

Az adatbázistulajdonságok (diktálások) iterálása.

Visszatérési típus

Kivételek

A megadott azonosítóval rendelkező adatbázis már létezik.

query_databases

Egy Cosmos DB SQL-adatbázisfiók adatbázisainak lekérdezése.

query_databases(query: str | None = None, parameters: List[Dict[str, Any]] | None = None, enable_cross_partition_query: bool | None = None, max_item_count: int | None = None, populate_query_metrics: bool | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]

Paraméterek

query
str
Kötelező

A végrehajtandó Azure Cosmos DB SQL-lekérdezés.

parameters
List[Dict[str, Any]]
Kötelező

Nem kötelező paramétertömb a lekérdezéshez. Figyelmen kívül hagyja, ha nincs megadva lekérdezés.

enable_cross_partition_query
bool
Kötelező

Engedélyezze az olyan lekérdezések vizsgálatát, amelyeket nem lehetett indexelésként kiszolgálni, a rendszer letiltotta a kért elérési utakat.

max_item_count
int
Kötelező

Az enumerálási műveletben visszaadandó elemek maximális száma.

session_token
str

Jogkivonat a munkamenet-konzisztenciához.

initial_headers
dict[str,str]

A kérés részeként elküldendő kezdeti fejlécek.

response_hook
Callable

Meghívható a válasz metaadataival.

Válaszok

Az adatbázistulajdonságok (diktálások) iterálása.

Visszatérési típus

Kivételek

A megadott azonosítóval rendelkező adatbázis már létezik.