{"id":11432,"date":"2015-11-11T10:23:31","date_gmt":"2015-11-11T09:23:31","guid":{"rendered":"http:\/\/www.devapp.it\/wordpress\/?p=11432"},"modified":"2016-06-07T14:55:15","modified_gmt":"2016-06-07T12:55:15","slug":"couchbase-server-4-0-nuova-major-release-e-nuovo-linguaggio-di-interrogazione","status":"publish","type":"post","link":"https:\/\/www.devapp.it\/wordpress\/couchbase-server-4-0-nuova-major-release-e-nuovo-linguaggio-di-interrogazione\/","title":{"rendered":"Couchbase Server 4.0: nuova major release e nuovo linguaggio di interrogazione"},"content":{"rendered":"<p><a href=\"http:\/\/www.couchbase.com\/\" target=\"_blank\">Couchbase Server<\/a> ha raggiunto, all&#8217;inizio di ottobre, la versione 4.0. Stiamo parlando di una delle pi\u00f9 famose proposte del movimento <strong>NoSQL<\/strong>, il fenomeno che dilaga da anni, nato per superare i limiti imposti dai tradizionali Database Management Systems (DBMS) relazionali.<\/p>\n<p>Couchbase aderisce alla corrente <em>document-oriented<\/em> che vede tra i suoi esponenti anche <a href=\"https:\/\/www.mongodb.org\/\" target=\"_blank\">MongoDB<\/a>, ormai una delle tecnologie di persistenza pi\u00f9 diffuse al mondo.<\/p>\n<p>I DBMS &#8220;a documenti&#8221; permettono di immagazzinare i dati non in tabelle dalla rigida struttura prefissata, come nel mondo relazionale, bens\u00ec in record in formato JSON le cui propriet\u00e0 possono essere previste in fase di progettazione o definite al momento del salvataggio. La flessibilit\u00e0 da questo generata, oltre ad altri fattori, ha reso le soluzioni NoSQL pi\u00f9 adatte alle moderne circostanze in cui Social Network, servizi web e tecnologie mobili offrono dati sempre pi\u00f9 variegati.<\/p>\n<p>Tra le novit\u00e0 introdotte nella nuova <em>major release<\/em> compare un nuovo linguaggio di interrogazione, <strong>N1QL<\/strong>, che cerca di coniugare il buono della tradizione del SQL con il formato JSON. Il termine NoSQL infatti, al di l\u00e0 della prima impressione che produce, non indica un rifiuto netto di SQL ma significa &#8220;Not Only SQL&#8221;: \u00e8 un invito ad aprire la mente a nuovi approcci, superando quelli tradizionali\u00a0senza disprezzarli. A conferma di ci\u00f2 si \u00e8 visto che tanti DBMS di questo movimento hanno coltivato al proprio interno linguaggi di interrogazione molto simili a quello del mondo relazionale e con N1QL anche Couchbase cerca di allinearsi.<\/p>\n<p>Nella pagina del <a href=\"http:\/\/www.couchbase.com\/n1ql#sql\" target=\"_blank\">sito ufficiale<\/a> che invita alla sperimentazione della nuova modalit\u00e0 di interazione si trovano esempi che possono apparire singolari come quello in cui una query scritta in N1QL (anche se sembra in tutto e per tutto SQL):<\/p>\n<pre class=\"lang:mysql decode:true\">SELECT name, author FROM books<\/pre>\n<p>non restituisce un risultato in tabella ma un oggetto JSON come il seguente:<\/p>\n<pre class=\"lang:js decode:true \">{\r\n\t\"results\":\r\n\t[\t\r\n\t\t{\"name\":\"Marcovaldo\", \"author\":\"Italo Calvino\"},\r\n\t\t{\"name\":\"I Promessi Sposi\", \"author\":\"Alessandro Manzoni\"},\r\n\t\t{\"name\":\"Il deserto dei Tartari\", \"author\":\"Dino Buzzati\"}\r\n\t]\r\n}<\/pre>\n<p>Il primo vantaggio che si ravvisa in tutto questo e che incontra i bisogni dell&#8217;industria \u00e8 la facilit\u00e0 con cui il personale, avvezzo da anni all&#8217;uso del linguaggio SQL, non\u00a0si trova costretto a\u00a0cambiare abitudini e pu\u00f2\u00a0abbracciare la filosofia del NoSQL, per cos\u00ec dire, con naturalezza.<\/p>\n<p>N1QL rappresenta una grande novit\u00e0 della nuova versione di Couchbase ma non l&#8217;unica. Altro aspetto interessante \u00e8 il <strong>Multi-dimensional Scaling<\/strong> che permette di suddividere il carico di lavoro delle tre branche principali di attivit\u00e0 (query, indici e read\/write) su nodi differenti dello stesso cluster ottimizzando notevolmente le operazioni.<\/p>\n<p>Avete mai usato Couchbase o altre soluzioni NoSQL? Che vantaggi o svantaggi avete ravvisato?<\/p>\n<p>Commentate e fateci sapere!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Couchbase Server ha raggiunto, all&#8217;inizio di ottobre, la versione 4.0. Stiamo parlando di una delle pi\u00f9 famose&#8230;<\/p>\n","protected":false},"author":561,"featured_media":11492,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[534],"tags":[1530,1543,1542,1531,1529,543],"class_list":["post-11432","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news","tag-database","tag-database-nosql","tag-db-nosql","tag-json","tag-nosql","tag-sql"],"acf":[],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/11432","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/users\/561"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/comments?post=11432"}],"version-history":[{"count":11,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/11432\/revisions"}],"predecessor-version":[{"id":12113,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/posts\/11432\/revisions\/12113"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media\/11492"}],"wp:attachment":[{"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/media?parent=11432"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/categories?post=11432"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devapp.it\/wordpress\/wp-json\/wp\/v2\/tags?post=11432"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}