Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ebben a rövid útmutatóban üzembe helyez egy alapszintű Azure Cosmos DB for Table alkalmazást a Pythonhoz készült Azure SDK használatával. Az Azure Cosmos DB for Table egy séma nélküli adattár, amely lehetővé teszi, hogy az alkalmazások strukturált táblaadatokat tároljanak a felhőben. Megtudhatja, hogyan hozhat létre táblákat, sorokat, és hogyan hajthat végre alapvető feladatokat az Azure Cosmos DB-erőforrásban a Pythonhoz készült Azure SDK használatával.
API-referenciadokumentáció | Könyvtár forráskódja | Csomag (PyPI) | Azure Developer CLI
Előfeltételek
- Azure Developer CLI
- Docker Desktop
- Python 3.12
Ha még nem rendelkezik Azure-fiókkal, első lépésként hozzon létre egy ingyenes fiókot.
A projekt inicializálása
Az Azure Developer CLI (azd) használatával hozzon létre egy Azure Cosmos DB for Table-fiókot, és helyezzen üzembe egy tárolóalapú mintaalkalmazást. A mintaalkalmazás az ügyfélkódtárat használja a mintaadatok kezelésére, létrehozására, olvasására és lekérdezésére.
Nyisson egy terminált egy üres könyvtárban.
Ha még nincs hitelesítve, jelentkezzen be az Azure Developer CLI-be a használatával
azd auth login. Kövesse az eszköz által megadott lépéseket a parancssori felületre való hitelesítéshez az ön által előnyben részesített Azure-hitelesítő adatokkal.azd auth loginA projekt inicializálására használható
azd init.azd init --template cosmos-db-table-python-quickstartAz inicializálás során konfiguráljon egy egyedi környezetnevet.
Az Azure Cosmos DB-fiók üzembe helyezése a(z)
azd uphasználatával. A Bicep-sablonok egy minta webalkalmazást is üzembe helyeznek.azd upA kiépítési folyamat során válassza ki az előfizetést, a kívánt helyet és a célerőforrás-csoportot. Várja meg, amíg a kiépítési folyamat befejeződik. A folyamat körülbelül öt percet vehet igénybe.
Az Azure-erőforrások kiépítése után a kimenet tartalmazza a futó webalkalmazás URL-címét.
Deploying services (azd deploy) (✓) Done: Deploying service web - Endpoint: <https://[container-app-sub-domain].azurecontainerapps.io> SUCCESS: Your application was provisioned and deployed to Azure in 5 minutes 0 seconds.A konzol URL-címével keresse meg a webalkalmazást a böngészőben. Figyelje meg a futó alkalmazás kimenetét.
Telepítse az ügyfélkönyvtárat
Az ügyfélkönyvtár a PyPi-on keresztül, mint azure-data-tables csomag érhető el.
Nyisson meg egy terminált, és keresse meg a
/srcmappát.cd ./srcHa még nincs telepítve, telepítse a csomagot a
azure-data-tableskövetkezővelpip install: .pip install azure-data-tablesNyissa meg és tekintse át az src/requirements.txt fájlt a
azure-data-tablesbejegyzés meglétének ellenőrzéséhez.
Könyvtárak importálása
Importálja az DefaultAzureCredential és TableServiceClient típusokat az alkalmazáskódba.
from azure.data.tables import TableServiceClient
from azure.identity import DefaultAzureCredential
Objektummodell
| Név | Leírás |
|---|---|
TableServiceClient |
Ez a típus az elsődleges ügyféltípus, és a fiókszintű metaadatok vagy adatbázisok kezelésére szolgál. |
TableClient |
Ez a típus a fiókon belüli tábla ügyfélét jelöli. |
Kódpéldák
A sablonban lévő mintakód egy nevű táblát cosmicworks-productshasznál. A cosmicworks-products táblázat olyan részleteket tartalmaz, mint a név, a kategória, a mennyiség, az ár, az egyedi azonosító és az egyes termékek értékesítési jelzője. A tároló egy egyedi azonosítót használ sorkulcsként és kategóriaként partíciókulcsként.
Az ügyfél hitelesítése
Ez a minta létrehoz egy új példányt a TableServiceClient típusból.
credential = DefaultAzureCredential()
client = TableServiceClient(endpoint="<azure-cosmos-db-table-account-endpoint>", credential=credential)
Asztalfoglalás
Ez a minta a TableClient típus egy példányát hozza létre a GetTableClient típus TableServiceClient függvényének használatával.
table = client.get_table_client("<azure-cosmos-db-table-name>")
Entitás létrehozása
Új entitások táblabeli létrehozásának legegyszerűbb módja egy új objektum létrehozása, amely biztosítja a kötelező RowKey és PartitionKey a tulajdonságok megadását.
new_entity = {
"RowKey": "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
"PartitionKey": "gear-surf-surfboards",
"Name": "Yamba Surfboard",
"Quantity": 12,
"Sale": False,
}
Entitás létrehozása a táblában a következő használatával upsert_entity: .
created_entity = table.upsert_entity(new_entity)
Entitás lekérése
Egy adott entitást lekérhet egy táblából a következő használatával get_entity: .
existing_entity = table.get_entity(
row_key="aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
partition_key="gear-surf-surfboards",
)
Entitások lekérdezése
Miután beszúrt egy entitást, lekérdezést is futtathat az adott szűrőnek megfelelő összes entitás lekéréséhez egy sztring OData-szűrő használatával query_entities .
category = "gear-surf-surfboards"
# Ensure the value is OData-compliant by escaping single quotes
safe_category = category.replace("'", "''")
filter = f"PartitionKey eq '{safe_category}'"
entities = table.query_entities(query_filter=filter)
A lekérdezés lapszámozott eredményeit ciklus for használatával elemezheti.
for entity in entities:
# Do something
Az erőforrások tisztítása
Ha már nincs szüksége a mintaalkalmazásra vagy erőforrásokra, távolítsa el a megfelelő üzembe helyezést és az összes erőforrást.
azd down