Visão geral do laboratório
A AnyCompany está desenvolvendo um novo aplicativo de banco de dados de filmes. O aplicativo permitirá que os usuários pesquisem filmes por título, ano em que foram lançados, atores do filme, classificação e assim por diante. A AnyCompany escolheu o Amazon DynamoDB como serviço de banco de dados para armazenar as informações sobre todos os filmes que o aplicativo terá como referências.
O Amazon DynamoDB é um NoSQL sem servidor, também conhecido como banco de dados não relacional que oferece suporte a modelos de dados de chave-valor e documentos. Com o DynamoDB, é possível começar aos poucos e rapidamente escalar de forma global à medida que cresce a sua base de aplicativos e usuários, pois ele tem a capacidade de suportar petabytes de dados e milhões de solicitações de leitura e gravação por segundo. A AWS gerencia o serviço DynamoDB, portanto, não há servidores para atualizar ou manter. Para obter mais informações, consulte Recursos do Amazon DynamoDB e Componentes principais do Amazon DynamoDB na seção Recursos adicionais.
Sua tarefa como engenheiro de banco de dados júnior recém-contratado é criar Índices secundários locais (LSIs - Local Secondary Indexes) e/ou Índices secundários globais (GSIs - Global Secondary Indexes) adequados para aprimorar a funcionalidade de pesquisa do aplicativo. Para este laboratório, um banco de dados de amostra chamado movies (filmes) será trabalhado. As tabelas do DynamoDB são incrivelmente flexíveis e não têm um “esquema” tradicional, como bancos de dados relacionais. Esta tabela de filmes tem uma chave de partição (HASH) de “ano” (Número) e uma chave de classificação (RANGE) de “título” (String). A lista completa de atributos que preenchem o banco de dados para este laboratório corresponde a estas características:
- ano – Número (chave de partição ou HASH)
- título – String (chave de Classificação ou RANGE)
- atores – String
- diretores – String
- gênero – String
- image_url – String
- enredo – String
- classificação – Número
- avaliação – Número
- data de lançamento – String
- running_time_secs – Número
Na prática, os dados dos atributos de atores e diretores foram formatados para serem legíveis como o tipo dict do python e, portanto, representam mais de um artista real. Por exemplo, o atributo atores para um determinado item é uma string como [{“S”: “John Doe”}, {“S”: “Jane Doe”}].
Tópicos abordados
Ao final deste laboratório, você será capaz de:
- Usar o SDK para criar Índices secundários locais (LSIs) e Índices secundários globais (GSIs)
- Usar o SDK para verificar os dados e retornar resultados filtrados
- Usar o SDK para realizar consultas avançadas de busca de dados, observando as diferenças de desempenho entre métodos
Pré-requisitos de conhecimentos técnicos
Para concluir este laboratório com êxito, é necessário estar familiarizado com a navegação básica do Console de Gerenciamento da AWS, com os conceitos de banco de dados NoSQL, com a linguagem de programação Python e estar confortável com a edição de scripts usando um editor de texto.
Lista de ícones
Vários ícones são usados neste laboratório para chamar a atenção para certos aspectos do guia. A lista a seguir explica a finalidade de cada ícone:
- O ícone do teclado especifica que você deve executar um comando.
- O ícone da área de transferência indica que você pode verificar a saída de um comando ou arquivo editado comparando-o com o exemplo fornecido.
- O ícone da nota especifica sugestões, dicas, orientações ou recomendações importantes.
- O ícone do círculo “i” especifica onde encontrar mais informações.
- A pessoa com um ícone de marca de seleção indica uma oportunidade de verificar seu conhecimento e testar o que você aprendeu.