Share via


Felhasználó által definiált függvények

Az Azure Cosmos DB egy globálisan elosztott többmodelles adatbázis, amely támogatja a dokumentum-, gráf- és kulcs-érték adatmodelleket. Ez a szakasz a felhasználó által definiált függvényerőforrások (udfs) REST-en keresztüli SQL API-val történő kezelésére használható.

A felhasználó által definiált függvény (UDF) egy JavaScriptben írt, mellékhatásmentes alkalmazáslogika. Lehetővé teszi, hogy a fejlesztők létrehoznak egy lekérdezési operátort, így bővítve a Cosmos DB lekérdezési nyelvének magját. A tárolt eljárásokhoz hasonlóan az UDF-ek is egy gyűjtemény határain belül élnek, így az alkalmazáslogikát a gyűjteményre ruházták.

A tárolt eljárásokhoz hasonlóan az UDF-erőforrás rögzített sémával rendelkezik. A body tulajdonság tartalmazza az alkalmazás logikáját. Az alábbi példa egy felhasználó által definiált függvény JSON-szerkezetét szemlélteti.

{  
"id":"simpleTaxUDF",  
"body": "  
function tax(income) {  
        if(income == undefined)   
            throw 'no input';  
        if (income < 1000)   
            return income * 0.1;  
        else if (income < 10000)   
            return income * 0.2;  
        else  
            return income * 0.4;  
    }  
",  
"_rid":"hLEEAI1YjgcBAAAAAAAAgA==",  
"_ts":1408058682,  
"_self":"dbs\/hLEEAA==\/colls\/hLEEAI1Yjgc=\/udfs\/hLEEAI1YjgcBAAAAAAAAgA==\/",  
"_etag":"00004100-0000-0000-0000-53ed453a0000"  
}  
  
Tulajdonság Leírás
id Kötelező. Ez egy felhasználó által beállított tábla tulajdonság. Ez egy egyedi név az UDF azonosításához. Az azonosító nem haladhatja meg a 255 karaktert.
Szervezet Kötelező. Ez egy felhasználó által beállított tábla tulajdonság. Ez az UDF törzse.
_Megszabadulni Ez egy rendszer által létrehozott tulajdonság. Az erőforrás-azonosító (_rid) egy egyedi azonosító, amely szintén hierarchikus az erőforrásmodell erőforrás-vermében. Belsőleg használják az UDF-erőforrás elhelyezésére és navigációjára.
_Ts Ez egy rendszer által létrehozott tulajdonság. Meghatározza az erőforrás utolsó frissített időbélyegét. Az érték egy időbélyeg.
_Önálló Ez egy rendszer által létrehozott tulajdonság. Ez az erőforrás egyedi címezhető URI-ja.
_Etag Ez egy rendszer által létrehozott tulajdonság, amely meghatározza az optimista egyidejűség-vezérléshez szükséges erőforrás-etaget.

Feladatok

A felhasználó által definiált függvényekkel a következőket teheti:

Az UDF-ek működéséről, beleértve az UDF-ek lekérdezésben való végrehajtását is, tekintse meg a Cosmos DB programozása: Tárolt eljárások, eseményindítók és UDF-ek című témakört.

Lásd még: