10 NoSQL Equívocos

NoSQL é um mercado em rápida evolução com os produtos em mutação constante. Tendo tantos bancos de dados NoSQL disponíveis é uma faca de dois gumes. Com tantas diferenças lá fora, equívocos comuns formar e tornar-se lore.

NoSQL é um único tipo de base de dados

NoSQL é um termo genérico para uma variedade de tipos de banco de dados que exibem abordagens de arquitetura comuns. Estas bases de dados não se destinam a tabela relacionada, linhas e colunas de dados. Eles são altamente distribuída, o que significa que os dados são distribuídos por vários servidores, e eles são tolerantes com as mudanças na estrutura de dados (ou seja, eles são esquema agnóstico).

Você pode encontrar vários tipos de bancos de dados sob a bandeira NoSQL:

  • lojas de valores-chave fornecem armazenamento fácil e rápida de dados simples através do uso de uma chave.

  • lojas de coluna oferecem suporte para tabelas muito largas, mas não para relações entre tabelas.

  • lojas documento de suporte JSON e / ou XML estruturas hierárquicas.

  • lojas triplos (e gráfico) fornecem a mesma flexibilidade de relacionamentos que documentam bancos de dados NoSQL fornecer para gravar estruturas.

bancos de dados NoSQL não são ACID-compliant

cumprimento ACID é o padrão ouro da segurança de dados. Ao assegurar que as operações são atômicas, exibições de dados são consistentes, operações não interferem uns com os outros, e os dados são duradoura salvos em disco, você proteger seus dados. As pessoas muitas vezes pensam bancos de dados NoSQL não fornecem o cumprimento ACID.

Muitos bancos de dados NoSQL prestar apoio ACID completa em clusters. MarkLogic Server, OrientDB, Aerospike e Hypertable são totalmente ACID-compliant, fornecendo tanto totalmente serializado ou leia-commit cumprimento ACID.

Muitos outros bancos de dados NoSQL pode fornecer consistência ACID-like usando configurações sensatas no código do cliente. Isto envolve tipicamente uma Quorum ou Todos definição para ambos os ler e escrever operações. Esses bancos de dados incluem Riak, MongoDB e Microsoft DocumentDB.

bancos de dados NoSQL perder dados

Este equívoco ocorre quando bancos de dados NoSQL são usados ​​incorretamente ou quando os produtos menos maduros são utilizados. Alguns produtos NoSQL são menos maduros, tendo apenas sido em torno de menos de cinco anos, para que eles não desenvolveram a prevenção de perda de dados apresenta ainda.

A garantia de durabilidade em conformidade ACID é vital para os sistemas empresariais e bancos de dados NoSQL ACID-compliant fornecer essa garantia. Portanto, você tem a garantia de que nenhum dado é perdido uma vez que o banco de dados confirma os dados são salvos.

Além disso, eventualmente, bases de dados consistentes também pode fornecer durabilidade de dados através do uso cuidadoso de um write ahead log (WAL). Muitos bancos de dados NoSQL fornecer esse recurso.

bancos de dados NoSQL não estão prontos para aplicativos corporativos de missão crítica

Pelo contrário, muitas organizações estão usando bancos de dados NoSQL para cargas de trabalho de missão crítica, incluindo o seguinte:

  • Defesa e inteligência agências armazenar e compartilhar informações

  • As empresas de mídia que armazenam todos os seus ativos digitais para publicação e compras em bancos de dados NoSQL

  • As empresas de mídia oferecem catálogos de metadados pesquisáveis ​​para o seu vídeo e mídia de áudio

  • Bancos usando bancos de dados NoSQL como lojas comerciais primária ou back office anti-fraude e sistemas de avaliação de risco

  • As agências governamentais que utilizam bancos de dados NoSQL como a parte traseira principal termina para os seus sistemas de cuidados de saúde

Estes não são pequenos sistemas ou caches simples para sistemas relacionais. São casos em que NoSQL é bem adequado. Claro, alguns bancos de dados NoSQL são mais pronto para sistemas corporativos do que outros.

bancos de dados NoSQL não são seguros

Não tão! Muitos bancos de dados NoSQL agora fornecer registro de nível e segurança even-item de nível de dados (celular). Microsoft DocumentDB, MarkLogic Server, OrientDB, AllegroGraph e Accumulo todos fornecem um controle refinado com base em funções de acesso (RBAC) para registros de acesso armazenados dentro desses bancos de dados NoSQL.

