{"id":10233,"date":"2014-01-07T06:36:48","date_gmt":"2014-01-07T05:36:48","guid":{"rendered":"http:\/\/flaven.fr\/?p=10233"},"modified":"2026-09-16T10:07:44","modified_gmt":"2026-09-16T08:07:44","slug":"mongodb-nosql-bigdata-comprendre-le-phenomene-nosql-en-decouvrant-un-peu-mongodb","status":"publish","type":"post","link":"https:\/\/flaven.fr\/2014\/01\/mongodb-nosql-bigdata-comprendre-le-phenomene-nosql-en-decouvrant-un-peu-mongodb\/","title":{"rendered":"MongoDB, NoSQL, BigData &#8211; Comprendre le ph\u00e9nom\u00e8ne NoSQL en d\u00e9couvrant un peu MongoDB"},"content":{"rendered":"\n<p><!--  MongoDB, NoSQL, BigData - Comprendre le ph\u00e9nom\u00e8ne NoSQL en d\u00e9couvrant un peu MongoDB   --><br \/>\n\t<!--  CouchDB, MacPort, HomeBrew, HBase, Webtable, Hypertable\n  Column Databases, RDBMS, MongoDB, Selfie, Belfie, Kardashian, Big Data, Cloud, javascript, infosit\u00e9 --><\/p>\n<p>L&#8217;explosion de contenu cr\u00e9e par les utilisateurs a provoqu\u00e9 une croissance vertigineuse du volume et du type de contenu \u00e0 manipuler, \u00e0 analyser et \u00e0 archiver. Cette tendance inflationniste n&#8217;est pas pr\u00eate de s&#8217;inverser car il existe d\u00e9sormais de tr\u00e8s nombreuses sources additionnelles de donn\u00e9es : les donn\u00e9es issues de capteurs, les donn\u00e9es de GPS (Global Positioning Systems), les donn\u00e9es d&#8217;outils de tracking ou de monitoring.<\/p>\n<p>L&#8217;ensemble  des ces volumes de donn\u00e9es est commun\u00e9ment d\u00e9sign\u00e9 sous le nom de &#8220;Big Data&#8221;. Ce ph\u00e9nom\u00e8ne d&#8217;ob\u00e9sit\u00e9 des donn\u00e9es (infosit\u00e9) \u00e0 traiter questionne donc naturellement les standards largement adopt\u00e9s dans le domaine du stockage, de l&#8217;analyse et de l&#8217;archivage.<\/p>\n<h4>Digression ontologique<\/h4>\n<p>La nature m\u00eame de l&#8217;information commence \u00e0 muter, les donn\u00e9es n&#8217;ont jamais \u00e9t\u00e9 aussi ambivalentes : \u00e0 la fois \u00e9parses et semi-structur\u00e9e. L\u00e0 encore, cette ambivalence bouscule \u00e9videmment les m\u00e9thodes traditionnelles d&#8217;organisation de donn\u00e9es notamment les sch\u00e9mas traditionnelles de structuration et de relations liant ces informations, en un mot les bases de donn\u00e9es. Au-de-l\u00e0 du mode de stockage, c&#8217;est l&#8217;interpr\u00e9tation qui est importante. C&#8217;est cette capacit\u00e9 qui guidera les forces du marketing, du march\u00e9, l\u00e0 o\u00f9 les gens ach\u00e8tent. Un dieu, donnez-moi un dieu, ce sera le data-mining ou l&#8217;agile marketing, qu&#8217;importe pourvu que l&#8217;ivresse des chiffres&#8230; Mais, revenons, aux chiffres justement et \u00e0 la n\u00e9cessit\u00e9 que tout fasse sens.<\/p>\n<p>Donc, voici, l&#8217;\u00e9mergence d&#8217;un nouveau type de base de donn\u00e9es connue sous le nom de NoSQL. R\u00e9ponse aux \u00e9pineuses questions soulev\u00e9es par le ph\u00e9nom\u00e8ne du BigData. Comment traiter en temps r\u00e9el, dans un univers constamment mouvant, un nouveau type d&#8217;information, qui rel\u00e8ve plus de l&#8217;\u00e9conomie libidinale ou de la carte du tendre, des \u00e9motions mis en carte en quelque sorte. H\u00e9, oui, ces nouveaux types de BDD consistent essentiellement en des donn\u00e9es stock\u00e9s en colonne, des BDD compos\u00e9es de paire cl\u00e9s\/valeurs et des BDD de document qui ne visent sans doute qu&#8217;\u00e0 dominer l&#8217;intime de chaque individu.<br \/>\nA n&#8217;en pas douter, la fin annonc\u00e9e de mysql est aussi la fin d&#8217;un monde. Leibniz, Descartes sont morts et enterr\u00e9s, seul survit un Guy Debord, sans conscience ni culture, un boulevard avenir tr\u00e8s lucratif.<\/p>\n<p>Bref, cette combinaison a donc engendr\u00e9 un ph\u00e9nom\u00e8ne tout beau, tout nouveau nomm\u00e9 NoSQL.  <\/p>\n<h4>NoSQL is more catchy than NoRDBMS*<\/h4>\n<p><i>NoSQL est plus aguicheur que NoRDBMS*<\/i><\/p>\n<p>C&#8217;est vrai que le terme de NoSQL est &#8220;catchy&#8221;, on reconnait bien l\u00e0 le sens inn\u00e9e des am\u00e9ricains pour la com et le marketing. NoRDBMS aurait \u00e9t\u00e9 ou <code>chouya<\/code> trop long mais plus didactique. RDBMS signifie <code>relational database management system<\/code>.<\/p>\n<p>Ce ph\u00e9nom\u00e8ne n&#8217;est pas si anodin, des enseignes du web tels Google, Amazon, Facebook&#8230;etc. confront\u00e9es \u00e0 des volumes donn\u00e9es pharaoniques se sont attel\u00e9s au probl\u00e8me. Dans leurs grandes mansu\u00e9tudes, d\u00e9sint\u00e9ress\u00e9es :):), ces m\u00eames enseignes donnent de nombreuse cl\u00e9s pour r\u00e9sorber ces probl\u00e9matiques. Une question : est-ce le but ultime du capitalisme moderne, livrer la cl\u00e9 temporelle des individus, pieds et poings li\u00e9s, en confiant leurs existences \u00e0 l&#8217;intelligence machine et aux big datas centers ?<\/p>\n<p>Car qui d\u00e9tient, l&#8217;information ou plut\u00f4t son interpr\u00e9tation d\u00e9tient les cl\u00e9s de l&#8217;asservissement. Qui donne un sens \u00e0 tout cela : l&#8217;intelligence artificiel, des hommes v\u00e9ritables&#8230; D\u00e9bat sans doute d&#8217;un autre \u00e2ge, sachant que l&#8217;on se drogue \u00e0 la data, on est vraiment de devenus des bouffeurs d&#8217;octets, \u00e0 d\u00e9faut d&#8217;autre chose, regarder l&#8217;addiction de la NSA \u00e0 la BigData pire qu&#8217;une addiction au crack ou enfin la fi\u00e8vre singuli\u00e8re du Selfie ou du Belfie. Kardashian Big Data, m\u00eame combat. La tendance \u00e0 l&#8217;<code>infosit\u00e9<\/code> n&#8217;est pas pr\u00eate de s&#8217;arr\u00eater avec les mobiles multi-fonctions, les billets de blogs, les  moindres consid\u00e9rations mises \u00e0 jour quotidiennes sur les r\u00e9seaux sociaux, les tweets, les documents \u00e9lectroniques, le contenu num\u00e9ris\u00e9 (fichiers musicaux, fichiers vid\u00e9os&#8230; Nous consommons beaucoup de donn\u00e9es et en produisons encore plus. Et donc&#8230; revenons plut\u00f4t dans la logique post-capitaliste qui nous int\u00e9resse, \u00e0 savoir manipuler les masses en n&#8217;ayant le moins de scrupules possibles, il faut quand m\u00eame dormir la nuit.<\/p>\n<h4>Les mains dans le cambouis : Installer MongoDB<\/h4>\n<p>\tQuelques erreurs \u00e0 \u00e9viter pour faire fonctionner <code>MongoDB<\/code>.<\/p>\n<p><b>Un message d&#8217;erreur li\u00e9 au fait que le r\u00e9pertoire de donn\u00e9es n&#8217;existe pas<\/b><br \/>\n<code lang=\"bash\"><br \/>\n  ERROR: dbpath (\/data\/db\/) does not exist.<br \/>\n   Create this directory or give existing directory in --dbpath.<br \/>\n   See http:\/\/dochub.mongodb.org\/core\/startingandstoppingmongo<br \/>\n<\/code><\/p>\n<p>  Il faut se mettre en racine de votre disque et cr\u00e9er ce fameux r\u00e9pertoire <code>\/data\/db\/<\/code> et autoriser la lecture et l&#8217;\u00e9criture.<\/p>\n<pre lang=\"bash\">\r\n  sudo -s\r\n  mkdir \/data\r\n  cd data\r\n  mkdir db\r\n  chmod 777 \/data\/db\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2014\/01\/mongodb_install_1.jpg\" alt=\"MongoDB, NoSQL, BigData - Apprendre le ph\u00e9nom\u00e8ne NoSQL en comprenant un peu MongoDB\" width=\"500\" height=\"313\" \/><\/p>\n<p>Cette fois, on est bon, on va pouvoir jouer un peu&#8230;<\/p>\n<h4>Jeopardize MySQL<\/h4>\n<p>Se rendre dans le r\u00e9pertoire nouvellement install\u00e9 via la commande <code>cd \/Users\/[user_name]\/mongodb\/bin\/<\/code> puis lancer ensuite la commande <code>.\/mongod<\/code><\/p>\n<p>Dans une premi\u00e8re fen\u00eatre de terminal, on lance la commande <code>.\/mongod<\/code> pour d\u00e9marrer le serveur.<\/p>\n<p>Puis ensuite, dans une deuxi\u00e8me fen\u00eatre de terminal, on lance la commande <code>.\/mongo<\/code> pour acc\u00e9der au client mongo.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2014\/01\/mongodb_links_manip_1.jpg\" alt=\"MongoDB, NoSQL, BigData - Apprendre le ph\u00e9nom\u00e8ne NoSQL en comprenant un peu MongoDB\" width=\"500\" height=\"313\" \/><\/p>\n<p><b>Utiliser une base de donn\u00e9es <code>use [table_name]<\/code><\/b><br \/>\nOn va donc utiliser une BDD nomm\u00e9 <code>links<\/code><\/p>\n<pre lang=\"bash\">use links<\/pre>\n<pre lang=\"javascript\">show dbs;<\/pre>\n<pre lang=\"javascript\">\r\n\/* montre tous les \u00e9l\u00e9ments de la base links *\/\r\ndb.links.find().forEach(printjson);\r\n<\/pre>\n<pre lang=\"javascript\">\r\n\/* count the number of links *\/\r\ndb.links.count();\r\n<\/pre>\n<p><b>On fait notre premier enregistrement, \u00e0 noter que tags est un <code>array<\/code>. Premier avantages de MongoDB, pas la peine de cr\u00e9er une autre table pour stocker les valeurs que peuvent prendre ces tags.<\/b><\/p>\n<pre lang=\"javascript\">\r\n\/* insert some links *\/\r\ndb.links.insert({\r\n   title:\"Mon premier bookmark\",\r\n   url:\"https:\/\/flaven.fr\",\r\n   comment:\"Un tr\u00e8s bon site, un peu brouillon n\u00e9anmoins\",\r\n   tags:[\"d\u00e9veloppement\", \"NoSQL\", \"BigData\"], \r\n   saved_on: new Date()\r\n   });\r\n<\/pre>\n<pre lang=\"javascript\">\r\n\/* show records *\/\r\ndb.links.find();\r\n<\/pre>\n<pre lang=\"javascript\">\r\n\/* insert record new way  *\/\r\nvar doc = { };\r\ndoc.title = \"Mon 2\u00e8me bookmark\";\r\ndoc.url = \"http:\/\/3wdoc.com\";\r\ndoc.comment = \"Bon site en rose\";\r\ndoc.tags = [\"javascript\", \"HTML5\", \"jQuery\"];\r\ndoc.saved_on = new Date();\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2014\/01\/mongodb_links_manip_3.jpg\" alt=\"MongoDB, NoSQL, BigData - Apprendre le ph\u00e9nom\u00e8ne NoSQL en comprenant un peu MongoDB\" width=\"500\" height=\"313\" \/><\/p>\n<pre lang=\"javascript\">\r\n\/* ajout de meta \u00e9l\u00e9ments *\/\r\ndoc.meta = {};\r\ndoc.meta.statut = \"Bient\u00f4t sur Github\";\r\ndoc.meta.langues = \"Le site est disponible en 3 langues : FR, EN, ES\";\r\n<\/pre>\n<pre lang=\"javascript\">\r\n\/* save the doc object *\/\r\ndb.links.save(doc);\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2014\/01\/mongodb_links_manip_4.jpg\" alt=\"MongoDB, NoSQL, BigData - Apprendre le ph\u00e9nom\u00e8ne NoSQL en comprenant un peu MongoDB\" width=\"500\" height=\"313\" \/><\/p>\n<pre lang=\"javascript\">\r\n\/* Montre les elements de la BDD links au format JSON *\/\r\ndb.links.find().forEach(printjson);\r\n<\/pre>\n<pre lang=\"javascript\">\r\ndb.links.find()[0];\r\ndb.links.find()[0]._id;\r\ndb.links.find()[0]._id.getTimestamp();\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2014\/01\/mongodb_links_manip_5.jpg\" alt=\"MongoDB, NoSQL, BigData - Apprendre le ph\u00e9nom\u00e8ne NoSQL en comprenant un peu MongoDB\" width=\"500\" height=\"313\" \/><\/p>\n<pre lang=\"javascript\">\r\ndb.users.insert({name: \"Bruno\"});\r\nvar myName = db.users.findOne({name: \"Bruno\"});\r\n<\/pre>\n<pre lang=\"javascript\">\r\nmyName._id;\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2014\/01\/mongodb_links_manip_6.jpg\" alt=\"MongoDB, NoSQL, BigData - Apprendre le ph\u00e9nom\u00e8ne NoSQL en comprenant un peu MongoDB\" width=\"500\" height=\"313\" \/><\/p>\n<pre lang=\"javascript\">\r\ndb.links.insert({ title:\"Mon 3\u00e8me bookmarks\", url:\"http:\/\/google.com\", comment:\"Beau moteur\", userId: myName._id });\r\ndb.links.find()[2];\r\nmyLink = db.links.find()[2];\r\n<\/pre>\n<pre lang=\"javascript\">\r\ndb.users.findOne({ _id: myLink.userId });\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2014\/01\/mongodb_links_manip_8.jpg\" alt=\"MongoDB, NoSQL, BigData - Apprendre le ph\u00e9nom\u00e8ne NoSQL en comprenant un peu MongoDB\" width=\"500\" height=\"313\" \/><\/p>\n<pre lang=\"javascript\">\r\ndb.links.find({ tags: \"HTML5\" }).forEach(printjson);\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2014\/01\/mongodb_links_manip_10.jpg\" alt=\"MongoDB, NoSQL, BigData - Apprendre le ph\u00e9nom\u00e8ne NoSQL en comprenant un peu MongoDB\" width=\"500\" height=\"313\" \/><\/p>\n<pre lang=\"javascript\">\r\ndb.links.findOne({ tags: \"HTML5\" }).title;\r\n<\/pre>\n<pre lang=\"javascript\">\r\n\/* Include ou s\u00e9lectionner des champs sp\u00e9cifiques \r\nUne sorte d'\u00e9quivalent en SQL \u00e0 SELECT links.title, links.url FROM links WHERE ...\r\n*\/\r\ndb.links.find({ tags: \"HTML5\" }, { title: 1, url: 1 });\r\n<\/pre>\n<pre lang=\"javascript\">\r\ndb.links.find({ tags: \"HTML5\" }, { title: 1, url: 1 }).forEach(printjson);\r\n<\/pre>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/flaven.fr\/wp-content\/uploads\/2014\/01\/mongodb_links_manip_11.jpg\" alt=\"MongoDB, NoSQL, BigData - Apprendre le ph\u00e9nom\u00e8ne NoSQL en comprenant un peu MongoDB\" width=\"500\" height=\"313\" \/><\/p>\n<pre lang=\"javascript\">\r\n\/* Exclure un champ sp\u00e9cifique et montrer tous les autres *\/\r\ndb.links.find({ tags: \"HTML5\" }, { tags: 0 }).forEach(printjson);\r\n<\/pre>\n<pre lang=\"javascript\">\r\n\/* Mix Inclure et Exclure, ne marche qu'avec l'ID *\/\r\ndb.links.find({ tags: \"HTML5\" }, { title: 1, url: 1, _id: 0 }).forEach(printjson);\r\n<\/pre>\n<pre lang=\"javascript\">db.links.count();<\/pre>\n<p>La possibilit\u00e9 de cr\u00e9er des sous-objets attach\u00e9s \u00e0 un objet. C&#8217;est un des concepts-cl\u00e9s du NoSQL, la d\u00e9normalisation<\/p>\n<p><b>La question du _id g\u00e9n\u00e9r\u00e9 par MongoDB<\/b><br \/>\nMongoDB g\u00e9n\u00e8re lui-m\u00eame une cl\u00e9 unique dans la mesure o\u00f9 le syst\u00e8me est appel\u00e9 sur de tr\u00e8s nombreuses machines. Il serait donc illusoire de penser que l&#8217;on puisse maintenir une bonne cl\u00e9 primaire comme dans une table MySQL. Rappelez-vous on parle de scalabilit\u00e9 horizontal, de Cloud, de Cluster bref d&#8217;une architecture totalement d\u00e9centralis\u00e9e.<\/p>\n<p>La base de donn\u00e9es relationnel est l\u00e0 pour minimiser les &#8220;redundancies&#8221; et les &#8220;dependancies&#8221; mais nosql offre des performances sans \u00e9quivalents.<\/p>\n<h4>BSON, fut\u00e9 ?<\/h4>\n<p>Il existe deux diff\u00e9rences pour se figurer ce qu&#8217;est le BSON par rapport au JSON. <\/p>\n<ol>\n<li>Le BSON est une repr\u00e9sentation binaire du JSON<\/li>\n<li>Le BSON inclut quelques data-type en plus du JSON<\/li>\n<\/ol>\n<p><b>Un avantage important, ce que tout est en javascript. On est dans un environnement homog\u00e8ne en terme de langage. La base retourne des objets dans un format directement exploitable cot\u00e9 client. Alors, imaginez les b\u00e9n\u00e9fices possibles, d&#8217;une base NoSQL coupl\u00e9 avec Node.js ! Cela signifie que tout marche indiff\u00e9remment c\u00f4te serveur comme c\u00f4t\u00e9 client. Sans vouloir jouer les Cassandres, il y a bien dans cette affirmation de quoi menacer l&#8217;h\u00e9g\u00e9monie des langages \u00e9tablies type PHP, Ruby&#8230; ainsi que des sacro-saintes BDD de donn\u00e9es relationnels. A suivre d&#8217;autant plus que l&#8217;on nous bassine avec l&#8217;enjeu des big data, du Cloud, de la Scabilit\u00e9&#8230; mais sans jamais vraiment toucher du doigt si l&#8217;on peut dire des notions aussi abstraites.<\/b><\/p>\n<h4>D&#8217;autres fa\u00e7ons d&#8217;installer MongoDB<\/h4>\n<p>Il existe plein d&#8217;autres fa\u00e7ons d&#8217;installer MongoDB, notamment \u00e0 l&#8217;aide de MacPort ou de HomeBrew. On vous donne pour information les quelques commandes pour installer MongoDB \u00e0 l&#8217;aide de HomeBrew.<\/p>\n<p><b>Installer <code>MongoDB<\/code> avec <code>HomeBrew<\/code><\/b><\/p>\n<pre lang=\"bash\">\r\n  brew update\r\n  brew install mongodb\r\n<\/pre>\n<p><b>Mettre \u00e0 jour <code>MongoDB<\/code> avec <code>HomeBrew<\/code><\/b><\/p>\n<pre lang=\"bash\">\r\n  brew update\r\n  brew upgrade mongodb\r\n<\/pre>\n<p><b>Conclusion : En fait, le souhait \u00e9tait de parler de couchDB mais finalement MongoDB remporte la palme. On ne peut d\u00e9cemment pas passer \u00e0 c\u00f4t\u00e9 du ph\u00e9nom\u00e8ne NoSQL. NoSQL rec\u00e8le trop de changements. Il est \u00e0 l&#8217;image du web et disons-le du monde d&#8217;aujourd&#8217;hui. Fin de l&#8217;histoire.<\/b><\/p>\n<h2>En savoir plus<\/h2>\n<ul>\n<li>Agile and Scalable, MongoDB<br \/><a href=\"http:\/\/www.mongodb.org\/\" target=\"_blank\">http:\/\/www.mongodb.org\/<\/a><\/li>\n<li>NoSQL &amp; Big Data Database | MongoDB<br \/><a href=\"http:\/\/www.mongodb.com\/\" target=\"_blank\">http:\/\/www.mongodb.com\/<\/a><\/li>\n<li>From the past : The Relationship Editor<br \/><a href=\"http:\/\/dev.mysql.com\/doc\/workbench\/en\/wb-relationship-editor.html\" target=\"_blank\">http:\/\/dev.mysql.com\/doc\/workbench\/en\/wb-relationship-editor.html<\/a><\/li>\n<li>How To Take The Perfect &#8216;Belfie&#8217; (That&#8217;s Bum Selfie To You And Me)<br \/><a href=\"http:\/\/www.huffingtonpost.co.uk\/2013\/12\/10\/how-to-take-the-perfect-belfie-bum-selfie_n_4418361.html\" target=\"_blank\">http:\/\/www.huffingtonpost.co.uk\/2013\/12\/10\/how-to-take-the-perfect-belfie-bum-selfie_n_4418361.html<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>L&#8217;explosion de contenu cr\u00e9e par les utilisateurs a provoqu\u00e9 une croissance vertigineuse du volume et du type de contenu \u00e0 manipuler, \u00e0 analyser et \u00e0&hellip; <\/p>\n<p class=\"text-center\"><a href=\"https:\/\/flaven.fr\/2014\/01\/mongodb-nosql-bigdata-comprendre-le-phenomene-nosql-en-decouvrant-un-peu-mongodb\/\" class=\"more-link\">Continue reading &rarr; <span class=\"screen-reader-text\">MongoDB, NoSQL, BigData &#8211; Comprendre le ph\u00e9nom\u00e8ne NoSQL en d\u00e9couvrant un peu MongoDB<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":10246,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"bf_ai_meta_description":"Le ph\u00e9nom\u00e8ne NoSQL et MongoDB r\u00e9pondent \u00e0 la croissance des donn\u00e9es utilisateur. Ma\u00eetrisez outils et r\u00e9sultats pour g\u00e9rer BigData.","bf_ai_og_title":"MongoDB, NoSQL, BigData","footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[3439,3440,3441,3444,3445,3447,3448],"tags":[579,3455,3514,3491],"class_list":["post-10233","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-apis-integration","category-cloud-infrastructure","category-data-analytics","category-programming-databases","category-seo-web-marketing","category-technology-trends","category-tools-productivity","tag-apache","tag-linux","tag-mongodb","tag-nosql"],"jetpack_publicize_connections":[],"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p3Vuhl-2F3","jetpack_featured_media_url":"https:\/\/flaven.fr\/wp-content\/uploads\/2014\/01\/nosql_phenomenom_bf.jpg","_links":{"self":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts\/10233","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/comments?post=10233"}],"version-history":[{"count":4,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts\/10233\/revisions"}],"predecessor-version":[{"id":10250,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/posts\/10233\/revisions\/10250"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/media\/10246"}],"wp:attachment":[{"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/media?parent=10233"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/categories?post=10233"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/flaven.fr\/happy-api\/wp\/v2\/tags?post=10233"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}