... | ... | @@ -19,12 +19,12 @@ Esse arquivo descreve o esquema do banco de dados. Ele contém a definição das |
|
|
|
|
|
### Definindo agregações
|
|
|
|
|
|
Como regra geral, todas as fontes de dados (tabelas) no banco de dados se transformam em agregações. Recomendamos que o atributo **alias** da agregação seja colocado como o nome da tabela. Essas agregaçẽos também devem ter o atributo **origin** como `true`. O campo **file** deve receber o seguinte caminho `../database/views/{{name}}.sql` onde {{name}} é um identificador da tabela. Pode ser o mesmo que o *alias* ou uma sigla.
|
|
|
Como regra geral, todas as fontes de dados (tabelas) no banco de dados se transformam em agregações. Recomendamos que o atributo **alias** da agregação seja colocado como o nome da tabela. Essas agregações também devem ter o atributo **origin** como `true`. O campo **file** deve receber o seguinte caminho `../database/views/{{name}}.sql` onde {{name}} é um identificador da tabela. Pode ser o mesmo que o *alias* ou uma sigla.
|
|
|
|
|
|
Caso também existam agregações materializadas (*materialized views*) que são formadas a partir das outras agregações, ela pode ser colocada no Blendb també, colocando o valor origin como `false`.
|
|
|
Caso também existam agregações materializadas (*materialized views*) que são formadas a partir das outras agregações, elas podem ser colocadas no Blendb também, colocando o valor origin como `false`.
|
|
|
|
|
|
Agora os atributos de cada tabela devem ser transformados em métricas e dimensões. Observe que a relação entre dimensões e métricas não é necessariamente "de um para um".
|
|
|
Alguns atributos podem ser ignorados (pouco commum) e um atributo pode se desdobrar em várias métricas (bastante comum) e várias dimensões (menos comum).
|
|
|
Alguns atributos podem ser ignorados (pouco comum) e um atributo pode se desdobrar em várias métricas (bastante comum) e várias dimensões (menos comum).
|
|
|
|
|
|
### Definindo dimensões
|
|
|
|
... | ... | @@ -36,17 +36,17 @@ Métricas podem ser apenas valores numéricos, então qualquer valor que não se |
|
|
|
|
|
Um valor que se quer obter a partir de uma combinação de registros é uma métrica. A forma de combinação define a função de agregações.
|
|
|
|
|
|
Se quer-se combinar um valor de diferentes formas, cada uma delas caracterizara uma nova métrica. Por exemplo, considere um dado de uso de rede. Pode-se querer obter a banda média e um pico de rede. São duas formas diferentes de se combinar os dados, usando a função média e máximo respectivamente. Logo ao invés de uma métrica "uso de rede", não necessárias duas "uso de rede médio" "pico de rede (uso de rede máximo)".
|
|
|
Se quer-se combinar um valor de diferentes formas, cada uma delas caracterizara uma nova métrica. Por exemplo, considere um dado de uso de rede. Pode-se querer obter a banda média e um pico de rede. São duas formas diferentes de se combinar os dados, usando a função média e máximo respectivamente. Logo ao invés de uma métrica "uso de rede", são necessárias duas: "uso de rede médio" "pico de rede (uso de rede máximo)".
|
|
|
|
|
|
Em caso de dúvida, pode-se criar uma métrica para cada função de agregação (com exeção de `count`) para cada atributo considerado um métrica.
|
|
|
Em caso de dúvida, pode-se criar uma métrica para cada função de agregação (com exeção de `count`) para cada atributo considerado uma métrica.
|
|
|
|
|
|
Como regra geral, as tabelas possuem no máximo uma métrica `count` que conta a quantidade de linhas da tabela. Algumas podem não possuir, mas em caso de dúvida adicione. O nome , em geral é "Quantidade de alguma coisa". Por exemplo em um tabela onde cada registro é um contado e é registrado o uso de rede, pdoeria ser "Quantidade de contatos". Em uma tabela que descreve experimentos científicos, a métrica poderia ser "Quantidade de experimentos".
|
|
|
Como regra geral, as tabelas possuem no máximo uma métrica `count` que conta a quantidade de linhas da tabela. Algumas podem não possuir, mas em caso de dúvida adicione. O nome , em geral é "Quantidade de alguma coisa". Por exemplo em um tabela onde cada registro é um contador e é registrado o uso de rede, poderia ser "Quantidade de contatos". Em uma tabela que descreve experimentos científicos, a métrica poderia ser "Quantidade de experimentos".
|
|
|
|
|
|
### Nomeando métricas e dimensões
|
|
|
|
|
|
Atributos que representam o mesmo valor em diferentes tabelas (Atributos que normalmente são chaves estrangeiras) devem possuir **exatamente** o mesmo nome em todas as agregações.
|
|
|
|
|
|
Nomes de atributos como *id* ou *nome*, onde o valor é implicito pela tabela que ele se encontra são desencorajados. Como alternativa busca um nome significativo, ou adicione a localização no atributo como "id cliente", "nome do usuário". Lembre que no Blendb os atributos são da base como um todo. Atributos devem ter o mesmo nome **apenas** se forem o mesmo.
|
|
|
Nomes de atributos como *id* ou *nome*, onde o valor é implicito pela tabela que ele se encontra são desencorajados. Como alternativa busque um nome significativo, ou adicione a localização no atributo como "id cliente", "nome do usuário". Lembre que no Blendb os atributos são da base como um todo. Atributos devem ter o mesmo nome **apenas** se forem o mesmo.
|
|
|
|
|
|
### Definindo chaves
|
|
|
|
... | ... | @@ -55,7 +55,7 @@ Em geral a chave é pequena. Lembre-se que a chave afeta a capacidade do Blendb |
|
|
|
|
|
### Completando métricas e dimensões
|
|
|
|
|
|
Agora que todas as agregações foram definidas, basta adicionar ao arquivo de configuração a definição completa das métricas e dimensões definindo funções de agregação, relações e descrições. Use exatamente os mesmos nomes utilzados nas agregações.
|
|
|
Agora que todas as agregações foram definidas, basta adicionar ao arquivo de configuração a definição completa das métricas e dimensões definindo funções de agregação, relações e descrições. Use exatamente os mesmos nomes utilizados nas agregações.
|
|
|
|
|
|
## [Home](/)
|
|
|
* [Requisitos](passos/requisitos)
|
... | ... | |