Pular para o conteúdo

Datasets de exemplo FoodMart

FoodMart é o clássico dataset de exemplo OLAP — uma rede de mercados fictícia com cinco anos de dados de vendas em 37 tabelas (customer, product, store, time_by_day, sales_fact_1997, etc.). É o mesmo dataset que a demo box do Saiku Cloud usa, dimensionado para iteração rápida (~10 MB comprimidos) e moldado para que cada recurso do Mondrian tenha algo para exercitar.

Esta página permite que você carregue o FoodMart na sua própria instância de teste de qualquer dialeto suportado, para conectá-lo ao Saiku Cloud pelo fluxo regular BYOC e seguir o passo a passo Cadastro e primeiro cubo de ponta a ponta. Sem migração de data warehouse necessária.

O que está incluído

Todos os bundles incluem:

  • Os dados — 37 tabelas carregadas com cinco anos de vendas, clientes, produtos, lojas, funcionários e estoque.
  • XML de schema Mondrian (foodmart.xml) — envie isso ao Schema designer do Saiku Cloud assim que seus dados estiverem carregados. O XML é neutro em relação a dialeto; funciona contra qualquer um dos bundles abaixo.
  • Um script de loader de referência ou runbook — por dialeto, já que cada data warehouse tem sua semântica própria de carga em lote.

O dump Postgres é a fonte canônica. Todo bundle de outro dialeto é traduzido mecanicamente dele (um pequeno script sed por dialeto — veja cada aba abaixo).

Bundles por dialeto

Postgres 12+ — carregue direto via pg_restore ou psql.

Terminal window
# Download (9.1 MB compressed, ~95 MB uncompressed)
curl -L https://raw.githubusercontent.com/spiculedata/saiku-cloud/develop/infra/foodmart-pg/init/01-foodmart.sql.gz \
-o foodmart.sql.gz
curl -L https://raw.githubusercontent.com/spiculedata/saiku-cloud/develop/infra/foodmart-pg/init/02-date-string-column.sql \
-o foodmart-date-string.sql
# Load (Postgres 12+; pipes the gzipped dump into psql)
createdb foodmart
gunzip -c foodmart.sql.gz | psql -d foodmart
psql -d foodmart -f foodmart-date-string.sql

A etapa 02-date-string-column.sql adiciona um ALTER TABLE que o schema time_by_day do Saiku espera — é uma coluna date_string de uma linha populada a partir de the_date. Sempre rode-a após a carga em lote.

Conecte com: Guia PostgreSQL.

Depois da carga: envie o schema Mondrian

Uma vez que o seu dialeto de escolha tenha o FoodMart carregado, o último passo é o XML do schema Mondrian. Ele mapeia suas tabelas físicas para cubos OLAP (Sales, Warehouse, HR, etc.):

  1. Baixe o XML do schema:

    Terminal window
    curl -L https://raw.githubusercontent.com/spiculedata/saiku-cloud/develop/infra/scripts/demo-seeds/foodmart.xml \
    -o foodmart.xml
  2. No Saiku Cloud, vá ao dashboard Schemas e clique em Enviar schema. Escolha foodmart.xml.

  3. O Schema designer faz uma checagem cruzada de cada referência <Table> contra sua conexão. Se a validação passar (check verde em cada cubo), seu FoodMart está pronto para consulta.

  4. Vá ao dashboard Analyze. Escolha qualquer cubo. Arraste [Measures].[Unit Sales] para a prateleira de linhas, [Time].[Year] para a prateleira de colunas. Você deve ver o ano 1997 = 266,773.

Esse é o mesmo número que cada dialeto produz — a prova canônica de que o Saiku Cloud está lendo seus dados corretamente.

Arquivo .duckdb empacotado para os impacientes

Se quiser zero tradução, zero setup, aqui está o arquivo FoodMart DuckDB pré-construído diretamente — o mesmo que a demo box do Saiku Cloud usa, ~12 MB, pronto para subir para o dashboard Arquivos:

Download direto: veja a página saiku-cloud releases para o foodmart-bundle-<version>.zip mais recente. O bundle contém cada artefato que esta página referencia — dump Postgres, arquivo DuckDB, XML de schema, scripts de tradução por dialeto — em um só lugar.