Este tópico explica como execute operações de agregação para análise de dados. As operações de agregação calculam valores mínimo, máximo, soma, média, contagem, contagem distinta e percentis. É possível agrupar os resultados por valor de campo, intervalo, localização, filtros, histogramas ou datas, com a opção de execute consultas aninhadas para analisar as linhas de cada grupo. Também é possível combinar várias operações de agregação para crie consultas mais complexas.
Procedimento
A figura a seguir ilustra o procedimento completo de agregação.

O servidor consulta os dados que atendem às condições da consulta e realiza a agregação com base na solicitação. Por isso, o processamento de uma solicitação que exige agregação é mais complexo do que o de uma solicitação sem essa necessidade.
Recursos
A agregação oferece suporte a vários recursos semelhantes às funções SQL. Por exemplo, use a função MIN() para obter o valor mínimo, a função MAX() para o valor máximo, a função SUM() para a soma, a função AVG() para a média, a função COUNT() para a quantidade de linhas, a função COUNT(DISTINCT) para a contagem de linhas distintas, a função ANY_VALUE() para consultar as linhas obtidas a partir dos resultados de uma operação de agregação em cada grupo, e a função GROUP BY para agrupar os resultados da consulta. Além disso, você pode execute operações de agregação para obter estatísticas de percentil, agrupar resultados por valor de campo, intervalo, localização geográfica, filtro, histograma ou histograma de datas, agrupar resultados com base em vários campos e execute consultas aninhadas. A tabela a seguir descreve esses recursos.
|
Recurso |
Descrição |
|
Valor mínimo |
Método de agregação usado para retornar o valor mínimo de um campo, de forma semelhante à função MIN do SQL. |
|
Valor máximo |
Método de agregação usado para retornar o valor máximo de um campo, de forma semelhante à função MAX do SQL. |
|
Soma |
Método de agregação usado para retornar a soma de todos os valores de um campo numérico, de forma semelhante à função SUM do SQL. |
|
Valor médio |
Método de agregação usado para retornar a média de todos os valores de um campo numérico, de forma semelhante à função AVG do SQL. |
|
Contagem |
Método de agregação usado para retornar o número total de valores de um campo ou o número total de linhas em um índice de pesquisa, de forma semelhante à função COUNT do SQL. |
|
Contagem distinta |
Método de agregação usado para retornar o número de valores distintos de um campo, de forma semelhante à função COUNT(DISTINCT) do SQL. |
|
Estatísticas de percentil |
Um valor de percentil indica a posição relativa de um valor em um conjunto de dados. Por exemplo, ao coletar estatísticas sobre o tempo de resposta de cada solicitação durante a operação e manutenção (O&M) de rotina do seu sistema, você deve analisar a distribuição do tempo de resposta usando percentis como p25, p50, p90 e p99. |
|
Agrupar por valor de campo |
Método de agregação usado para agrupar os resultados da consulta com base nos valores dos campos. Valores idênticos são agrupados. O valor idêntico de cada grupo e a quantidade de valores idênticos em cada grupo são retornados. |
|
Aninhamento no GroupBy |
O GroupBy oferece suporte a aninhamento. Você pode execute operações de subagregação usando o GroupBy. |
|
Agrupar por vários campos |
Método de agregação usado para agrupar os resultados da consulta com base em vários campos. É possível usar tokens para realizar paginação. |
|
Agrupar por intervalo |
Método de agregação usado para agrupar os resultados da consulta com base nos intervalos de valores de um campo. Valores dentro de um intervalo específico são agrupados. A quantidade de valores em cada intervalo é retornada. |
|
Agrupar por localização geográfica |
Método de agregação usado para agrupar os resultados da consulta com base nas distâncias das localizações geográficas até um ponto central. Resultados dentro de intervalos de distância específicos são agrupados. A quantidade de valores em cada intervalo é retornada. |
|
Agrupar por filtro |
Método de agregação usado para filtrar os resultados da consulta e agrupá-los, obtendo a quantidade de resultados que correspondem a cada filtro. Os resultados são retornados na ordem em que os filtros são especificados. |
|
Consultar por histograma |
Método de agregação usado para agrupar os resultados da consulta com base em intervalos de dados específicos. Valores dentro do mesmo intervalo são agrupados. O intervalo de valores de cada grupo e a quantidade de valores em cada grupo são retornados. |
|
Consultar por histograma de datas |
Método de agregação usado para agrupar os resultados da consulta com base em intervalos de datas específicos. Valores dentro do mesmo intervalo são agrupados. O intervalo de valores de cada grupo e a quantidade de valores em cada grupo são retornados. |
|
Consultar as linhas obtidas a partir dos resultados de uma operação de agregação em cada grupo |
Após agrupar os resultados da consulta, você pode consultar as linhas em cada grupo. Este método funciona de forma semelhante à função ANY_VALUE(campo) no MySQL. |
|
Múltiplas agregações |
Você pode execute várias operações de agregação. Nota
Se você execute várias operações de agregação complexas ao mesmo tempo, o processamento pode levar muito tempo. |
Pré-requisitos
Uma instância do OTSClient foi inicializada. Para mais informações, consulte Initialize an OTSClient instance.
Uma tabela de dados foi crie e os dados foram gravados nela. Para mais informações, consulte crie data tables e Write data.
Um índice de pesquisa foi crie para a tabela de dados. Para mais informações, consulte crie search indexes.