N.World
Bancos de dados NoSQL

Bancos de dados NoSQL 3: Gráficos, séries cronológicas e repositórios de conteúdo

Depois de explicar o características gerais dos bancos de dados NoSQL e do tipos de valores-chave, documentários e colunaresNesta terceira parcela do banco de dados NoSQL, analisamos os tipos de gráficos, séries cronológicas e repositórios de conteúdo.

4. Bancos de dados NoSQL:Gráficos

Características gerais, vantagens e desvantagens

Estas bases de dados surgiram da necessidade de aplicar um ponto de vista diferente à análise de dados, na qual a conectividade entre objetos era mais importante do que os próprios objetos. Sob esta premissa, é lógico que os principais promotores destas bases de dados foram empresas baseadas neste tipo de análise, tais como as redes sociais. Assim, esses bancos de dados são baseados na definição de nós e links, onde nós são os objetos e links são as conexões, com a importante característica de que as relações predominantes são do tipo muitos a muitos. É aqui que os bancos de dados gráficos têm uma grande vantagem sobre os bancos de dados SQL, já que estes últimos exigiriam um grande número de uniões internas que multiplicariam os tempos de consulta, enquanto que através de gráficos estas consultas ocorrem em tempo real.

Dois tipos de estruturas de rede são geralmente distinguidos: hierárquica e de rede, e é importante enfatizar que, embora sejam um tipo separado de NoSQL, estas bases de dados são frequentemente estruturadas em um nível baixo como documento, objeto ou NoSQL misto.

As principais vantagens são baseadas nesta conectividade, já que, embora suas áreas de uso sejam muito pequenas, nos casos em que as relações são importantes, estes bancos de dados terão um desempenho superior a qualquer outro tipo de banco de dados NoSQL. Além disso, dada esta área específica de uso, eles freqüentemente têm suas próprias interfaces de usuário e linguagens de consulta focadas nestas análises de conectividade.

Por outro lado, suas vantagens tornam-se, em alguns casos, suas desvantagens. O principal problema é seu escopo específico de uso, sendo ineficaz para a maioria dos casos de uso na vida real (por outro lado, eles parecem cobrir uma necessidade específica e ninguém espera que eles tenham outros usos). Além disso, o desenvolvimento de linguagens proprietárias não unificadas (e muitas vezes diferentes do SQL) coloca um problema em termos de usabilidade e versatilidade, uma vez que elas requerem uma curva de aprendizado bastante lenta.

Possíveis aplicações

  1. Redes sociais.
  2. Cálculo de rotas rápidas e ótimas.
  3. Planejamento de rotas de transporte.

Principais bancos de dados gráficos

Neo4j (AC)

Código aberto Licenciado por GPL, mas com opções de versão Enterprise paga. Projetado para análise de dados, ele oferece a possibilidade de conectividade a múltiplos plataformas analíticas e BIbem como sua integração em diferentes plataformas e idiomas através de APIs. Linguagem proprietária, otimizada para consultas de conectividade. Permite transações ACID e a definição das funções do usuário através de soluções externas padronizadas (por exemplo, diretório ativo ou Kerberos). Por outro lado, não é tolerante a partições.

InfiniteGraph (AP)

DB comercialmente licenciada. Ele combina um banco de dados baseado em objetos (Objectivity DB) com um ambiente Spark baseado em HDFS para oferecer funcionalidades gráficas em um ambiente distribuído. Combinável com ferramentas Python e Spark (SparkML, SparkSQL, GraphX?) bem como com aplicações proprietárias (REST API).

5. Bancos de dados NoSQL: Séries cronológicas

Características gerais, vantagens e desvantagens

Como no caso dos gráficos, estas bases de dados surgiram para atender a uma necessidade específica: o armazenamento de séries temporais e consultas em tempo real. Como resultado, estas bases de dados são otimizadas para leitura e escrita em alta velocidade em tempo real, bem como para realizar operações de filtragem e agregação com base em carimbos de tempo. São geralmente compostos por um carimbo de tempo e um par de pares. valor chave representando cada uma das variáveis ou fatores dependentes, onde o carimbo de tempo funciona como uma chave e será tratado como um elemento ordinal discreto. Como nos gráficos, estes bancos de dados são freqüentemente estruturados em um nível baixo como os documentários SQL ou NoSQL.

Sua principal vantagem é que eles permitem consultas em tempo real e que, em maior ou menor grau, todos eles usam uma linguagem similar à SQL. Além disso, por serem otimizados para um tipo específico de dados, freqüentemente ocupam menos espaço que outros bancos de dados NoSQL quando armazenam os mesmos dados. Além disso, dado seu uso específico, quase todos eles já estão associados a software de visualização e aplicações de processamento e agregação integradas no próprio sistema. Por outro lado, eles têm uma grande desvantagem: não suportam dados não estruturados, e deve ser enfatizado que, para estruturas temporais simples, os sistemas de valores-chave são possivelmente mais eficientes.

Possíveis aplicações

  1. Monitoramento do desempenho do sistema em tempo real.
  2. Análise em fluxo contínuo.
  3. Monitoramento de sensores em tempo real.

Principais bases de dados das séries cronológicas

InfluxDB

Integrados na plataforma InfluxData, eles permitem a integração de diferentes ferramentas de ingestão e visualização de dados (por exemplo, Chronograf ou Grafana). Projetado principalmente para monitorar dados de desempenho através do Telegraf, mas tem conectores externos para usos mais gerais. Versão gratuita não escalonável e Enterprise oferecendo escalabilidade e suporte.

RRDtool

Banco de dados licenciado de código aberto. Permite a integração de roteiros em diferentes linguagens de programação e tem sua própria plataforma integrada de visualização gráfica. A forma de armazenamento de dados é circular, o que significa que quando alcança sua capacidade máxima, ele sobrescreve dados anteriores. Não escalável.

Kdb+

Pertencendo à KX, eles permitem a integração do DB com seu próprio software de visualização. Sistemas de replicação mestre-escravo e controles de acesso através de contas de usuário.

6.NoSQL bases de dados: repositórios de conteúdo

Características gerais, vantagens e desvantagens

Tipo muito específico de NoSQL, especializado no armazenamento de conteúdo heterogêneo e formatos não textuais, tais como arquivos digitais de imagem e vídeo. Suas possibilidades de uso são muito limitadas, e freqüentemente trabalham em associação com outro DB ao qual se complementam. Por outro lado, é importante que eles sejam otimizados para o armazenamento e uso de arquivos, como dados digitais ou versões de produtos, e que permitam múltiplas leituras ao mesmo tempo. Dado seu uso limitado, muitas vezes eles contêm interfaces amigáveis para não-programadores.

Principais repositórios de conteúdo

Apache Jackrabbit:

Repositório de dados aberto sob licença Apache. Criado para trabalhar com a tecnologia Java API (JCR) e armazenar conteúdo de forma escalável.

Modeshape

Como Jackrabbit, é um repositório aberto que complementa a JCR.

Na última edição, discutiremos o Bases de dados na nuvem.

Bosonit

Bosonit

Técnica e Dados

Você pode estar interessado em

Dê o salto
tecnológico.

Entre em contato conosco.