{"id":2522,"date":"2017-02-07T18:23:51","date_gmt":"2017-02-07T18:23:50","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2522"},"modified":"2025-06-13T18:24:09","modified_gmt":"2025-06-14T01:24:09","slug":"couchbase-and-the-document-oriented-nosql-database","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-and-the-document-oriented-nosql-database\/","title":{"rendered":"Couchbase e o banco de dados NoSQL orientado a documentos"},"content":{"rendered":"<p>Como defensor do desenvolvedor na <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/\">Couchbase<\/a>Em minha viagem, frequentemente encontro pessoas que n\u00e3o t\u00eam ideia do que \u00e9 NoSQL ou, mais importante, do que \u00e9 Couchbase. Para as pessoas que j\u00e1 est\u00e3o familiarizadas com o NoSQL, o Couchbase \u00e9 frequentemente comparado a outros sistemas de armazenamento de dados. <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/resources\/why-nosql\/\">Banco de dados NoSQL<\/a> produtos como o MongoDB e o CouchDB, que n\u00e3o s\u00e3o afiliados ao Couchbase.<\/p>\n<p>Recentemente, deparei-me com uma s\u00e9rie de compara\u00e7\u00f5es entre MongoDB e Couchbase feita por um autor da comunidade, Milan Milosevic. Em <a href=\"https:\/\/dzone.com\/articles\/intro-to-document-oriented-nosql-databases\">primeira parte<\/a> e <a href=\"https:\/\/dzone.com\/articles\/mongodb-vs-couchbase-part-2-json-tooling-and-more\">segunda parte<\/a> de sua s\u00e9rie, ele explica sua experi\u00eancia, como desenvolvedor experiente de MongoDB, saindo do MongoDB e tentando usar o Couchbase. Opini\u00f5es v\u00e1lidas s\u00e3o compartilhadas, mas h\u00e1 alguns aspectos que podem ser ignorados.<\/p>\n<p>Quero esclarecer algumas d\u00favidas sobre o que torna o Couchbase uma op\u00e7\u00e3o t\u00e3o boa no espa\u00e7o NoSQL.<\/p>\n<h2 id=\"buckets-and-the-json-document\">Compartimentos e o documento JSON<\/h2>\n<p>Ao trabalhar com dados no Couchbase, voc\u00ea est\u00e1 trabalhando com eles como dados formatados em JSON. Esses dados JSON podem ser t\u00e3o simples ou t\u00e3o complexos quanto voc\u00ea quiser torn\u00e1-los. Por exemplo, o seguinte \u00e9 um documento JSON muito v\u00e1lido:<\/p>\n<pre><code>{\r\n    \"firstname\": \"Nic\",\r\n    \"lastname\": \"Raboy\",\r\n    \"addresses\": [\r\n        {\r\n            \"city\": \"San Francisco\",\r\n            \"state\": \"California\"\r\n        },\r\n        {\r\n            \"city\": \"Mountain View\",\r\n            \"state\": \"California\"\r\n        }\r\n    ],\r\n    \"social\": {\r\n        \"twitter\": \"https:\/\/www.twitter.com\/nraboy\",\r\n        \"blog\": \"https:\/\/www.thepolyglotdeveloper.com\"\r\n    }\r\n}<\/code><\/pre>\n<p>Percebeu como no documento acima h\u00e1 matrizes aninhadas de objetos, bem como objetos aninhados? Ao trabalhar com documentos JSON, voc\u00ea tem mais flexibilidade no que diz respeito aos dados do que em um banco de dados relacional.<\/p>\n<p>Cada documento JSON armazenado no Couchbase deve receber um valor de identifica\u00e7\u00e3o exclusivo, tamb\u00e9m conhecido como chave. O Couchbase n\u00e3o criar\u00e1 essa chave para voc\u00ea, mas h\u00e1 muitas solu\u00e7\u00f5es dispon\u00edveis quando se trata do design da chave. Por exemplo, aqui est\u00e3o tr\u00eas maneiras poss\u00edveis de criar uma chave:<\/p>\n<p><strong>Leg\u00edvel por humanos<\/strong><\/p>\n<pre><code>garoto<\/code><\/pre>\n<p><strong>Gerado por computador ou incrementado<\/strong><\/p>\n<pre><code>caa80375-77e7-4714-b90a-1089e66a5fd5<\/code><\/pre>\n<p><strong>Combina\u00e7\u00e3o ou composto<\/strong><\/p>\n<pre><code>nraboy::1<\/code><\/pre>\n<p>N\u00e3o h\u00e1 maneiras certas ou erradas de criar uma chave. O que realmente importa s\u00e3o as suas necessidades no documento espec\u00edfico que est\u00e1 salvando. A capacidade de criar sua pr\u00f3pria chave \u00e9 \u00fatil quando se trata de estabelecer relacionamentos de dados e consultar esses dados.<\/p>\n<p>Cada documento JSON, com sua chave exclusiva, \u00e9 salvo no que \u00e9 chamado de Bucket do Couchbase. Provavelmente \u00e9 seguro pensar em um Bucket como um balde literal no qual voc\u00ea pode armazenar coisas. Voc\u00ea pode colocar qualquer coisa nesse balde, independentemente de sua forma ou tamanho. O mesmo se aplica a um Bucket do Couchbase. Por exemplo, digamos que eu queira salvar os dois documentos a seguir:<\/p>\n<pre><code>{\r\n    \"type\": \"person\",\r\n    \"firstname\": \"Nic\",\r\n    \"lastname\": \"Raboy\"\r\n}<\/code><\/pre>\n<p>Podemos dar ao documento acima qualquer chave exclusiva, o que realmente n\u00e3o importa para este exemplo. A mesma regra se aplica ao documento a seguir:<\/p>\n<pre><code>{\r\n    \"type\": \"location\",\r\n    \"city\": \"San Francisco\",\r\n    \"state\": \"California\"\r\n}<\/code><\/pre>\n<p>Em ambos os documentos, voc\u00ea notar\u00e1 que cada um deles tem um <code>tipo<\/code> com um valor diferente. Al\u00e9m disso, cada nome de propriedade \u00e9 completamente diferente, indicando que esses documentos t\u00eam finalidades diferentes. Embora n\u00e3o seja totalmente necess\u00e1rio, o <code>tipo<\/code> nos ajuda ao consultar esses documentos.<\/p>\n<p>Ter uma quantidade X de tipos de documentos em um \u00fanico Bucket torna as coisas mais complicadas ou confusas? Absolutamente n\u00e3o, pois o que importa \u00e9 a consulta, e n\u00e3o como os documentos s\u00e3o armazenados.<\/p>\n<p>Quando se trata do MongoDB, voc\u00ea armazenaria cada tipo de documento em sua pr\u00f3pria cole\u00e7\u00e3o e, da mesma forma, em um RDBMS, onde voc\u00ea armazenaria cada um em sua pr\u00f3pria tabela. Isso significa que o MongoDB e um banco de dados relacional como o Oracle est\u00e3o fazendo isso errado ou s\u00e3o melhores que o Couchbase? N\u00e3o, isso n\u00e3o significa, \u00e9 apenas a maneira deles de resolver o problema.<\/p>\n<h2 id=\"couchbase-shell-cbq-and-the-query-workbench\">Couchbase Shell (CBQ) e o Query Workbench<\/h2>\n<p>Portanto, com os dados JSON no Couchbase, ser\u00e1 necess\u00e1rio consult\u00e1-los ou at\u00e9 mesmo criar mais deles. H\u00e1 v\u00e1rias maneiras de consultar dados no Couchbase e com v\u00e1rias ferramentas diferentes.<\/p>\n<p>Com o Couchbase Enterprise Edition e o Community Edition, voc\u00ea tem o que \u00e9 chamado de <a href=\"https:\/\/developer.couchbase.com\/documentation\/server\/current\/tools\/query-workbench.html\">Workbench de consulta<\/a>que \u00e9 uma ferramenta gr\u00e1fica para executar consultas, semelhante ao que voc\u00ea encontraria no phpMyAdmin ou no SQL Developer da Oracle.<\/p>\n<div class=\"figure\"><img decoding=\"async\" src=\"\/wp-content\/original-assets\/2017\/february\/couchbase-and-the-document-oriented-nosql-database\/query-workbench.gif\" alt=\"Couchbase Query Workbench\" \/><\/div>\n<p>Com o Query Workbench, voc\u00ea pode executar consultas N1QL do Couchbase em rela\u00e7\u00e3o aos documentos encontrados em cada um dos seus Buckets. Essas consultas podem incluir <code>SELECIONAR<\/code>, <code>INSERIR<\/code>ou qualquer outro comando de consulta que seja popular em linguagens baseadas em SQL. Por exemplo, a consulta a seguir retornar\u00e1 todas as propriedades de todos os documentos encontrados no Bucket do Couchbase chamado <code>padr\u00e3o<\/code>:<\/p>\n<pre><code>SELECT * FROM default;<\/code><\/pre>\n<p>Embora cada tecnologia NoSQL tenha seus pr\u00f3prios m\u00e9todos de consulta de dados, o N1QL n\u00e3o s\u00f3 \u00e9 f\u00e1cil de usar, como tamb\u00e9m \u00e9 mais conveniente para aqueles que est\u00e3o se afastando de um banco de dados relacional e j\u00e1 t\u00eam experi\u00eancia com SQL.<\/p>\n<p>Ent\u00e3o, o que acontece com os desenvolvedores que preferem usar um cliente shell? \u00c9 a\u00ed que entra em cena o Couchbase Shell (CBQ).<\/p>\n<div class=\"figure\"><img decoding=\"async\" src=\"\/wp-content\/original-assets\/2017\/february\/couchbase-and-the-document-oriented-nosql-database\/couchbase-cbq.gif\" alt=\"Couchbase Shell CBQ\" \/><\/div>\n<p>O cliente shell \u00e9 semelhante ao que voc\u00ea encontraria no MongoDB ou em qualquer uma das tecnologias de banco de dados relacional. E se voc\u00ea quisesse salvar os resultados da consulta em um arquivo, em vez de exibi-los no shell? Voc\u00ea poderia fazer algo assim:<\/p>\n<pre><code>echo \"SELECT * FROM default;\" | \/Applications\/Couchbase Server.app\/Contents\/Resources\/couchbase-core\/bin\/cbq -u Administrator -p password -o ~\/Desktop\/output.txt<\/code><\/pre>\n<p>Voc\u00ea n\u00e3o est\u00e1 limitado \u00e0 execu\u00e7\u00e3o estrita de consultas com o CBQ. H\u00e1 recursos de gerenciamento de conex\u00e3o e seguran\u00e7a que tamb\u00e9m est\u00e3o dispon\u00edveis. Um conjunto completo de recursos pode ser visto na se\u00e7\u00e3o <a href=\"https:\/\/developer.couchbase.com\/documentation\/server\/current\/tools\/cbq-shell.html\">documenta\u00e7\u00e3o<\/a> bem como <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/introducing-new-advanced-features-to-the-couchbase-shell---cbq\/\">esta postagem do blog<\/a> Eu j\u00e1 havia escrito anteriormente.<\/p>\n<p>O Query Workbench e o CBQ t\u00eam suas finalidades, mas, na maioria dos casos, voc\u00ea consultar\u00e1 seus documentos usando um dos muitos <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/developers\/sdks\/\">SDKs para desenvolvedores<\/a> em seu aplicativo. Com suporte de linguagem para tecnologias de desenvolvedor populares, como Java, .NET, Node.js e Golang, voc\u00ea est\u00e1 totalmente coberto quando se trata de usar o NoSQL em seu aplicativo.<\/p>\n<h2 id=\"indexing-in-couchbase-server\">Indexa\u00e7\u00e3o no Couchbase Server<\/h2>\n<p>A consulta ao Couchbase requer a cria\u00e7\u00e3o de \u00edndices em seu cluster do Couchbase. H\u00e1 alguns tipos de \u00edndices que podem ser criados, e eles s\u00e3o feitos com base nas necessidades de seu aplicativo.<\/p>\n<p>Veja, por exemplo, o \u00edndice local. Quando os \u00edndices locais s\u00e3o criados no cluster, cada n\u00f3 indexa os dados que mant\u00e9m localmente. Essa \u00e9 uma solu\u00e7\u00e3o que funciona bem para uma implanta\u00e7\u00e3o de n\u00f3 \u00fanico, mas quando voc\u00ea come\u00e7a a aumentar o n\u00famero de n\u00f3s no cluster, a lat\u00eancia da consulta come\u00e7a a ser prejudicada. Isso ocorre porque a coleta dispersa precisa ocorrer entre os n\u00f3s dispon\u00edveis antes de retornar os dados ao cliente.<\/p>\n<p>\u00c0 medida que voc\u00ea cria um cluster de v\u00e1rios n\u00f3s, faz mais sentido come\u00e7ar a usar \u00edndices secund\u00e1rios globais (GSI). Nesse cen\u00e1rio, o \u00edndice \u00e9 colocado longe dos n\u00f3s de dados e existe em menor quantidade. Em vez de usar o scatter gather em cada \u00edndice local, a consulta vai para o \u00edndice global que conhece os dados que queremos e os retorna. Isso melhora significativamente a lat\u00eancia da consulta.<\/p>\n<p>Ent\u00e3o, como voc\u00ea cria um \u00edndice secund\u00e1rio global em seu cluster? Tente executar algo como o seguinte:<\/p>\n<pre><code>CREATE INDEX people ON default(firstname, lastname) WHERE type = \"person\" USING GSI;<\/code><\/pre>\n<p>Tanto os \u00edndices locais quanto os \u00edndices secund\u00e1rios globais podem ser lidos em um <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/faster-indexing-and-query-with-memory-optimized-global-secondary-indexes-gsi\/\">\u00f3tima postagem no blog<\/a>.<\/p>\n<p>Isso nos leva a um dos mais novos recursos de indexa\u00e7\u00e3o do Couchbase. A partir do Couchbase 4.5, h\u00e1 o que \u00e9 conhecido como \u00edndices secund\u00e1rios globais otimizados para mem\u00f3ria (MOI).<\/p>\n<p>Agora, em vez de os \u00edndices existirem no disco e serem executados em velocidades de disco, eles podem existir na mem\u00f3ria com um desempenho muito maior. Mais informa\u00e7\u00f5es sobre \u00edndices otimizados para mem\u00f3ria podem ser lidas em <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/faster-indexing-and-query-with-memory-optimized-global-secondary-indexes-gsi---part-ii\/\">esta postagem do blog<\/a>.<\/p>\n<p>Ent\u00e3o, como voc\u00ea sabe quais \u00edndices suas consultas est\u00e3o usando? Faz sentido executar um <code>EXPLICAR<\/code> em uma de suas consultas:<\/p>\n<pre><code>EXPLAIN SELECT firstname, lastname FROM default WHERE type = \"person\";<\/code><\/pre>\n<p>Os resultados sobre o <code>EXPLICAR<\/code> informam qual \u00edndice a consulta usou, al\u00e9m de v\u00e1rias informa\u00e7\u00f5es de m\u00e9tricas sobre o que foi feito no processo. Se estiver usando o \u00edndice que criei para essa consulta, o <code>EXPLICAR<\/code> deve dizer que estamos usando o <code>pessoas<\/code> \u00edndice.<\/p>\n<h2 id=\"production-ready-with-a-powerful-customer-backing\">Pronto para a produ\u00e7\u00e3o com um poderoso apoio do cliente<\/h2>\n<p>Tanto o Couchbase Community quanto o Enterprise Edition est\u00e3o prontos para produ\u00e7\u00e3o e est\u00e3o sendo usados ativamente por organiza\u00e7\u00f5es bem conhecidas. Prepare-se para alguns nomes.<\/p>\n<p>Empresas enormes e altamente respeitadas, como, entre outras, LinkedIn, PayPal, eBay, United, Marriott, GE e Verizon, est\u00e3o usando milhares de n\u00f3s do Couchbase para alimentar a camada de dados de suas organiza\u00e7\u00f5es. Algumas dessas empresas falaram no Couchbase Connect e as grava\u00e7\u00f5es podem ser assistidas em <a href=\"https:\/\/www.youtube.com\/playlist?list=PLcspbWiU9RuunKnZwfE757B6-xsaiJV84\">YouTube<\/a>.<\/p>\n<p>Para obter uma lista de mais clientes do Couchbase, confira a lista <a href=\"https:\/\/www.couchbase.com\/blog\/pt\/customers\/\">aqui<\/a>.<\/p>\n<h2 id=\"conclusion\">Conclus\u00e3o<\/h2>\n<p>O Couchbase \u00e9 um banco de dados de documentos NoSQL rico em recursos que certamente est\u00e1 pronto para produ\u00e7\u00e3o. Com a capacidade de usar um modelo de dados JSON flex\u00edvel e ferramentas e consultas avan\u00e7adas, o Couchbase se torna um banco de dados perfeito para praticamente qualquer cen\u00e1rio.<\/p>\n<p>Para obter mais informa\u00e7\u00f5es sobre como usar o Couchbase, consulte o <a href=\"https:\/\/developer.couchbase.com\">Portal do desenvolvedor do Couchbase<\/a> para tutoriais e outras documenta\u00e7\u00f5es.<\/p>","protected":false},"excerpt":{"rendered":"<p>As a developer advocate at Couchbase, I often travel around and meet people who either have no idea what NoSQL is, or more importantly what Couchbase is. For the people who are already familiar with NoSQL, Couchbase often gets compared [&hellip;]<\/p>","protected":false},"author":63,"featured_media":10634,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1816,1812],"tags":[1809,1505,1261,1309],"ppma_author":[9032],"class_list":["post-2522","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-couchbase-server","category-n1ql-query","tag-document","tag-index","tag-json","tag-mongodb"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.8 (Yoast SEO v25.8) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Couchbase and the Document-Oriented NoSQL Database<\/title>\n<meta name=\"description\" content=\"The blog covers why Couchbase is a perfect NoSQL database and some concerns on what makes Couchbase such a great option in the NoSQL space.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-and-the-document-oriented-nosql-database\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Couchbase and the Document-Oriented NoSQL Database\" \/>\n<meta property=\"og:description\" content=\"The blog covers why Couchbase is a perfect NoSQL database and some concerns on what makes Couchbase such a great option in the NoSQL space.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-and-the-document-oriented-nosql-database\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/thepolyglotdeveloper\" \/>\n<meta property=\"article:published_time\" content=\"2017-02-07T18:23:50+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T01:24:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/02\/shutterstock_575951470_RESIZED.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"959\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Nic Raboy, Developer Advocate, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@nraboy\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nic Raboy, Developer Advocate, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/\"},\"author\":{\"name\":\"Nic Raboy, Developer Advocate, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/bb545ebe83bb2d12f91095811d0a72e1\"},\"headline\":\"Couchbase and the Document-Oriented NoSQL Database\",\"datePublished\":\"2017-02-07T18:23:50+00:00\",\"dateModified\":\"2025-06-14T01:24:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/\"},\"wordCount\":1371,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/02\/shutterstock_575951470_RESIZED.jpg\",\"keywords\":[\"document\",\"Index\",\"JSON\",\"mongodb\"],\"articleSection\":[\"Couchbase Server\",\"SQL++ \/ N1QL Query\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/\",\"name\":\"Couchbase and the Document-Oriented NoSQL Database\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/02\/shutterstock_575951470_RESIZED.jpg\",\"datePublished\":\"2017-02-07T18:23:50+00:00\",\"dateModified\":\"2025-06-14T01:24:09+00:00\",\"description\":\"The blog covers why Couchbase is a perfect NoSQL database and some concerns on what makes Couchbase such a great option in the NoSQL space.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/02\/shutterstock_575951470_RESIZED.jpg\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/02\/shutterstock_575951470_RESIZED.jpg\",\"width\":1200,\"height\":959,\"caption\":\"A cave wall with spots of sunlight reflecting off of it\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Couchbase and the Document-Oriented NoSQL Database\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/bb545ebe83bb2d12f91095811d0a72e1\",\"name\":\"Nic Raboy, Developer Advocate, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/8863514d8bed0cf6080f23db40e00354\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/bedeb68368d4681aca4c74fe5f697f0c423b80d498ec50fd915ba018b72c101f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/bedeb68368d4681aca4c74fe5f697f0c423b80d498ec50fd915ba018b72c101f?s=96&d=mm&r=g\",\"caption\":\"Nic Raboy, Developer Advocate, Couchbase\"},\"description\":\"Nic Raboy is an advocate of modern web and mobile development technologies. He has experience in Java, JavaScript, Golang and a variety of frameworks such as Angular, NativeScript, and Apache Cordova. Nic writes about his development experiences related to making web and mobile development easier to understand.\",\"sameAs\":[\"https:\/\/www.thepolyglotdeveloper.com\",\"https:\/\/www.facebook.com\/thepolyglotdeveloper\",\"https:\/\/x.com\/nraboy\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/pt\/author\/nic-raboy-2\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Couchbase e o banco de dados NoSQL orientado a documentos","description":"O blog aborda por que o Couchbase \u00e9 um banco de dados NoSQL perfeito e algumas preocupa\u00e7\u00f5es sobre o que torna o Couchbase uma \u00f3tima op\u00e7\u00e3o no espa\u00e7o NoSQL.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-and-the-document-oriented-nosql-database\/","og_locale":"pt_BR","og_type":"article","og_title":"Couchbase and the Document-Oriented NoSQL Database","og_description":"The blog covers why Couchbase is a perfect NoSQL database and some concerns on what makes Couchbase such a great option in the NoSQL space.","og_url":"https:\/\/www.couchbase.com\/blog\/pt\/couchbase-and-the-document-oriented-nosql-database\/","og_site_name":"The Couchbase Blog","article_author":"https:\/\/www.facebook.com\/thepolyglotdeveloper","article_published_time":"2017-02-07T18:23:50+00:00","article_modified_time":"2025-06-14T01:24:09+00:00","og_image":[{"width":1200,"height":959,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/02\/shutterstock_575951470_RESIZED.jpg","type":"image\/jpeg"}],"author":"Nic Raboy, Developer Advocate, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@nraboy","twitter_misc":{"Written by":"Nic Raboy, Developer Advocate, Couchbase","Est. reading time":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/"},"author":{"name":"Nic Raboy, Developer Advocate, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/bb545ebe83bb2d12f91095811d0a72e1"},"headline":"Couchbase and the Document-Oriented NoSQL Database","datePublished":"2017-02-07T18:23:50+00:00","dateModified":"2025-06-14T01:24:09+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/"},"wordCount":1371,"commentCount":0,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/02\/shutterstock_575951470_RESIZED.jpg","keywords":["document","Index","JSON","mongodb"],"articleSection":["Couchbase Server","SQL++ \/ N1QL Query"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/","url":"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/","name":"Couchbase e o banco de dados NoSQL orientado a documentos","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/02\/shutterstock_575951470_RESIZED.jpg","datePublished":"2017-02-07T18:23:50+00:00","dateModified":"2025-06-14T01:24:09+00:00","description":"O blog aborda por que o Couchbase \u00e9 um banco de dados NoSQL perfeito e algumas preocupa\u00e7\u00f5es sobre o que torna o Couchbase uma \u00f3tima op\u00e7\u00e3o no espa\u00e7o NoSQL.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/02\/shutterstock_575951470_RESIZED.jpg","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/02\/shutterstock_575951470_RESIZED.jpg","width":1200,"height":959,"caption":"A cave wall with spots of sunlight reflecting off of it"},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/couchbase-and-the-document-oriented-nosql-database\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Couchbase and the Document-Oriented NoSQL Database"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"Blog do Couchbase","description":"Couchbase, o banco de dados NoSQL","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"Blog do Couchbase","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/bb545ebe83bb2d12f91095811d0a72e1","name":"Nic Raboy, defensor dos desenvolvedores, Couchbase","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/8863514d8bed0cf6080f23db40e00354","url":"https:\/\/secure.gravatar.com\/avatar\/bedeb68368d4681aca4c74fe5f697f0c423b80d498ec50fd915ba018b72c101f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/bedeb68368d4681aca4c74fe5f697f0c423b80d498ec50fd915ba018b72c101f?s=96&d=mm&r=g","caption":"Nic Raboy, Developer Advocate, Couchbase"},"description":"Nic Raboy \u00e9 um defensor das modernas tecnologias de desenvolvimento m\u00f3vel e da Web. Ele tem experi\u00eancia em Java, JavaScript, Golang e uma variedade de estruturas, como Angular, NativeScript e Apache Cordova. Nic escreve sobre suas experi\u00eancias de desenvolvimento relacionadas a tornar o desenvolvimento m\u00f3vel e da Web mais f\u00e1cil de entender.","sameAs":["https:\/\/www.thepolyglotdeveloper.com","https:\/\/www.facebook.com\/thepolyglotdeveloper","https:\/\/x.com\/nraboy"],"url":"https:\/\/www.couchbase.com\/blog\/pt\/author\/nic-raboy-2\/"}]}},"authors":[{"term_id":9032,"user_id":63,"is_guest":0,"slug":"nic-raboy-2","display_name":"Nic Raboy, Developer Advocate, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/bedeb68368d4681aca4c74fe5f697f0c423b80d498ec50fd915ba018b72c101f?s=96&d=mm&r=g","author_category":"","last_name":"Raboy","first_name":"Nic","job_title":"","user_url":"https:\/\/www.thepolyglotdeveloper.com","description":"Nic Raboy \u00e9 um defensor das modernas tecnologias de desenvolvimento m\u00f3vel e da Web. Ele tem experi\u00eancia em Java, JavaScript, Golang e uma variedade de estruturas, como Angular, NativeScript e Apache Cordova. Nic escreve sobre suas experi\u00eancias de desenvolvimento relacionadas a tornar o desenvolvimento m\u00f3vel e da Web mais f\u00e1cil de entender."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/2522","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/users\/63"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/comments?post=2522"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/posts\/2522\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media\/10634"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/media?parent=2522"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/categories?post=2522"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/tags?post=2522"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/pt\/wp-json\/wp\/v2\/ppma_author?post=2522"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}