Sem categoria

Recheio de perus e não bancos de dados relacionais

O Dia de Ação de Graças e o peru andam de mãos dadas! E, embora rechear um peru possa ser bastante divertido (com cupcakes - veja abaixo), rechear um documento rico em JSON em um banco de dados relacional com linhas e colunas não é.

 

Nos últimos dois anos, com o JSON se tornando um formato de dados popular entre os desenvolvedores, muitos fornecedores de bancos de dados baseados em SQL aderiram ao movimento JSON oferecendo suporte a JSON. No entanto, esses sistemas não oferecem a mesma superfície de programação intuitiva que os armazenamentos de documentos JSON - eles não suportam JSON nativamente, mas oferecem extensões de JSON em cima de uma tecnologia relacional que já é difícil de escalonar.

 

Então, por que o JSON em um banco de dados relacional não funciona?

Basicamente, a resposta está no modelo de dados e na arquitetura.

 

Em um banco de dados relacional Quando você insere um registro, está inserindo um conjunto de campos bem definidos que têm determinados tipos, e isso é definido com muito rigor em um esquema de banco de dados. Quando o JSON é construído sobre uma tecnologia relacional, há uma incompatibilidade de impedância que envolve a definição prévia de que uma coluna tem um tipo de dados JSON ou que o documento JSON deve ser fatiado e dividido em várias tabelas.

 

Com um banco de dados NoSQL como o Couchbase, que suporta JSON nativamente, o documento JSON é autônomo e livre de esquemas. O formato do documento JSON é flexível e fácil de usar. Os desenvolvedores de aplicativos podem começar a trabalhar rapidamente com os dados, enquanto o banco de dados se adapta facilmente às alterações na estrutura de dados. Os documentos JSON podem armazenar dados ricos que podem ser esparsos, hierárquicos ou valores profundamente aninhados como arrays. Os valores JSON também são digitado dinamicamentesem um tipo de dados fixo para atributos em diferentes documentos.

 

Documentos JSON autônomos facilita a fragmentação de dados em um cluster. O documento JSON não fica confinado em uma coluna de uma tabela relacional, mas é armazenado naturalmente como está e pode ser indexado pelo banco de dados. Com o Couchbase, seus documentos JSON são fragmentados automaticamente e distribuídos uniformemente em vários servidores. Há várias cópias de um documento no cluster, o que aumenta a confiabilidade: Se um nó ficar inoperante, o banco de dados continuará funcionando sem perda de dados.

 

Livre de esquema significa que seu aplicativo pode ser alterado sem nenhuma alteração no banco de dados. Você não precisa vincular antecipadamente o esquema durante a operação de inserção. No entanto, se você mudar de ideia posteriormente sobre a captura de outros atributos de dados, não precisará atualizar um esquema e renormalizar tudo como em um banco de dados relacional. Você pode continuar inserindo dados no backend, sem nenhuma alteração no esquema do banco de dados.

 

O Couchbase oferece suporte à indexação e à consulta em seus dados JSON. Isso significa que acessar seus dados de forma chave-valor, por meio de exibições ou usando N1QLO N1QL é uma linguagem semelhante ao SQL para consultar seus dados JSON avançados no Couchbase. O N1QL apresenta abstrações fáceis e familiares para desenvolver rapidamente aplicativos dimensionáveis do Couchbase. Ele permite junções, expressões de filtro, expressões agregadas e muitos outros recursos para criar um aplicativo avançado.

 

Conclusão

O que tudo isso significa é que, se você trabalha no mundo dos aplicativos corporativos, agora é a hora de começar a se familiarizar com uma opção alternativa de armazenamento de dados, como o NoSQL, em vez de colocar JSON em um banco de dados relacional.

 

Portanto, se você estiver criando um novo aplicativo que já esteja gerando documentos JSON ou se os dados forem muito complexos para serem modelados em um banco de dados relacional, talvez seja melhor considerar o Couchbase para armazenar seus dados. Por exemplo, em um armazenamento operacional em que os dados estão sendo coletados de usuários, sistemas ou redes sociais, um banco de dados NoSQL, como o Couchbase, é uma boa opção.

Compartilhe este artigo
Receba atualizações do blog do Couchbase em sua caixa de entrada
Esse campo é obrigatório.

Autor

Postado por Don Pinto, gerente principal de produtos da Couchbase

Don Pinto é gerente de produto principal da Couchbase e atualmente está concentrado no avanço dos recursos do Couchbase Server. Ele é extremamente apaixonado por tecnologia de dados e, no passado, foi autor de vários artigos sobre o Couchbase Server, incluindo blogs técnicos e white papers. Antes de ingressar no Couchbase, Don passou vários anos na IBM, onde ocupou a função de desenvolvedor de software no grupo de gerenciamento de informações DB2 e, mais recentemente, como gerente de programa na equipe do SQL Server na Microsoft. Don tem mestrado em ciência da computação e é bacharel em engenharia da computação pela Universidade de Toronto, no Canadá.

Um comentário

Deixe um comentário

Pronto para começar a usar o Couchbase Capella?

Iniciar a construção

Confira nosso portal do desenvolvedor para explorar o NoSQL, procurar recursos e começar a usar os tutoriais.

Use o Capella gratuitamente

Comece a trabalhar com o Couchbase em apenas alguns cliques. O Capella DBaaS é a maneira mais fácil e rápida de começar.

Entre em contato

Deseja saber mais sobre as ofertas do Couchbase? Deixe-nos ajudar.