A maneira mais comum de se armazenar dados hoje em dia é por tabelas. Usualmente, esses dados são armazenados de forma que cada tabela contém um conjunto de dados de um mesmo contexto e uma coluna que permite interligá-la com outras tabelas. Esse tipo de modelo para bases de dados é chamado de Modelo Relacional, termo cunhado por Edgar Frank Codd em 1970.
O Zoho Analytics é uma plataforma de análise de dados projetada para lidar com essas bases de dados relacionais. Entretanto, antes de sair fazendo várias análises e métricas, é necessário efetuar alguns processos para explicitar qual a relação entre as tabelas e garantir que as colunas de pesquisa (lookup column) concordam umas com as outras.
Essas colunas de pesquisa nada mais são que o ponto de equivalência entre as tabelas. Elas têm algumas vantagens:
- Podem ser usadas para evitar dados duplicados.
- Servem como uma forma de segregar as métricas e dimensões da tabela.
- Permitem a definição de modelos familiares à análise de dados, como o modelo Estrela e o Modelo Floco-de-neve.
Cardinalidade
Antes de definir as colunas de pesquisa, é importante se ter consciência de qual o tipo de relação entre os dados. Esses tipos são chamados de cardinalidade. Existem 3 tipos:
- Um para um: para cada elemento na tabela A, existe uma única equivalência na tabela B, e vice-versa. Exemplo: cada pessoa possui um único CPF.
- Um para Muitos / Muitos para Um: em uma das tabelas o dado aparece sem repetição, enquanto na segunda se repete. Exemplo: cada cliente é atendido por um funcionário, mas um mesmo funcionário pode atender vários clientes.
- Muitos para Muitos: os dados se repetem em ambas as tabelas. Esse tipo gera repetição dos dados e deve ser usado com cuidado.
Auto-junção
O Zoho Analytics tem um sistema próprio para a junção das colunas chamado auto-junção. Uma vez que a relação está estabelecida no sistema, colunas de diferentes tabelas podem ser utilizadas para análise nos relatórios. Nesse tipo de junção, realiza-se uma junção à esquerda, mantendo todos os dados da tabela filha e apenas os dados com equivalência da tabela mãe.
Consultas
Uma outra forma de relacionar os dados de tabelas diferentes é utilizando as chamadas Tabelas de consulta (query tables). Esse tipo de junção é feita usando a sintaxe SQL SELECT, gerando uma tabela com os dados importados de acordo com a junção estabelecida.