Prévia do material em texto
Tópicos Especiais em Sistema de Informação NoSQL Surgimento do NoSQL (Not Only SQL) O termo NoSQL foi criado em 1998 por Carlo Strozzi para nomear seu projeto open source, que tinha como objetivo ser uma implementação mais leve de um banco de dados relacional, porém sua principal característica era não expor a interface SQL. Em 2006, o artigo: BigTable: A Distributed Storage System for Structured Data, publicado pelo Google em 2006, traz novamente à tona o conceito NoSQL. O termo foi usado novamente em 2009 em uma conferência de defensores de bancos de dados não relacionais. O que é NoSQL (Not Only SQL) NOSQL é um movimento que promove soluções de armazenamento de dados não relacionais. Ele é composto por diversas ferramentas que, de forma particular e específica, resolvem problemas como tratamento de grandes volumes de dados, execução de consultas com baixa latência e modelos flexíveis de armazenamento de dados, como documentos XML ou JSON. Exemplos de bancos de dados NoSQL Por que você deve usar um bancos de dados NoSQL? Flexibilidade Escalabilidade Alto desempenho Altamente funcional Disponibilidade Tipos de bancos de dados NoSQL Chave-valor Documento Gráfico Em memória Pesquisar Tipos de bancos de dados NoSQL Chave-valor Os bancos de dados de chave-valor são altamente particionáveis e permitem escalonamento horizontal em escalas que outros tipos de bancos de dados não conseguem alcançar. Exemplos de uso como jogos, tecnologia de publicidade e IoT se encaixam particularmente bem ao modelo de dados de chave-valor. Tipos de bancos de dados NoSQL Documento Alguns desenvolvedores não pensam em seu modelo de dados em termos de linhas e colunas desnormalizadas. Normalmente, na camada do aplicativo, os dados são representados como um documento JSON, pois é mais intuitivo para os desenvolvedores pensarem em seu modelo de dados como um documento. Tipos de bancos de dados NoSQL Gráfico A finalidade de um banco de dados gráfico é facilitar a criação e a execução de aplicativos que funcionam com conjuntos de dados altamente conectados. Os casos típicos de uso de um banco de dados gráfico incluem redes sociais, mecanismos de recomendação, detecção de fraudes e gráficos de conhecimento. Tipos de bancos de dados NoSQL Em memória Aplicativos de jogos e tecnologia de publicidade têm como exemplos de uso placares de líderes, armazenamentos de sessões e análises em tempo real que exigem tempos de resposta em microssegundos e podem ter grandes picos de tráfego a qualquer momento. Tipos de bancos de dados NoSQL Pesquisar Muitos registros de saída de aplicativos ajudam os desenvolvedores a solucionar problemas. O Amazon Elasticsearch Service (Amazon ES) é construído especificamente para fornecer visualizações e análises quase em tempo real de dados gerados por máquina ao indexar, agregar e pesquisar registros e métricas semiestruturadas. Diferenças entre NoSQL e SQL Aplicação prática