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.
Conteúdo
- Menor necessidade de etl
- Video: introdução a banco de dados não relacionais (nosql)
- Suporte para texto não estruturado
- Capacidade de lidar com a mudança ao longo do tempo
- Sem dependência de magia sql
- Capacidade de escalar horizontalmente em hardware commodity
- Video: mongodb e nosql
- Amplitude da funcionalidade
- Suporte para múltiplas estruturas de dados
- Escolha de fornecedor
- Video: parte 1 -mongodb - banco de dados não relacional, com flávio gomes
- Nenhum código legado
- Video: nosql e big data - bancos de dados & aplicações 2015 - aula 3
- Execução de código ao lado do dados
Menor necessidade de ETL
bancos de dados NoSQL suportam o armazenamento de dados “como é.” lojas de valores-chave 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 voando entre sistemas faz isso como uma mensagem. Normalmente, os dados leva um destes formatos:
Um objecto de binário a ser transmitido através de um conjunto de camadas
Um documento XML
Um documento JSON
Ser capaz de lidar com esses formatos nativamente 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. Isso é 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 código “encanamento”, os custos de manutenção são significativamente diminuída.
Video: Introdução a banco de dados não relacionais (NoSQL)
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, quer 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 pode ajudar as organizações a tomar melhores decisões. Por exemplo, os usos avançados incluem suporte para vários idiomas com pesquisa facetado, funcionalidade trecho, e apoio-decorrente palavra. As características avançadas também 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 aqueles 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ção 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 alterações dos 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 dependência de magia SQL
Structured Query Language (SQL) é a língua predominante usado para consultar sistemas de gerenciamento de banco de dados relacionais. Ser capaz de estruturar consultas para que eles executam bem tem ao longo dos anos se uma arte espinhoso. multitable complexo junta não são fáceis de escrever da 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 pode interpretar os dados que estão sendo armazenados, em vez de exigir um modelo relacional dentro do 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 precisa saber o funcionamento interno e caprichos dos bancos de dados antes de usá-los. bancos de dados NoSQL capacitar os desenvolvedores a trabalhar no 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 em 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.
Video: MongoDB e NoSQL
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ê tivesse que dobrar a quantidade de dados que você armazena, 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 da 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: key-value, colunar, documento e guarda 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 exigem armazenamento estrutura altamente complexa e inter-relacionados. bases de dados NoSQL proporcionar 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 chave-valor.
valores de informações relacionadas podem ser agrupadas em famílias de colunas dentro clones Bigtable.
pai-filho estruturas hierárquicas altamente complexos podem ser gerenciados dentro de bancos de dados de documentos.
Uma teia de informações inter-relacionadas pode ser descrito de forma flexível e relacionados em 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 bebida de inovação.
Video: Parte 1 -MongoDB - Banco de Dados não relacional, com Flávio Gomes
Open-] variantes fonte 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 usando 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 estranha e pouco usado atualizado.
Video: NoSQL e Big Data - Bancos de Dados & Aplicações 2015 - Aula 3
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 os 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 do dados
bancos de dados NoSQL foram criados na era do Hadoop. filesystem altamente distribuída do 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 altos níveis de paralelização 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 data warehouse separado que é atualizado durante a noite. Com agregações rápidos e manipulação de consulta, 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.