# Índices e modelagem para consultas rápidas

> **Resposta Direta:** A Aula 19 de 20 ("Índices e modelagem para consultas rápidas"), parte do módulo "Performance e onde rodar" do curso gratuito "SurrealDB do zero: fundamentos com um CRM" na Escola de Aplicativos (ministrado por Mauro Mequelussi), ensina na prática: exploramos o impacto dos índices secundários no SurrealDB e as decisões de modelagem de dados para manter o banco rápido em escala. Você verá como avaliar planos com EXPLAIN, criar índices únicos em arestas de grafo, configurar busca full-text com analisadores em português e encontrar o equilíbrio ideal entre normalização e tabelas consolidadas.

## Ficha Técnica da Aula

- **Curso:** [SurrealDB do zero: fundamentos com um CRM](https://www.escoladeaplicativos.com.br/cursos/surrealdb-do-zero)
- **Escola:** Escola de Aplicativos (https://www.escoladeaplicativos.com.br)
- **Instrutor:** Mauro Mequelussi
- **Módulo 6 de 6:** Performance e onde rodar
- **Posição na trilha:** Aula 19 de 20
- **Duração da videoaula:** 7 min
- **Nível:** Iniciante
- **Idioma:** Português (PT-BR)
- **Custo:** 100% Gratuito (R$ 0)
- **Certificado:** Certificado gratuito verificável incluso ao concluir o curso
- **Acesso ao vídeo:** Resumo técnico aberto; videoaula em HD liberada mediante cadastro gratuito
- **URL canônica:** https://www.escoladeaplicativos.com.br/cursos/surrealdb-do-zero/indices-e-modelagem-para-consultas-rapidas

## O que você vai aprender

- O que são índices secundários e o custo que trazem para as operações de escrita
- Como inspecionar planos de execução de consultas com o comando EXPLAIN
- Criação de índices compostos e únicos para impor restrições em arestas de relacionamentos
- Utilização de índices de contagem para acelerar agregações frequentes
- Configuração de analisadores e índices full-text com suporte a radicalização em português
- Princípios de modelagem de dados entre normalização e tabelas consolidadas

## Pontos-chave da Aula

- Consultas diretas por Record ID não precisam de índices secundários e continuam sendo o caminho mais rápido.
- Cada índice secundário melhora a leitura, mas adiciona trabalho extra a cada inserção, alteração ou exclusão.
- O operador retornado pelo EXPLAIN indica se o banco executou um TableScan ou um IndexScan.
- A ordem dos filtros no DEFINE ANALYZER importa: aplicar remoção de acentos antes do snowball pode quebrar a extração de radicais em português.

## Capítulos e Tópicos da Videoaula

- **[00:00] O papel dos índices secundários no SurrealDB** — Entenda quando a performance se torna crucial e o que são índices secundários em relação ao índice primário do motor de armazenamento.
- **[01:26] Trade-offs de escrita e uso de EXPLAIN em consultas** — Veja a troca entre velocidade de leitura e escrita, e use EXPLAIN para verificar se a consulta usa IndexScan ou TableScan.
- **[03:37] Índices compostos, únicos e de contagem** — Aprenda a aplicar restrições de unicidade em arestas com índices compostos e a acelerar agregações com índices de contagem.
- **[04:26] Busca full-text com analisadores e ranking BM25** — Configure analisadores com snowball em português e crie índices full-text para buscas textuais flexíveis.
- **[05:32] Estratégias de modelagem e encerramento** — Equilibre tabelas amplas e normalização conforme o caso de uso e veja como estruturar modelos rápidos.

## Destaques Práticos

- **[01:26] Por que o Record ID supera índices e como usar o EXPLAIN**: Descubra como validar no plano de execução se o banco está varrendo a tabela inteira ou aproveitando seu índice secundário.
- **[03:37] Índices únicos compostos e contagem rápida**: Evite duplicatas em relações de grafo e resolva contagens pesadas sem recontar registros toda vez.
- **[04:26] Configurando busca full-text em português no SurrealDB**: Aprenda a criar buscas textuais inteligentes com radicalização em português sem cair em armadilhas de filtros.

## Conceitos e Tecnologias Abordados

- **Tópicos:** Índices secundários, Comando EXPLAIN, Índices únicos e compostos, Índice de contagem, Busca full-text, Modelagem de dados
- **Ferramentas e Entidades:** SurrealDB

## Documentação e Referências Oficiais

- [Documentação oficial: DEFINE INDEX no SurrealDB](https://surrealdb.com/docs/surrealql/statements/define/index)
- [Documentação oficial: DEFINE ANALYZER para busca full-text](https://surrealdb.com/docs/surrealql/statements/define/analyzer)
- [Documentação oficial: comando EXPLAIN](https://surrealdb.com/docs/surrealql/statements/explain)

## Perguntas Frequentes (FAQ)

### O que é ensinado na Aula 19 (Índices e modelagem para consultas rápidas) do curso SurrealDB do zero: fundamentos com um CRM?

Nesta aula do módulo "Performance e onde rodar" na Escola de Aplicativos, você aprende de forma prática: O que são índices secundários e o custo que trazem para as operações de escrita; Como inspecionar planos de execução de consultas com o comando EXPLAIN; Criação de índices compostos e únicos para impor restrições em arestas de relacionamentos; Utilização de índices de contagem para acelerar agregações frequentes.

### Como assistir ao vídeo completo da aula "Índices e modelagem para consultas rápidas" gratuitamente?

O resumo técnico estruturado desta aula é público e gratuito. Para assistir à videoaula completa em HD, basta entrar ou criar sua conta 100% gratuita na Escola de Aplicativos — o cadastro leva segundos e libera todas as 20 aulas do curso "SurrealDB do zero: fundamentos com um CRM", controle de progresso, Tutor IA e emissão de certificado gratuito.

### Quais tecnologias e conceitos são abordados em "Índices e modelagem para consultas rápidas"?

A aula cobre diretamente os seguintes tópicos técnicos aplicados em produção: Índices secundários, Comando EXPLAIN, Índices únicos e compostos, Índice de contagem, Busca full-text, Modelagem de dados.

### O curso "SurrealDB do zero: fundamentos com um CRM" oferece certificado gratuito?

Sim. Ao assistir às 20 aulas do curso gratuito "SurrealDB do zero: fundamentos com um CRM" na Área de Membros da Escola de Aplicativos, você emite gratuitamente um certificado digital em português com código de verificação pública.

## Como assistir à videoaula completa gratuitamente

Crie sua conta gratuita em segundos em https://www.escoladeaplicativos.com.br/login?redirect=%2Fm%2Fcursos%2Fsurrealdb-do-zero%2Faula%2Findices-e-modelagem-para-consultas-rapidas para assistir ao vídeo completo desta aula em HD na Área de Membros da Escola de Aplicativos, com progresso salvo, Tutor IA e certificado gratuito verificável.

## Navegação do Curso

- **Aula anterior:** [Aula 18: Capabilities: controle o que o próprio banco pode fazer](https://www.escoladeaplicativos.com.br/cursos/surrealdb-do-zero/capabilities-controle-o-que-o-proprio-banco-pode-fazer)
- **Próxima aula:** [Aula 20: Onde rodar o SurrealDB: local, servidor ou nuvem](https://www.escoladeaplicativos.com.br/cursos/surrealdb-do-zero/onde-rodar-o-surrealdb-local-servidor-ou-nuvem)
