10 Vantagens de NoSQL sobre RDBMS

bancos de dados NoSQL não são um substituto direto para um sistema de gerenciamento de banco de dados relacional (RDBMS). Para muitos problemas de dados, porém, NoSQL é um jogo melhor do que um RDBMS.

Menor necessidade de ETL

NoSQL bancos de dados suportam o armazenamento de dados # 147 como é. # 148- lojas de valor Key dar-lhe a capacidade de armazenar estruturas de dados simples, enquanto os bancos de dados NoSQL documento fornecê-lo com a capacidade de lidar com uma gama de estruturas planas ou aninhadas.

A maioria dos dados de voo entre sistemas faz como uma mensagem. Normalmente, os dados leva um desses formatos:

  • Um objeto binário a ser passado através de um conjunto de camadas

  • Um documento XML

  • Um documento JSON

Ser capaz de lidar com estes formatos de forma nativa em uma variedade de bancos de dados NoSQL diminui a quantidade de código que você tem para converter o formato de dados de origem para o formato que precisa armazenar. Isto é chamado extrair, transformar e carregar (ETL).

Usando essa abordagem, você reduzir muito a quantidade de código necessário para começar a usar um banco de dados NoSQL. Além disso, porque você não tem que pagar por atualizações para este # 147-encanamento código # 148-, os custos de manutenção são significativamente diminuída.

Suporte para texto não estruturado

A grande maioria dos dados em sistemas corporativos é desestruturado. Muitos bancos de dados NoSQL pode lidar com indexação de texto não estruturado ou como um recurso nativo (MarkLogic Server) ou um conjunto integrado de serviços incluindo Solr ou ElasticSearch.

Ser capaz de gerenciar texto não estruturado aumenta muito informações e podem ajudar as organizações a tomar melhores decisões. Por exemplo, os usos avançados incluem suporte para vários idiomas com a pesquisa facetado, funcionalidade trecho, e apoio-decorrente palavra. As características avançadas incluem suporte para dicionários e enciclopédias.

Além disso, usando as ações de alerta de busca na ingest de dados, você pode extrair entidades de diretórios nomeados como essas listagem pessoas, lugares e organizações, que permite que os dados de texto para ser mais bem classificados, etiquetados, e procurou.

serviços de enriquecimento entidade como SmartLogic, OpenCalais, NetOwl e TEMIS Luxid que combinam informações extraídas com outras informações fornecer uma rica informações web intercalada e melhorar a análise e uso eficiente.

Capacidade de lidar com a mudança ao longo do tempo

Devido à natureza agnóstico esquema de bancos de dados NoSQL, eles são muito capazes de gerir a mudança - você não tem que reescrever as rotinas de ETL Se a estrutura de mensagens XML entre as mudanças de sistemas.

Alguns bancos de dados NoSQL levar isso um passo mais longe e fornecer um índice universal para a estrutura, valores e texto encontrado em informações. Microsoft DocumentDB e MarkLogic Servidor ambos fornecem essa capacidade.

Se a estrutura do documento muda, esses índices permitem que as organizações a utilizar a informação imediatamente, ao invés de ter que esperar por vários meses antes que você possa testar e reescrever sistemas.

Sem confiança em mágica SQL

Structured Query Language (SQL) é o idioma predominante usado para consultar os sistemas de gestão de banco de dados relacionais. Ser capaz de estruturar as consultas de modo que um bom desempenho ao longo dos anos se uma arte espinhoso. multitable junções complexas não são fáceis de escrever de memória.

Apesar de vários bancos de dados NoSQL apoiar o acesso SQL, eles fazem isso para compatibilidade com aplicativos existentes, como business intelligence ferramentas (BI). bancos de dados NoSQL apoiar as suas próprias línguas de acesso que possam interpretar os dados que estão sendo armazenados, em vez de exigir um modelo relacional no banco de dados subjacente.

Esta mentalidade mais desenvolvedor-centric para o design de bancos de dados e suas interfaces de programação de aplicativos (API) de acesso são a razão de bancos de dados NoSQL tornaram-se muito popular entre os desenvolvedores de aplicativos.

Os desenvolvedores de aplicativos não precisam saber o funcionamento interno e caprichos dos bancos de dados antes de usá-los. bancos de dados NoSQL capacitar os desenvolvedores a trabalhar sobre o que é exigido nas aplicações em vez de tentar forçar bancos de dados relacionais para fazer o que é necessário.

