Introdução
Após a instalação de um nó único do Vertica e a criação de um banco de dados de demonstração, surge a necessidade de dados para testes e aprendizado. O Vertica oferece um banco de dados de exemplo chamado VMart, que permite inicializar um ambiente multi-schema completo para estudos de consultas e otimização.
Este guia assume que você já possui o Vertica instalado. Caso precise de ajuda com a instalação, consulte os artigos anteriores sobre conceitos básicos e configuração do Vertica.
Visão Geral do VMart
O Vertica inclui o banco de dados de exemplo VMart, um sistema multi-schema que seria utilizado por uma grande rede de supermercados para gerenciar informações sobre produtos, clientes, funcionários e operações tanto online quanto físicas. Este ambiente de demonstração permite criar, executar, otimizar e testar bancos de dados multi-schema.
Esquemas incluídos no VMart:
- public (criado automaticamente em qualquer novo banco de dados Vertica)
- store
- online_scripts
Localização e Arquivos do VMart:
A instalação via RPM posiciona os arquivos do esquema VMart no diretório /opt/vertica/examples/VMart_Schema. Este diretório contém scripts essenciais para configuração rápida.
| Script/Arquivo | Descrição |
|---|---|
| vmart_count_data.sql | Conta as linhas de todas as tabelas do banco de dados de exemplo. |
| vmart_define_schema.sql | Define a estrutura lógica e restrições de integridade referencial. |
| vmart_gen.cpp | Código fonte do gerador de dados em C++. |
| vmart_gen | Executável do gerador de dados. |
| vmart_load_data.sql | Carrega dados gerados usando o comando COPY. |
| vmart_queries.sql | Agrupamento de consultas para treinamento. |
| vmart_query_##.sql | Consultas individuais numeradas. |
| vmart_schema_drop.sql | Remove todas as tabelas do banco de exemplo. |
O Vertica oferece duas abordagens para instalação:
- Instalação rápida via script: Cria o banco de exemplo imediatamente, permitindo consultas instantâneas.
- Instalação avançada: Oferece maior controle sobre o processo de criação de esquemas, tabelas e carregamento de dados.
Ambas as métodos criam um banco de dados denominado VMart.
Instalação Simplificada
O script de instalação rápida está localizado em /opt/vertica/sbin/install_example. Ele cria o banco de dados na porta padrão 5433, gera dados, cria esquemas e carrega informações. Um script complementar delete_example permite remover o ambiente de teste.
Importante: Recomenda-se executar apenas um banco de exemplo por vez para evitar comportamentos inesperados. Verifique também o espaço disponível em disco antes de iniciar.
Criando o VMart via Script
Execute os seguintes passos:
1. Alternar para o usuário dbadmin:
su - dbadmin
2. Acessar o diretório de exemplos:
cd /opt/vertica/examples
pwd
3. Executar a instalação:
/opt/vertica/sbin/install_example VMart
O banco VMart será criado com sucesso. Agora você pode testar a conexão.
Conectando ao Banco VMart
Utilize a ferramenta admintools para estabelecer a conexão:
admintools
A senha pode permanecer vazia. Execute algumas consultas básicas para verificar o ambiente:
SELECT current_database();
\dn
\dt
Removendo o VMart
Para testar o processo de remoção e preparar o ambiente para a instalação avançada, execute:
cd /opt/vertica/examples
/opt/vertica/sbin/delete_example VMart
Os logs de instalação e remoção são gravados em /opt/vertica/examples/log.
Instalação Avançada
Antes de iniciar, certifique-se de que todos os bancos de dados em execução foram encerrados.
Preparação do Ambeinte
1. Mudar para o usuário dbadmin:
su - dbadmin
2. Acessar o diretório do esquema:
cd /opt/vertica/examples/VMart_Schema
Mantenha-se neste diretório durante todo o processo de configuração.
3. Eexcutar o gerador de dados:
./vmart_gen
Utilize os parâmetros padrão. Mais detalhes estão disponíveis no arquivo README.
4. Resolução de problemas:
Se o gerador apresentar erros, compile manualmente:
g++ vmart_gen.cpp -o vmart_gen
chmod +x vmart_gen
./vmart_gen
Criando o Banco de Dados
Utilize admintools para criar o banco:
admintools
Navegue até o menu de configuração Configuration Menu.
Defina as seguintes configurações:
- Nome do banco: VMart
- Senha: deixe vazia
- Configuração de nó único: use as opções padrão
- Localização dos arquivos de dados: padrão
- K-safe: padrão
Confirme as informações para iniciar a criação.
Testando a Conexão
Conecte-se ao banco recém-criado:
admintools
A senha permanece vazia. Verifique o estado atual:
SELECT current_database();
\dn
\dt
O banco VMart foi criado, mas os esquemas e tabelas ainda não foram definidos.
Criando Esquemas e Tabelas
O VMart inclui scripts SQL que representam consultas típicas de negócios. Execute o script vmart_define_schema.sql antes de carrregar os dados.
Este script executa as seguintes operações:
- Define dois esquemas: online_scripts e store
- Cria tabelas em ambos os esquemas
- Estabelece restrições necessárias
Conecte-se ao banco e execute:
\i vmart_define_schema.sql
Após a execução, verifique a criação:
\dn
\dt
Carregando Dados
Com esquemas e tabelas prontos, carregue os dados usando vmart_load_data.sql. Este script importa 15 arquivos de dados do diretório /opt/vertica/examples/VMart_Schema.
Execute o carregamento:
\i vmart_load_data.sql
O processo pode levar alguns minutos. Monitore o arquivo vertica.log para acompanhar o progresso.
Após o carregamento, teste com uma consulta:
\i vmart_query_01.sql
-- Consulta do arquivo:
SELECT fat_content
FROM (SELECT DISTINCT fat_content
FROM product_dimension
WHERE department_description
IN ('Dairy')) AS food
ORDER BY fat_content
LIMIT 5;
Esta consulta retorna os cinco produtos com menor teor de gordura do departamento de laticínios.
Conexão via Cliente vsql
Também é possível conectar-se via linha de comando usando o cliente vsql:
/opt/vertica/bin/vsql [-h host] [opções...] [nomedo_banco [usuario]]
| Parâmetro | Descrição |
|---|---|
| host | Endereço IPv4 ou IPv6 ou nome do host (opcional para servidor local). |
| opções | Opções da linha de comando do vsql. Use -w para bancos protegidos por senha. |
| nomedo_banco | Nome do banco de dados (padrão: nome do usuário Linux). |
| usuario | Nome do usuário do banco (padrão: usuário Linux atual). |
Exemplo de conexãoremota:
vsql -h 192.168.56.100 VMart dbadmin
Conclusão
O banco de exemplo VMart é uma ferramenta valiosa para aprendizado, similar ao usuário SCOTT no Oracle. Utilizando este ambiente, é possível economizar tempo significativo com geração de dados模拟ados e focar nos estudos de consultas e otimização no Vertica.