{"id":2500,"date":"2016-01-14T16:21:48","date_gmt":"2016-01-14T16:21:48","guid":{"rendered":"http:\/\/www.blog.facilcloud.com\/noticias\/?p=2500"},"modified":"2016-07-26T16:24:42","modified_gmt":"2016-07-26T16:24:42","slug":"mongo-db-rapido-y-escalable","status":"publish","type":"post","link":"https:\/\/www.blog.facilcloud.com\/noticias\/mongo-db-rapido-y-escalable\/","title":{"rendered":"Mongo DB, r\u00e1pido y escalable"},"content":{"rendered":"<p style=\"text-align: justify;\"><a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"><span style=\"color: #0000ff;\">MongoDB<\/span> <\/a>es un sistema de base de datos <a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"><span style=\"color: #0000ff;\">NoSQL<\/span> <\/a>orientado a documentos, desarrollado bajo el concepto de c\u00f3digo abierto. Esto quiere decir que, en lugar de guardar los datos en registros, guarda los datos en documentos. Y dichos documentos, a su vez, son almacenados en <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">BSON<\/a><\/span>, que es una representaci\u00f3n binaria con un esquema din\u00e1mico, de <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">JSON<\/a><\/span>.<\/p>\n<p style=\"text-align: justify;\">Esta importante herramienta disponible en la <a href=\"https:\/\/www.facilcloud.com\/es\/index.php\" target=\"_blank\"><span style=\"color: #0000ff;\">nube el\u00e1stica<\/span><\/a> de <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/index.php\" target=\"_blank\">Facilcloud<\/a><\/span>, te permite guardar los datos en tablas como se hace en las bases de datos relacionales, haciendo que la integraci\u00f3n de los datos en ciertas aplicaciones sea m\u00e1s f\u00e1cil y r\u00e1pida. Asimismo, su c\u00f3digo binario est\u00e1 disponible para los sistemas operativos <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">Windows<\/a><\/span>, <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">Linux<\/a><\/span>, OS X y Solaris.<\/p>\n<p style=\"text-align: justify;\">Una de las diferencias m\u00e1s importantes con respecto a las bases de datos relacionales, es que no es necesario seguir un esquema. Los <a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud-docs.php\" target=\"_blank\"><span style=\"color: #0000ff;\">documentos<\/span> <\/a>de una misma colecci\u00f3n &#8211; concepto similar a una tabla de una <a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"><span style=\"color: #0000ff;\">base de datos<\/span> <\/a>relacional -, pueden tener esquemas diferentes.<\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/mongodb-150x150.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-full wp-image-2505 alignright\" src=\"https:\/\/blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/mongodb-150x150.png\" alt=\"mongodb-150x150\" width=\"150\" height=\"150\" srcset=\"https:\/\/www.blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/mongodb-150x150.png 150w, https:\/\/www.blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/mongodb-150x150-80x80.png 80w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a><a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"><span style=\"color: #0000ff;\">MongoDB<\/span> <\/a>permite ejecutar distintos comandos, dado que proviene de <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">JavaScript<\/a><\/span>, por lo que las consultas se realizan utilizando ese lenguaje. Adem\u00e1s de las funciones de <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">MongoDB<\/a><\/span>, se puede utilizar muchas de las funciones propias de <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">JavaScript<\/a><\/span>, tambi\u00e9n se pueden definir variables.<\/p>\n<p style=\"text-align: justify;\">Asimismo, si se quiere usar otro lenguaje de programaci\u00f3n, existen drivers oficiales para hacerlo, como <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">C#<\/a><\/span>, <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">Java<\/a><\/span>, <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">Node.js<\/a><\/span>, <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">PHP<\/a><\/span>, <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">Python<\/a><\/span>, <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">Ruby<\/a><\/span>, <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">C<\/a><\/span>, <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">C++<\/a><\/span>,<span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"> Perl<\/a> <\/span>o <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">Scala<\/a><\/span>.<\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/www.facilcloud.com\/managed-cloud.php\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-2332 size-full\" src=\"https:\/\/blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/Banner-Facilcloud_728-x-90.jpg\" alt=\"Banner Facilcloud_728 x 90\" width=\"728\" height=\"90\" srcset=\"https:\/\/www.blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/Banner-Facilcloud_728-x-90.jpg 728w, https:\/\/www.blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/Banner-Facilcloud_728-x-90-300x37.jpg 300w, https:\/\/www.blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/Banner-Facilcloud_728-x-90-235x29.jpg 235w\" sizes=\"(max-width: 728px) 100vw, 728px\" \/><\/a><\/p>\n<p style=\"text-align: justify;\"><strong>Usos m\u00e1s frecuentes<\/strong><\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/Mongo-DB-04.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-full wp-image-2504 alignleft\" src=\"https:\/\/blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/Mongo-DB-04.png\" alt=\"Mongo DB-04\" width=\"140\" height=\"150\" \/><\/a>La base de dato <a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"><span style=\"color: #0000ff;\">MongoDB<\/span> <\/a>es frecuentemente utilizada en: almacenamiento y registro de eventos, en sistemas de manejo de documentos y contenido, comercio electr\u00f3nico, juegos, problemas de alto volumen de lecturas, aplicaciones m\u00f3viles, almac\u00e9n de datos operacional de una p\u00e1gina web, manejo de contenido, almacenamiento de comentarios, votaciones,<\/p>\n<p style=\"text-align: justify;\">registro de usuarios, perfiles de usuarios, sesiones de datos, proyectos que utilizan metodolog\u00edas de <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud-docs.php\" target=\"_blank\">desarrollo<\/a> <\/span>iterativo o \u00e1giles, manejo de estad\u00edsticas en tiempo real, entre otros.<\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"><span style=\"color: #0000ff;\">MongoDB<\/span> <\/a>es especialmente \u00fatil en entornos que requieran escalabilidad. Con sus opciones de replicaci\u00f3n y sharding, que son muy sencillas de configurar, se puede conseguir un sistema que escale horizontalmente sin demasiadas complicaciones. En esta base de datos no existen las transacciones; si las transacciones son algo indispensable en nuestro desarrollo, deber\u00eda evaluarse otro sistema.<\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/Mongo-DB-02.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-full wp-image-2502 alignright\" src=\"https:\/\/blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/Mongo-DB-02.png\" alt=\"Mongo DB-02\" width=\"140\" height=\"150\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">Tampoco existen los JOINS, si se requiere consultar datos relacionados en dos o m\u00e1s colecciones, se debe hacer m\u00e1s de una consulta. De modo que si los datos pueden ser estructurados en tablas, y se necesitan las relaciones, es mejor optar por un RDBMS cl\u00e1sico.<\/p>\n<p style=\"text-align: justify;\">Asimismo, para las consultas de agregaci\u00f3n. <a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"><span style=\"color: #0000ff;\">MongoDB<\/span> <\/a>incluye un framework para realizar consultas de este tipo llamado Aggregation Framework. Tambi\u00e9n puede usar Map Reduce. Pero, no obstante, estos m\u00e9todos no llegan a la potencia de un <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">sistema<\/a> <\/span>relacional. De manera que si se precisa explotar informes complejos, debe pensarse en utilizar otro <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">sistema<\/a><\/span>.<\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/Mongo-DB-03.png\"><img loading=\"lazy\" decoding=\"async\" class=\" size-full wp-image-2503 alignleft\" src=\"https:\/\/blog.facilcloud.com\/noticias\/wp-content\/uploads\/2016\/01\/Mongo-DB-03.png\" alt=\"Mongo DB-03\" width=\"140\" height=\"150\" \/><\/a><\/p>\n<p style=\"text-align: justify;\">De modo que, <a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"><span style=\"color: #0000ff;\">MongoDB<\/span> <\/a>es m\u00e1s r\u00e1pido en las operaciones de escritura; para operaciones de escritura sencillas es entre 2 y 4 veces m\u00e1s r\u00e1pido, para un n\u00famero de escrituras elevado &#8211; el test de escritura de 30 millones de registros de acceso, por ejemplo &#8211; <a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"><span style=\"color: #0000ff;\">MongoDB<\/span> <\/a>duplica en rendimiento a <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">MySQL<\/a><\/span>. Y en escrituras concurrentes es m\u00e1s r\u00e1pido.<\/p>\n<p style=\"text-align: justify;\">En funciones de agregaci\u00f3n, <a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"><span style=\"color: #0000ff;\">MySQL<\/span> <\/a>supera ampliamente a <span style=\"color: #0000ff;\"><a style=\"color: #0000ff;\" href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\">MongoDB<\/a><\/span>. Dado que es mucho m\u00e1s r\u00e1pido en la agregaci\u00f3n de datos, entre 3 y 6 veces m\u00e1s r\u00e1pido.<\/p>\n<p style=\"text-align: justify;\"><a href=\"https:\/\/www.facilcloud.com\/es\/managed-cloud.php\" target=\"_blank\"><span style=\"color: #0000ff;\">MongoDB<\/span> <\/a>es m\u00e1s escalable, lo que significa que cuando la carga de usuarios aumenta el tiempo de respuesta se mantiene estable.<\/p>\n<p>&nbsp;<\/p>\n<p><a href=\"https:\/\/blog.facilcloud.com\/noticias\/wp-content\/uploads\/2015\/07\/Alida-Facilcloud-2_Es-03.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-79\" src=\"https:\/\/blog.facilcloud.com\/noticias\/wp-content\/uploads\/2015\/07\/Alida-Facilcloud-2_Es-03.jpg\" alt=\"Escritora de tecnologia\" width=\"728\" height=\"91\" srcset=\"https:\/\/www.blog.facilcloud.com\/noticias\/wp-content\/uploads\/2015\/07\/Alida-Facilcloud-2_Es-03.jpg 728w, https:\/\/www.blog.facilcloud.com\/noticias\/wp-content\/uploads\/2015\/07\/Alida-Facilcloud-2_Es-03-300x38.jpg 300w, https:\/\/www.blog.facilcloud.com\/noticias\/wp-content\/uploads\/2015\/07\/Alida-Facilcloud-2_Es-03-235x29.jpg 235w\" sizes=\"(max-width: 728px) 100vw, 728px\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>MongoDB es un sistema de base de datos NoSQL orientado a documentos, desarrollado bajo el concepto de c\u00f3digo abierto. Esto quiere decir que, en lugar de guardar los datos en registros, guarda los datos en documentos. Y dichos documentos, a su vez, son almacenados en BSON, que es una representaci\u00f3n binaria con un esquema din\u00e1mico, [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":2509,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[735],"tags":[335,20,71,16,17,733,69,6,173,47,10,42,39,15,18,7,11,13,267,100,98,89,35,263],"class_list":["post-2500","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-elastic-cloud","tag-america","tag-app","tag-apps","tag-cloud","tag-cloud-server","tag-developers","tag-devops","tag-elastic-cloud","tag-facilcloud","tag-hosting","tag-java","tag-mongodb","tag-mysql","tag-node-js","tag-nube","tag-nube-elastica","tag-php","tag-phyton","tag-plataforma","tag-programadores","tag-python","tag-software","tag-tecnologia","tag-web"],"_links":{"self":[{"href":"https:\/\/www.blog.facilcloud.com\/noticias\/wp-json\/wp\/v2\/posts\/2500","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.blog.facilcloud.com\/noticias\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.blog.facilcloud.com\/noticias\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.blog.facilcloud.com\/noticias\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.blog.facilcloud.com\/noticias\/wp-json\/wp\/v2\/comments?post=2500"}],"version-history":[{"count":0,"href":"https:\/\/www.blog.facilcloud.com\/noticias\/wp-json\/wp\/v2\/posts\/2500\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.blog.facilcloud.com\/noticias\/wp-json\/wp\/v2\/media\/2509"}],"wp:attachment":[{"href":"https:\/\/www.blog.facilcloud.com\/noticias\/wp-json\/wp\/v2\/media?parent=2500"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.blog.facilcloud.com\/noticias\/wp-json\/wp\/v2\/categories?post=2500"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.blog.facilcloud.com\/noticias\/wp-json\/wp\/v2\/tags?post=2500"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}