Schemas do Mondrian
Um schema Mondrian é o modelo que transforma tabelas brutas de banco em um cubo analítico — a coisa que permite segmentar vendas por região e categoria de produto, fazer drill em tendências trimestrais ou rolar uma centena de hierarquias de dimensão em uma única consulta coerente. Cada cubo que você consulta no Saiku é sustentado por um.
O que vai em um schema
No coração do metamodelo do Mondrian-4 estão quatro conceitos:
- Cubos — cada cubo mapeia para uma ou mais tabelas de fato (e seus agregados) e segura as medidas que você pode agregar.
- Dimensões — os eixos pelos quais você segmenta: tempo, geografia, produto, cliente. Dimensões são construídas a partir de atributos (chaves e rótulos individuais) organizados em hierarquias (levels ordenados pelos quais você pode fazer drill).
- Medidas — os números que você agrega:
sum,count,distinct-count,min,max,avg. Calculated members permitem compô-los com fórmulas MDX. - Schema físico — o grafo de tabelas subjacente: quais colunas são primary keys, quais colunas são links de foreign key entre tabelas e quaisquer colunas calculadas derivadas de expressões SQL.
Shared dimensions podem ser definidas uma vez e reutilizadas em vários cubos. Roles de controle de acesso podem restringir visibilidade no nível de cubo, dimensão, hierarquia ou membro individual.
Dois formatos de autoria — um engine
O Saiku suporta schemas tanto em XML quanto em YAML. O engine vê o mesmo modelo de qualquer forma.
XML é o formato clássico do Mondrian — verboso mas familiar para quem já trabalhou com Mondrian antes.
YAML é a alternativa moderna. É mais legível, mais fácil de fazer diff em code review e fácil de anotar com comentários. O engine do Saiku autodetecta qualquer arquivo de catálogo cujo conteúdo comece com schema: e o roteia pelo conversor antes do resto do pipeline de carregamento. A conversão é sem perdas em ambas as direções.
Ambos os formatos são carregados de forma idêntica em runtime. Você pode converter entre eles a qualquer momento com a CLI.
O caminho no-code
Não está pronto para escrever arquivos de schema? O dashboard do Saiku oferece dois pontos de entrada no-code:
- Schema designer — descreva um cubo em uma frase, deixe o Claude propor o modelo, depois refine visualmente e salve como XML.
- Schemas — gerencie todos os seus schemas salvos, edite o XML diretamente e conecte schemas a conexões.
O que tem nesta seção
| Página | O que cobre |
|---|---|
| Schemas YAML | A referência completa de elementos YAML com exemplos |
| CLI | Converta e faça lint de arquivos de schema pela linha de comando |
| Estrutura do schema | Layout de topo de um schema Mondrian-4 |
| Cubos e medidas | Tabelas de fato, measure groups, tipos de agregador, calculated members |
| Dimensões | Atributos, hierarquias, levels, shared dimensions |
| Schema físico | Tabelas, chaves, links de foreign key, colunas calculadas |
| Avançado | Named sets, anotações, dicas de agregação |
| Time intelligence | Cálculos declarativos de YoY, PoP, YTD e rolling via <TimeCalc> |
| Conversão de moeda | Conversão FX declarativa por data efetiva via <CurrencyConversion> |
| Extensões | Formatters customizados, membros scripted, pontos de plug-in |
| Controle de acesso | Roles, grants, políticas de rollup |