Share via


Funções Definidas pelo Utilizador

O Azure Cosmos DB é uma base de dados com vários modelos distribuída globalmente que suporta os modelos de dados de documentos, gráficos e chave-valor. O conteúdo nesta secção destina-se à gestão de recursos de funções definidas pelo utilizador (udfs) através da API sql através de REST.

Uma função definida pelo utilizador (UDF) é uma parte sem efeitos secundários da lógica da aplicação escrita em JavaScript. Permite que os programadores construam um operador de consulta, expandindo assim o núcleo da linguagem de consulta do Cosmos DB. Tal como os procedimentos armazenados, as UDFs residem nos limites de uma coleção, limitando assim a lógica da aplicação à coleção.

À semelhança dos procedimentos armazenados, o recurso UDFs tem um esquema fixo. A propriedade body contém a lógica da aplicação. O exemplo seguinte ilustra a construção JSON de uma função definida pelo utilizador.

{  
"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"  
}  
  
Propriedade Descrição
id Obrigatório. É uma propriedade settable do utilizador. É um nome exclusivo para identificar a UDF. O ID não pode exceder os 255 carateres.
corpo Obrigatório. É uma propriedade settable do utilizador. É o corpo da UDF.
_rid É uma propriedade gerada pelo sistema. O ID do recurso (_rid) é um identificador exclusivo que também é hierárquico de acordo com a pilha de recursos no modelo de recursos. É utilizado internamente para colocação e navegação do recurso UDF.
_ts É uma propriedade gerada pelo sistema. Especifica o último carimbo de data/hora atualizado do recurso. O valor é um carimbo de data/hora.
_self É uma propriedade gerada pelo sistema. É o URI endereçável exclusivo para o recurso.
_etag É uma propriedade gerada pelo sistema que especifica a etag de recursos necessária para o controlo de simultaneidade otimista.

Tarefas

Pode fazer o seguinte com funções definidas pelo utilizador:

Para obter informações sobre como funcionam os UDFs, incluindo a execução de uma UDF numa consulta, veja Programação do Cosmos DB: Procedimentos armazenados, acionadores e UDFs.

Consulte também