Capacidade de escalar horizontalmente em hardware commodity

bancos de dados NoSQL lidar com particionamento (sharding) De um banco de dados entre vários servidores. Assim, se seus requisitos de armazenamento de dados cresce muito, você pode continuar a adicionar servidores de baixo custo e conectá-los ao seu cluster de banco de dados (escala horizontal) Fazê-los trabalhar como um único serviço de dados.

Compare isso com o mundo banco de dados relacional, onde você precisa comprar hardware novo, mais poderoso e, portanto, mais caro para ampliar (escala vertical). Se você fosse para dobrar a quantidade de dados armazenados, você poderia facilmente quadruplicar o custo do hardware que você precisa.

Proporcionando durabilidade e alta disponibilidade de um banco de dados NoSQL, utilizando hardware e armazenamento de baixo custo é um dos principais ativos do NoSQL. Ser capaz de fazê-lo, proporcionando generosa escalabilidade para muitos usos, também não faz mal!

Amplitude da funcionalidade

A maioria dos bancos de dados relacionais suportam os mesmos recursos, mas de uma maneira um pouco diferente, então eles são todos semelhantes.

bancos de dados NoSQL, ao contrário, vêm em quatro tipos principais: chave-valor, colunar, documentos, e armazena triplos. Dentro desses tipos, você pode encontrar um banco de dados para atender às suas necessidades particulares (e peculiares!). Com tanta escolha, você é obrigado a encontrar um banco de dados NoSQL que vai resolver seus problemas de aplicação.

Suporte para múltiplas estruturas de dados

Muitas aplicações precisam de armazenamento de objetos simples, enquanto outros necessitam de armazenamento estrutura altamente complexa e inter-relacionados. bancos de dados NoSQL fornecer suporte para uma variedade de estruturas de dados.

  • valores simples binários, listas, mapas e cordas pode ser tratado em alta velocidade em lojas de valor-chave.

  • valores informações relacionadas podem ser agrupadas em famílias de colunas dentro clones Bigtable.

  • pai-filho estruturas hierárquicas altamente complexos podem ser gerenciados em bancos de dados de documentos.

  • Uma teia de informações inter-relacionadas pode ser descrito de forma flexível e relacionadas nas lojas triplos e gráfico.

escolha de fornecedor

A indústria NoSQL é inundado com bancos de dados, embora muitos tenham sido em torno de menos de dez anos. Por exemplo, IBM, Microsoft e Oracle só recentemente mergulhou seus dedos para este mercado. Consequentemente, muitos fabricantes estão alvejando as audiências particulares com a sua própria cerveja da inovação.

Abrir # 8208- # 93-source variantes estão disponíveis para a maioria dos bancos de dados NoSQL, que permite às empresas para explorar e começar a usar bancos de dados NoSQL com risco mínimo. Estas empresas podem então assumir seus novos métodos para uma plataforma de produção, utilizando ofertas empresariais.

Nenhum código legado

Porque eles são tão novos, bancos de dados NoSQL não têm código legado, o que significa que eles não precisam de fornecer suporte para plataformas de hardware antigos ou manter a funcionalidade estranho e pouco usado atualizado.

bancos de dados NoSQL desfrutar de um ritmo rápido em termos de desenvolvimento e maturação. Os novos recursos são lançados o tempo todo, e novos e recursos existentes são atualizados com freqüência (de modo vendedores NoSQL não precisa manter uma grande base de código). Na verdade, os novos grandes lançamentos ocorrem anualmente, em vez de cada três a cinco anos.

Execução de código ao lado dos dados

bancos de dados NoSQL foram criados na era do Hadoop. sistema de arquivos altamente distribuída de Hadoop (HDFS) e ambiente de processamento em lote (Mapa / Reduzir) sinalizou mudanças na forma como os dados são armazenados, consultados e processados.

Consultas e trabalho de processamento agora passar para vários servidores, o que proporciona elevados níveis de paralelismo para ambos ingerir e consulta cargas de trabalho. Ser capaz de calcular agregações ao lado do dados também se tornou a norma.

Você já não precisa de um sistema de armazenamento de dados separado, que é atualizado durante a noite. Com agregações rápidos e manipulação de consulta, a análise é passado para o banco de dados para execução junto aos dados, o que significa que você não tem que enviar uma grande quantidade de dados em uma rede para alcançar análise combinada localmente.

menu