{"id":1523,"date":"2013-08-26T23:37:44","date_gmt":"2013-08-27T02:37:44","guid":{"rendered":"https:\/\/devkico.itexto.com.br\/?p=1523"},"modified":"2013-09-05T22:01:02","modified_gmt":"2013-09-06T01:01:02","slug":"exemplo-de-termo-horroroso-nosql","status":"publish","type":"post","link":"https:\/\/devkico.itexto.com.br\/?p=1523","title":{"rendered":"Desconstruindo NoSQL: em busca de melhores termos"},"content":{"rendered":"<p><a style=\"font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; font-size: 13px; font-style: normal; color: #3a3a3a;\" href=\"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/proibido_nosql.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-full wp-image-1524\" alt=\"proibido_nosql\" src=\"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/proibido_nosql.jpg\" width=\"199\" height=\"167\" \/><\/a><\/p>\n<p>Muito provavelmente\u00a0<a title=\"Lingu\u00edstica: sempre aprontando das suas...\" href=\"https:\/\/devkico.itexto.com.br\/?p=1230\">minha maior neurose \u00e9 a linguagem<\/a>: talvez isto explique a raz\u00e3o pela qual o termo NoSQL me irrite\u00a0tanto, pois como exporei neste post, \u00e9 bastante inadequado e, acredito, pode nos gerar uma s\u00e9rie de problemas em um futuro n\u00e3o muito distante. Na realidade, j\u00e1 vejo alguns hoje.<\/p>\n<p>Este post possu\u00ed uma proposta: remover este termo do nosso jarg\u00e3o substituindo-o por algo que, acredito, faz muito mais sentido e descreve melhor a realidade.<\/p>\n<p><span style=\"font-family: Georgia, 'Times New Roman', serif; font-size: 20px; line-height: 28px;\">A defini\u00e7\u00e3o segundo Fowler<\/span><\/p>\n<p><a href=\"http:\/\/www.martinfowler.com\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-full wp-image-1526\" alt=\"Martin Fowler\" src=\"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/fowler.jpg\" width=\"200\" height=\"201\" srcset=\"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/fowler.jpg 200w, https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/fowler-150x150.jpg 150w, https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/fowler-50x50.jpg 50w\" sizes=\"(max-width: 200px) 100vw, 200px\" \/><\/a>No dia do meu anivers\u00e1rio ano passado Martin Fowler publicou em seu blog um post interessante no qual apresenta <a title=\"Fowler e o NoSQL\" href=\"http:\/\/martinfowler.com\/bliki\/NosqlDefinition.html\">uma defini\u00e7\u00e3o do que v\u00eam a ser NoSQL<\/a> que se tornou bastante aceita entre todos n\u00f3s desenvolvedores e que usarei como base neste post.Curiosamente, n\u00e3o estou sozinho, o pr\u00f3prio Fowler diz em seu post que o termo \u00e9 bastante fraco. Bom: ele apresenta cinco caracter\u00edsticas definidoras destes sistemas gerenciadores de bancos de dados que, analisando com maior profundidade, nada definem.<\/p>\n<h2>Primeira caracter\u00edstica: n\u00e3o usam o modelo relacional (ou a linguagem SQL)<\/h2>\n<figure id=\"attachment_1527\" aria-describedby=\"caption-attachment-1527\" style=\"width: 200px\" class=\"wp-caption alignright\"><a href=\"http:\/\/www.educ.fc.ul.pt\/docentes\/opombo\/hfe\/momentos\/escola\/sofistas\/protagoras.htm\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1527\" alt=\"Prot\u00e1goras riu pra mim. :)\" src=\"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/protagoras.jpg\" width=\"200\" height=\"227\" \/><\/a><figcaption id=\"caption-attachment-1527\" class=\"wp-caption-text\">Prot\u00e1goras riu pra mim. :)<\/figcaption><\/figure>\n<p>Um r\u00e1pido <a href=\"http:\/\/pt.wikipedia.org\/wiki\/Sofisma\">sofisma <\/a>contra este que \u00e9 o atributo mais popular. Se aponto para um SGBD e o caracterizo como relacional j\u00e1 o distingo de todos os demais que, consequentemente, seriam n\u00e3o relacionais, ou seja, ao nascer o modelo relacional criou-se o &#8220;nosql&#8221;. Eu avisei que seria um r\u00e1pido sofisma: \u00a0n\u00e3o consegui segurar.<\/p>\n<p>Por exemplo: se digo que meu computador n\u00e3o \u00e9 de ouro &#8211; &#8220;NoGold&#8221; &#8211; \u00a0isto quer dizer que ele pode ser de qualquer outra coisa, ou seja, n\u00e3o estou o caracterizando de uma forma que agregue significado.<\/p>\n<p>Voltemos para a segunda parte desta caracter\u00edstica: n\u00e3o usar a linguagem SQL. Novamente, uma defini\u00e7\u00e3o engadora, pois se for levada \u00e0 risca, Hadoop, que muitos caracterizam como NoSQL vai sair da lista, pois j\u00e1 h\u00e1 iniciativas como <a title=\"Big Data e SQL. Nice!\" href=\"http:\/\/arstechnica.com\/information-technology\/2013\/07\/the-hot-new-technology-in-big-data-is-decades-old-sql\/\">esta <\/a>que levam a linguagem de consulta SQL para bancos de dados n\u00e3o relacionais. E convenhamos, iniciativas como <a href=\"http:\/\/www.dataversity.net\/unql-a-standardized-query-language-for-nosql-databases\/\">UnQL<\/a> nada mais s\u00e3o do que tentativas de trazer para estes SGBDs todas as vantagens que o SQL nos d\u00e1.<\/p>\n<p>(sobre os problemas do SQL, sugiro a leitura <a href=\"http:\/\/www.aosabook.org\/en\/nosql.html\">deste <\/a>excelente texto)<\/p>\n<h2>Segunda caracter\u00edstica: open source<\/h2>\n<p>N\u00e3o h\u00e1 muito o que dizer a respeito pois n\u00e3o os diferencia em absolutamente nada. MongoDB, MySQL, PostgreSQL, Riak, Redis, tudo se iguala pensando neste atributo isoladamente.<\/p>\n<h2>Terceira caracter\u00edstica: desenvolvidos para serem executados em grandes clusteres (ou clusters?)<\/h2>\n<p>O movimento NoSQL surge como uma alternativa de <a href=\"http:\/\/pt.wikipedia.org\/wiki\/Escalabilidade\">escalabilidade<\/a>: ao inv\u00e9s da mais popular at\u00e9 ent\u00e3o, a vertical, maior aten\u00e7\u00e3o foi dada \u00e0 horizontal, ou seja, \u00e0 possibilidade de atingirmos uma melhor performance adicionando novas m\u00e1quinas \u00e0 nossa rede distribuindo o processamento.<\/p>\n<p>Ok, diversas solu\u00e7\u00f5es NoSQL foram criadas pensando nisto, no entanto h\u00e1 bancos de dados relacionais que tamb\u00e9m foram criados com o mesmo objetivo. At\u00e9 ent\u00e3o a maior parte das solu\u00e7\u00f5es relacionais escalava com muita dificuldade quando as bases de dados cresciam significativamente, ent\u00e3o voc\u00ea come\u00e7a a abrir m\u00e3o de um <a href=\"http:\/\/en.wikipedia.org\/wiki\/ACID\">ACID <\/a>completo, <a href=\"http:\/\/en.wikipedia.org\/wiki\/CAP_theorem\">teorema de CAP<\/a> ganha popularidade, etc.<\/p>\n<p>Mas vemos h\u00e1 anos solu\u00e7\u00f5es relacionais como Oracle, PostgreSQL ou solu\u00e7\u00f5es como <a href=\"http:\/\/www.justonedb.com\/\">JustOneDB <\/a>(mais nova, mas muito interessante este \u00faltimo) tamb\u00e9m obt\u00e9m este resultado. Mais um atributo que n\u00e3o diz muita coisa. Algu\u00e9m poderia dizer que estas solu\u00e7\u00f5es n\u00e3o surgiram para este fim, \u00e9 verdade: mas conforme elas evoluiram com o tempo, este se tornou um requisito importante que em grande parte foi satisfeito.<\/p>\n<h2>Quarta caracter\u00edstica: baseados nas propriedades da web do s\u00e9culo XXI<\/h2>\n<p>Quais seriam estas caracter\u00edsticas? Clusteres gigantes? J\u00e1 falei sobre isto nos par\u00e1grafos anteriores. Baixo custo? Firebird, SQLite, Access (sim, Access), MySQL e outros s\u00e3o solu\u00e7\u00f5es de baixo custo. Necessidade de mudan\u00e7as constantes nos atributos? Ok: voc\u00ea n\u00e3o devia estar usando um banco de dados relacional, pois o foco deste s\u00e3o registros (leia este <a href=\"http:\/\/citeseerx.ist.psu.edu\/viewdoc\/download?doi=10.1.1.86.4262&amp;rep=rep1&amp;type=pdf\">texto fant\u00e1stico de 1979<\/a> sobre as limita\u00e7\u00f5es dos registros).<\/p>\n<p>Novamente, muito amplo: e todo revendedor de solu\u00e7\u00f5es relacionais atualmente diz que estes s\u00e3o adequados para os tais desafios da web do s\u00e9culo XXI.<\/p>\n<p>(to torcendo para n\u00e3o aparecer um vendedor por aqui com aqueles folders &#8220;propriedades da web do s\u00e9culo XXI&#8221;)<\/p>\n<h2>Quinta caracter\u00edstica: aus\u00eancia de esquema<\/h2>\n<p>Este atributo acaba nos jogando de volta \u00e0 primeira caracter\u00edstica e outra: nos tr\u00e1s outro problema. O fato de que, tomado isoladamente igualar os modelos documental, chave-valor, baseado em grafos e outros.<\/p>\n<h2>T\u00e1: qual a solu\u00e7\u00e3o ent\u00e3o?<\/h2>\n<p>A mais simples poss\u00edvel: evitar usar o termo NoSQL j\u00e1 que como expus n\u00e3o diz muita coisa. Ao inv\u00e9s \u00e9 muito mais interessante usar apenas o nome que caracteriza o modelo usado. Por exemplo: ao inv\u00e9s de dizer coisas do tipo &#8220;eu uso uma solu\u00e7\u00e3o NoSQL chamada MongoDB&#8221;, diga &#8220;uso um SGBD documental chamado MongoDB&#8221;.<\/p>\n<p>Isto evitaria frases que n\u00e3o fazem muito sentido, como por exemplo &#8220;vou fazer um curso de NoSQL&#8221; (um curso eterno, pois os modelos s\u00e3o infinitos), &#8220;programo em NoSQL&#8221;, etc. Come\u00e7ariam a surgir frases mais interessantes como &#8220;sou especialista no modelo documental, chave-valor, colunar, etc.&#8221;.<\/p>\n<p>Claro que eu vou continuar usando o termo (to usando neste post) pois h\u00e1 in\u00e9rcia e press\u00e3o social para tal, mas acredito que a partir do momento em que passarmos a usar mais os nomes dos paradigmas, melhor. E convenhamos, o termo, como o pr\u00f3prio Fowler diz em seu post, surgiu por acaso: pra qu\u00ea eternizar o erro, n\u00e3o \u00e9 mesmo?<\/p>\n<h2>E quando penso em NoSQL como &#8220;not only SQL&#8221;?<\/h2>\n<p>Pior ainda, porque agora voc\u00ea colocou o relacional JUNTO com o n\u00e3o relacional: tudo se igualou e nada foi caracterizado. Neste sentido, acho muito mais interessante a emerg\u00eancia de termos como <a href=\"http:\/\/www.martinfowler.com\/bliki\/PolyglotPersistence.html\">persist\u00eancia poliglota<\/a>\u00a0(Fowler de novo) que, ali\u00e1s, acredito ser o caminho que dever\u00edamos seguir.<\/p>\n<p>PS: esse Fowler \u00e9 foda hein? Adoro os artigos dele em que h\u00e1 este tratamento conceitual.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mostrando o qu\u00e3o pouco o termo NoSQL na realidade diz e buscando alternativas para resolver o problema.<\/p>\n","protected":false},"author":1,"featured_media":1527,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[54],"tags":[],"class_list":["post-1523","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-nosql"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Desconstruindo NoSQL: em busca de melhores termos - \/dev\/Kico<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/devkico.itexto.com.br\/?p=1523\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Desconstruindo NoSQL: em busca de melhores termos - \/dev\/Kico\" \/>\n<meta property=\"og:description\" content=\"Mostrando o qu\u00e3o pouco o termo NoSQL na realidade diz e buscando alternativas para resolver o problema.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/devkico.itexto.com.br\/?p=1523\" \/>\n<meta property=\"og:site_name\" content=\"\/dev\/Kico\" \/>\n<meta property=\"article:published_time\" content=\"2013-08-27T02:37:44+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2013-09-06T01:01:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/protagoras.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"200\" \/>\n\t<meta property=\"og:image:height\" content=\"227\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Kico (Henrique Lobo Weissmann)\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@loboweissmann\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kico (Henrique Lobo Weissmann)\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/devkico.itexto.com.br\/?p=1523\",\"url\":\"https:\/\/devkico.itexto.com.br\/?p=1523\",\"name\":\"Desconstruindo NoSQL: em busca de melhores termos - \/dev\/Kico\",\"isPartOf\":{\"@id\":\"https:\/\/devkico.itexto.com.br\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/devkico.itexto.com.br\/?p=1523#primaryimage\"},\"image\":{\"@id\":\"https:\/\/devkico.itexto.com.br\/?p=1523#primaryimage\"},\"thumbnailUrl\":\"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/protagoras.jpg\",\"datePublished\":\"2013-08-27T02:37:44+00:00\",\"dateModified\":\"2013-09-06T01:01:02+00:00\",\"author\":{\"@id\":\"https:\/\/devkico.itexto.com.br\/#\/schema\/person\/502ab8892631bb005d6da2269fe5a3a7\"},\"breadcrumb\":{\"@id\":\"https:\/\/devkico.itexto.com.br\/?p=1523#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/devkico.itexto.com.br\/?p=1523\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/devkico.itexto.com.br\/?p=1523#primaryimage\",\"url\":\"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/protagoras.jpg\",\"contentUrl\":\"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/protagoras.jpg\",\"width\":200,\"height\":227,\"caption\":\"Prot\u00e1goras riu pra mim. :)\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/devkico.itexto.com.br\/?p=1523#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/devkico.itexto.com.br\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Desconstruindo NoSQL: em busca de melhores termos\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/devkico.itexto.com.br\/#website\",\"url\":\"https:\/\/devkico.itexto.com.br\/\",\"name\":\"\/dev\/Kico\",\"description\":\"Desenvolvendo software\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/devkico.itexto.com.br\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/devkico.itexto.com.br\/#\/schema\/person\/502ab8892631bb005d6da2269fe5a3a7\",\"name\":\"Kico (Henrique Lobo Weissmann)\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/devkico.itexto.com.br\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/dd6973d86a689bc63122b2e603f25be3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/dd6973d86a689bc63122b2e603f25be3?s=96&d=mm&r=g\",\"caption\":\"Kico (Henrique Lobo Weissmann)\"},\"sameAs\":[\"https:\/\/x.com\/loboweissmann\"],\"url\":\"https:\/\/devkico.itexto.com.br\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Desconstruindo NoSQL: em busca de melhores termos - \/dev\/Kico","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:\/\/devkico.itexto.com.br\/?p=1523","og_locale":"pt_BR","og_type":"article","og_title":"Desconstruindo NoSQL: em busca de melhores termos - \/dev\/Kico","og_description":"Mostrando o qu\u00e3o pouco o termo NoSQL na realidade diz e buscando alternativas para resolver o problema.","og_url":"https:\/\/devkico.itexto.com.br\/?p=1523","og_site_name":"\/dev\/Kico","article_published_time":"2013-08-27T02:37:44+00:00","article_modified_time":"2013-09-06T01:01:02+00:00","og_image":[{"width":200,"height":227,"url":"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/protagoras.jpg","type":"image\/jpeg"}],"author":"Kico (Henrique Lobo Weissmann)","twitter_card":"summary_large_image","twitter_creator":"@loboweissmann","twitter_misc":{"Escrito por":"Kico (Henrique Lobo Weissmann)","Est. tempo de leitura":"5 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/devkico.itexto.com.br\/?p=1523","url":"https:\/\/devkico.itexto.com.br\/?p=1523","name":"Desconstruindo NoSQL: em busca de melhores termos - \/dev\/Kico","isPartOf":{"@id":"https:\/\/devkico.itexto.com.br\/#website"},"primaryImageOfPage":{"@id":"https:\/\/devkico.itexto.com.br\/?p=1523#primaryimage"},"image":{"@id":"https:\/\/devkico.itexto.com.br\/?p=1523#primaryimage"},"thumbnailUrl":"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/protagoras.jpg","datePublished":"2013-08-27T02:37:44+00:00","dateModified":"2013-09-06T01:01:02+00:00","author":{"@id":"https:\/\/devkico.itexto.com.br\/#\/schema\/person\/502ab8892631bb005d6da2269fe5a3a7"},"breadcrumb":{"@id":"https:\/\/devkico.itexto.com.br\/?p=1523#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/devkico.itexto.com.br\/?p=1523"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/devkico.itexto.com.br\/?p=1523#primaryimage","url":"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/protagoras.jpg","contentUrl":"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/protagoras.jpg","width":200,"height":227,"caption":"Prot\u00e1goras riu pra mim. :)"},{"@type":"BreadcrumbList","@id":"https:\/\/devkico.itexto.com.br\/?p=1523#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/devkico.itexto.com.br\/"},{"@type":"ListItem","position":2,"name":"Desconstruindo NoSQL: em busca de melhores termos"}]},{"@type":"WebSite","@id":"https:\/\/devkico.itexto.com.br\/#website","url":"https:\/\/devkico.itexto.com.br\/","name":"\/dev\/Kico","description":"Desenvolvendo software","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/devkico.itexto.com.br\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"pt-BR"},{"@type":"Person","@id":"https:\/\/devkico.itexto.com.br\/#\/schema\/person\/502ab8892631bb005d6da2269fe5a3a7","name":"Kico (Henrique Lobo Weissmann)","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/devkico.itexto.com.br\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/dd6973d86a689bc63122b2e603f25be3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/dd6973d86a689bc63122b2e603f25be3?s=96&d=mm&r=g","caption":"Kico (Henrique Lobo Weissmann)"},"sameAs":["https:\/\/x.com\/loboweissmann"],"url":"https:\/\/devkico.itexto.com.br\/?author=1"}]}},"jetpack_featured_media_url":"https:\/\/devkico.itexto.com.br\/wp-content\/uploads\/2013\/08\/protagoras.jpg","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/devkico.itexto.com.br\/index.php?rest_route=\/wp\/v2\/posts\/1523"}],"collection":[{"href":"https:\/\/devkico.itexto.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devkico.itexto.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devkico.itexto.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/devkico.itexto.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1523"}],"version-history":[{"count":10,"href":"https:\/\/devkico.itexto.com.br\/index.php?rest_route=\/wp\/v2\/posts\/1523\/revisions"}],"predecessor-version":[{"id":1560,"href":"https:\/\/devkico.itexto.com.br\/index.php?rest_route=\/wp\/v2\/posts\/1523\/revisions\/1560"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devkico.itexto.com.br\/index.php?rest_route=\/wp\/v2\/media\/1527"}],"wp:attachment":[{"href":"https:\/\/devkico.itexto.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1523"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devkico.itexto.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1523"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devkico.itexto.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1523"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}