Consultas analíticas são consultas realizadas em bancos de dados sobre uma enorme quantidade de dados, normalmente dados coletados ao longo do tempo. Essas consultas tem como objetivo principal **ajudar a tomar uma decisão** ou **ajudar a compreender um fenômeno**. Uma consulta nada mais é do que uma pergunta e a pessoa que realiza essas perguntas quer que elas sejam respondidas **rapidamente** e quer poder realizar **qualquer** pergunta, por mais **precisa** que ela seja.
### Granularidade
A precisão em uma pergunta indica o nível de detalhe que uma pergunta pode ser realizada. O dono de uma padaria, por exemplo, poderia se perguntar "Vale a pena abrir a padaria em fins de semana ?" .
Esse é um exemplo de uma pergunta que se transforma em uma consulta analítica. Para responder essa pergunta, ele teria que comparar o histótico das vendas realizadas em dias de semana e fins de semana. Entretanto, mais que isso ele precisa distinguir fins de semana dos outros dias.
Agora se ao armazenar os dados das vendas apenas o mês e registrado, é impossível responder a essa pergunta, não existem dados o suficiente para respondê-la, os dados são são **precisos** o suficiente.
A medida de precisão dos dados é chamada de **granularidade**.
Quanto maior a granularidade, mais precisa uma consulta pode ser, entretanto isso também aumenta a quantidade de dados armazenados. Quanto mais dados mais lenta a consulta, logo quanto mais precisa é a base de dados, mais lenta é a execução de consulta nela.
O problema então se resume a **Como responder perguntas de forma rápida e precisa?**