Muitos bancos de dados NoSQL oferecer integração de Lightweight Directory Access Protocol existentes (LDAP), Kerberos e sistemas de segurança baseados em certificado. Suporte para criptografia sobre o fio em todas as comunicações cliente-servidor e comunicações entrenós dentro de um cluster, também é fornecida por esses bancos de dados.

Alguns bancos de dados NoSQL são ainda credenciado e utilizadas por organizações de defesa. Accumulo veio de um projecto da Agência de Segurança Nacional (NSA). MarkLogic Server é acreditado independente sob o Departamento de EUA de Defesa (DoD) certificação Common Criteria.

Nem todos os bancos de dados NoSQL fornecer essa funcionalidade, embora a maioria deles provavelmente será no futuro. Por agora, você tem opções que permitem proteger as informações.

Todos os bancos de dados NoSQL são open-source

Existem inúmeros bancos de dados de código aberto no mundo NoSQL. Muitas empresas comerciais têm tentado replicar o sucesso da Red Hat, oferecendo um subconjunto de capacidades dos seus produtos para ser usado gratuitamente sob uma licença de código aberto.

Muitas das plataformas dessas empresas não suportam padrões abertos, apesar de tudo. Além disso, a maior parte do código é contribuído por essas empresas. recursos limitados são fornecidos na versão base por esses # 147-open-source # 148- empresas.

Existem muitas empresas totalmente comerciais no espaço NoSQL. Microsoft, MarkLogic, Franz (AllegroGraph), Hypertable e Aerospike são todas as grandes empresas comerciais que oferecem bancos de dados NoSQL, e eles estão sendo muito bem sucedida fazê-lo.

bancos de dados NoSQL são apenas para aplicações Web 2.0

A sua utilização em novos web e aplicativos móveis pilhas fizeram bancos de dados NoSQL popular. Eles são fáceis de usar, desde o início, e muitos operam sob um contrato de licença para livre, tornando-os atraentes para startups.

aplicações de mídia social geralmente usam bancos de dados NoSQL. aplicações de mídia social trazer dados da Web publicado e agregá-los em conjunto a fim de descobrir informações valiosas.

A grande maioria dos casos de uso, no entanto, não são aplicações 2.0 do tipo Web. Eles são os mesmos aplicativos que foram em torno de um longo tempo, mas onde bancos de dados relacionais já não fornecem uma solução adequada. Isto inclui cenários onde os dados a serem armazenados é muito escassa, com muitos em branco (nulo) valores, ou quando há mudanças freqüentes ao longo do tempo da estrutura da informação a ser armazenados.

NoSQL é apenas hype

Microsoft, Oracle e IBM cada um tem seu próprio banco de dados NoSQL no mercado no momento. Embora suscetível a vociferar, essas empresas investem em tecnologia só quando vêem um lucro.

jogadores estabelecidos como MarkLogic com anos no mercado também provaram que a tecnologia NoSQL não é apenas hype e é valioso para uma gama de clientes do mundo real em todos os setores em sistemas de missão crítica.

desenvolvedores NoSQL não entendem como usar um RDBMS

Há um equívoco comum (por aplicação de banco de dados relacional mal desenvolvedores- você sabe quem você é!) Que NoSQL é usado porque os desenvolvedores não têm uma compreensão sobre os fundamentos necessários para configurar os bancos de dados relacionais de modo que um bom desempenho.

Isto é completamente incorrecta. NoSQL compreende uma série de abordagens reunidos para responder fundamentalmente diferentes problemas de dados do que um sistema de gerenciamento de banco de dados relacional (RDBMS) resolve.

Se você está comparando um RDBMS para um banco de dados NoSQL, então você está comparando maçãs com motos! bancos de dados NoSQL não substituirão RDBMS. Eles destinam-se a dados que são estruturados fundamentalmente diferente, bem como para diferentes problemas de dados.

tecnologia RDBMS Atualizado vai eliminar a necessidade de NoSQL

Muitas das abordagens altamente distribuídas de noSQL estão a ser misturado com a tecnologia de RDBMS, o que resultou no aparecimento de muitas bases de dados NewSQL.

Embora NewSQL está ajudando a lidar com as críticas da tecnologia RDBMS dos desenvolvedores NoSQL, NewSQL está organizado em torno das mesmas estruturas de dados como um RDBMS é.

bancos de dados NoSQL são para diferentes problemas de dados, com diferentes estruturas de dados e casos de uso.

menu