... | ... | @@ -94,15 +94,21 @@ As seções *connection* e *struct* são simples de se preencher. Basta utilizar |
|
|
|
|
|
A seção esquema busca descrever o banco de dados e exige mais detalhes no preenchimento.
|
|
|
|
|
|
### 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.
|
|
|
|
|
|
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).
|
|
|
|
|
|
### Definindo dimensões
|
|
|
|
|
|
A princípio os atributos que descrevem características são colocados como dimensões. Em caso de dúvida coloque todos como dimensões e vá movendo para métricas aos poucos.
|
|
|
|
|
|
Métricas podem ser apenas valores numéricos, então qualquer valor que não seja numérico é necessariamente uma dimensão.
|
|
|
|
|
|
### Definindo métricas
|
|
|
|
|
|
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)".
|
... | ... | @@ -111,9 +117,17 @@ Em caso de dúvida, pode-se criar uma métrica para cada função de agregação |
|
|
|
|
|
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".
|
|
|
|
|
|
Atributos que representam o mesmo valor em diferentes tabelas (Atributos que normalmente são chaves estrangeiras) devem opssuir **exatamente** o mesmo nome em todas as agregações.
|
|
|
### 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.
|
|
|
|
|
|
### Definindo chaves
|
|
|
|
|
|
Por fim basta definir quais dimensões definem a chave. A pergunta que deve ser feita para definir uma chave é "Qual conjunto de dimensões define unicamente um registro ?".
|
|
|
Em geral a chave é pequena. Lembre-se que a chave afeta a capacidade do Blendb executar junções de agregações e não deve ser desnecessariamente grande ou os resultados obtidos podem ser comprometidos. |
|
|
\ No newline at end of file |
|
|
Em geral a chave é pequena. Lembre-se que a chave afeta a capacidade do Blendb executar junções de agregações e não deve ser desnecessariamente grande ou os resultados obtidos podem ser comprometidos.
|
|
|
|
|
|
### 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. |
|
|
\ No newline at end of file |