El documento presenta una agenda para un análisis de datos con MongoDB. La agenda incluye por qué hacer análisis con MongoDB, cómo crear un ambiente de MongoDB, cómo ingestar datos en MongoDB, cómo explorar datos con MongoDB Compass, cómo hacer análisis de datos con el Aggregation Framework de MongoDB, cómo extender el análisis con Python y Apache Spark, e integrar herramientas de BI. El documento también incluye una demostración del Aggregation Framework y la integración con Python y herramientas de BI.
This document discusses MongoDB performance tuning. It emphasizes that performance tuning is an obsession that requires planning schema design, statement tuning, and instance tuning in that order. It provides examples of using the MongoDB profiler and explain functions to analyze statements and identify tuning opportunities like non-covered indexes, unnecessary document scans, and low data locality. Instance tuning focuses on optimizing writes through fast update operations and secondary index usage, and optimizing reads by ensuring statements are tuned and data is sharded appropriately. Overall performance depends on properly tuning both reads and writes.
REPORTE INSTALACIÓN Y CONFIGURACIÓN DEL MySQL CLUSTEREduardo Schenker
Este documento describe la configuración de un clúster de bases de datos MySQL. Explica los componentes principales de un clúster MySQL como el administrador, nodos de datos y nodos API. Además, proporciona instrucciones detalladas sobre cómo configurar el administrador, los nodos y realizar pruebas básicas como crear bases de datos y tablas.
El documento describe las bases de datos para dispositivos móviles. Explica que las primeras aplicaciones móviles tenían pequeñas bases de datos o almacenaban datos en archivos de texto. Luego, todos los dispositivos móviles incluyeron una o más bases de datos embebidas para apoyar sus aplicaciones y servicios. Las bases de datos móviles permiten el acceso a datos corporativos de forma remota y portátil, y se comunican bidireccionalmente con el servidor de base de datos corporativo para sincronizar y replicar datos.
El documento describe los sistemas gestores de bases de datos (SGBD) y las tecnologías utilizadas por las principales aplicaciones web 2.0 como Facebook, Twitter, YouTube y Google. Explica que un SGBD maneja el acceso a la base de datos y sirve de interfaz entre ésta, el usuario y las aplicaciones. Luego resume las principales funciones de un SGBD y los tipos de SGBD según el modelo de datos. Finalmente, detalla que Facebook utiliza RocksDB, Twitter y YouTube usan MySQL y Google también emplea MySQL para gestionar sus grandes vol
El documento habla sobre las transacciones en bases de datos. Explica que una transacción es un conjunto de operaciones que forman una unidad lógica y deben cumplir con las propiedades ACID de atomicidad, consistencia, aislamiento y durabilidad. También describe los estados por los que pasa una transacción, como activa, comprometida o abortada, y las sentencias ROLLBACK y COMMIT para deshacer o confirmar una transacción respectivamente.
Modelo de base de datos orientados a objetosarmin tilano
Este documento presenta una introducción a las bases de datos orientadas a objetos. Explica conceptos básicos como datos, campos, registros y bases de datos. Luego describe las características de un modelo de datos orientado a objetos, incluyendo encapsulamiento, herencia y polimorfismo. Finalmente, resume diferentes modelos de datos como jerárquicos, de red, relacionales y orientados a objetos.
Este documento ofrece una introducción a Git y GitHub. Explica qué es Git, cómo instalarlo, los comandos básicos como iniciar repositorios, añadir archivos, confirmar cambios y crear ramas. También cubre cómo crear una cuenta en GitHub, generar una clave SSH para conectar Git y GitHub, crear repositorios en GitHub y actualizarlos desde la línea de comandos. Incluye enlaces a recursos adicionales para aprender más sobre el control de versiones y estas herramientas.
Un disparador es un objeto de base de datos con nombre que se asocia a una tabla, y se activa cuando ocurre un evento en particular para la tabla. Algunos usos para los disparadores es verificar valores a ser insertados o llevar a cabo cálculos sobre valores involucrados en una actualización.
Aqui les dejo un ejemplo de Trigger, que puede servir de referencia, como elemento Accounting, de seguridad para algunas tablas de sus bases de Datos
This document discusses MongoDB performance tuning. It emphasizes that performance tuning is an obsession that requires planning schema design, statement tuning, and instance tuning in that order. It provides examples of using the MongoDB profiler and explain functions to analyze statements and identify tuning opportunities like non-covered indexes, unnecessary document scans, and low data locality. Instance tuning focuses on optimizing writes through fast update operations and secondary index usage, and optimizing reads by ensuring statements are tuned and data is sharded appropriately. Overall performance depends on properly tuning both reads and writes.
REPORTE INSTALACIÓN Y CONFIGURACIÓN DEL MySQL CLUSTEREduardo Schenker
Este documento describe la configuración de un clúster de bases de datos MySQL. Explica los componentes principales de un clúster MySQL como el administrador, nodos de datos y nodos API. Además, proporciona instrucciones detalladas sobre cómo configurar el administrador, los nodos y realizar pruebas básicas como crear bases de datos y tablas.
El documento describe las bases de datos para dispositivos móviles. Explica que las primeras aplicaciones móviles tenían pequeñas bases de datos o almacenaban datos en archivos de texto. Luego, todos los dispositivos móviles incluyeron una o más bases de datos embebidas para apoyar sus aplicaciones y servicios. Las bases de datos móviles permiten el acceso a datos corporativos de forma remota y portátil, y se comunican bidireccionalmente con el servidor de base de datos corporativo para sincronizar y replicar datos.
El documento describe los sistemas gestores de bases de datos (SGBD) y las tecnologías utilizadas por las principales aplicaciones web 2.0 como Facebook, Twitter, YouTube y Google. Explica que un SGBD maneja el acceso a la base de datos y sirve de interfaz entre ésta, el usuario y las aplicaciones. Luego resume las principales funciones de un SGBD y los tipos de SGBD según el modelo de datos. Finalmente, detalla que Facebook utiliza RocksDB, Twitter y YouTube usan MySQL y Google también emplea MySQL para gestionar sus grandes vol
El documento habla sobre las transacciones en bases de datos. Explica que una transacción es un conjunto de operaciones que forman una unidad lógica y deben cumplir con las propiedades ACID de atomicidad, consistencia, aislamiento y durabilidad. También describe los estados por los que pasa una transacción, como activa, comprometida o abortada, y las sentencias ROLLBACK y COMMIT para deshacer o confirmar una transacción respectivamente.
Modelo de base de datos orientados a objetosarmin tilano
Este documento presenta una introducción a las bases de datos orientadas a objetos. Explica conceptos básicos como datos, campos, registros y bases de datos. Luego describe las características de un modelo de datos orientado a objetos, incluyendo encapsulamiento, herencia y polimorfismo. Finalmente, resume diferentes modelos de datos como jerárquicos, de red, relacionales y orientados a objetos.
Este documento ofrece una introducción a Git y GitHub. Explica qué es Git, cómo instalarlo, los comandos básicos como iniciar repositorios, añadir archivos, confirmar cambios y crear ramas. También cubre cómo crear una cuenta en GitHub, generar una clave SSH para conectar Git y GitHub, crear repositorios en GitHub y actualizarlos desde la línea de comandos. Incluye enlaces a recursos adicionales para aprender más sobre el control de versiones y estas herramientas.
Un disparador es un objeto de base de datos con nombre que se asocia a una tabla, y se activa cuando ocurre un evento en particular para la tabla. Algunos usos para los disparadores es verificar valores a ser insertados o llevar a cabo cálculos sobre valores involucrados en una actualización.
Aqui les dejo un ejemplo de Trigger, que puede servir de referencia, como elemento Accounting, de seguridad para algunas tablas de sus bases de Datos
Este documento describe cómo analizar y diagnosticar la saturación de una base de datos utilizando herramientas como Oracle Enterprise Manager y scripts SQL. Se muestra cómo monitorear el rendimiento, identificar sesiones y consultas con alta actividad que causan bloqueos, y analizar planes de ejecución de consultas para determinar las causas de la saturación. La información recolectada se envía al equipo de desarrollo para optimizar las consultas y mejorar el rendimiento.
Este documento explica el modelo de entidad-relación (ER) para el diseño de bases de datos. El modelo ER representa el mundo real mediante entidades, atributos y relaciones. Las entidades tienen atributos como claves primarias y foráneas. Las relaciones pueden ser de uno a uno, uno a muchos o muchos a muchos. El documento recomienda utilizar diagramas ER extendidos que incluyen entidades fuertes y débiles y atributos en relaciones.
El documento presenta una guía sobre el uso de sentencias SQL para modificar, eliminar e insertar registros en tablas de una base de datos. Explica las sentencias SELECT, INSERT, DELETE, UPDATE y el uso de cláusulas como WHERE, GROUP BY y HAVING. También incluye ejemplos de consultas, funciones de agregado, creación de tablas y manipulación de datos.
Este documento presenta un informe sobre la simulación de una red en Cisco Packet Tracer con servidores WEB y DNS. Describe el procedimiento para configurar ambos servidores y los computadores clientes con direcciones IP estáticas de clase B y C. Explica las funciones de un servidor WEB para almacenar páginas web e intercambiar información a través de HTTP, y de un servidor DNS para realizar resolución de nombres a direcciones IP en una red TCP/IP.
Scrum y RUP son metodologías ágiles, pero difieren en su enfoque de desarrollo de software. Mientras que RUP utiliza un plan formal de proyecto a largo plazo con múltiples iteraciones, Scrum no tiene un plan inicial completo y define el alcance iterativamente. Otras diferencias incluyen que RUP produce más documentación y es adecuado para proyectos a largo plazo, mientras que Scrum se enfoca en software funcional y es mejor para proyectos con requisitos cambiantes.
Este documento describe cómo configurar la fragmentación vertical entre dos bases de datos MySQL en diferentes servidores. Primero, se crea una base de datos y tabla en un servidor remoto y se otorga acceso de usuario. Luego, en el servidor local, se habilita el motor de almacenamiento federado y se crea una base de datos idéntica con una tabla que se conecta a la tabla remota para recuperar datos de forma remota.
Una vista es una consulta almacenada que se presenta como una tabla virtual a partir de una o más tablas reales en una base de datos. Las vistas permiten simplificar y personalizar la percepción de los datos para cada usuario, y también pueden usarse como mecanismo de seguridad. Se pueden crear, modificar y eliminar vistas mediante sentencias SQL como CREATE VIEW, ALTER VIEW y DROP VIEW.
El documento describe los diferentes tipos de usuarios de una base de datos, incluyendo: usuarios finales, desarrolladores de aplicaciones, administradores de base de datos (DBA), usuarios ingenuos, usuarios sofisticados, programadores de aplicaciones, y usuarios especializados. Cada tipo de usuario interactúa con la base de datos de manera diferente y tiene diferentes niveles de acceso y capacidades.
Tecnologico Nacional de Mexico
Ingenieria en Sistemas Computacionales
Programacion de Base de datos
Unidad 1: Conexion a la base de datos con un lenguaje de programacion actualizado
Este documento explica la función de la tabla de enrutamiento de un router. La tabla de enrutamiento almacena información sobre redes remotas y las rutas a seguir para enviar paquetes a esas redes. La tabla se construye mediante rutas estáticas configuradas manualmente o mediante protocolos de enrutamiento dinámicos que comparten información automáticamente. El router usa la tabla de enrutamiento para determinar cómo enviar cada paquete a su destino de manera eficiente.
Esta presentación nos muestra los conceptos Fundamentales para el Diseño y Creación de Base de Datos Relacionales, se Centra en el Modelo de Datos Relacional, ya que es el mas usado a nivel mundial.
El documento describe varios tipos de gestores de bases de datos móviles como DB2 Everyplace de IBM, Adaptive Server Anywhere de Sybase, SQL Server CE de Microsoft y SQLite. Estos gestores permiten a los usuarios acceder y actualizar datos de bases de datos desde dispositivos móviles a través de conexiones inalámbricas.
El documento describe cómo crear tablas y relaciones en MySQL siguiendo una estructura de datos diseñada previamente en Access. Primero se crean las tablas independientes como autores, editoriales y usuarios usando sentencias SQL. Luego se crean las tablas dependientes como libros y préstamos de usuarios, estableciendo llaves foráneas. Finalmente, se verifican y visualizan las tablas y relaciones creadas en el diseñador de consultas SQLyog.
Este documento presenta los resultados de la Iniciativa Mexicana del Team Software Process (TSP) para mejorar la calidad y productividad de la industria de software en México. Se describen casos de éxito del TSP que han reducido defectos, desviaciones de fecha y tiempo de ciclo. La iniciativa ha certificado a 239 personas en el Personal Software Process. Se presentan estudios de casos que muestran mejoras en calidad, rendimiento y control de esfuerzo. Finalmente, se resumen casos específicos de éxito en empresas como Delaware Software y Quarksoft
Cuadro comparativo entre la metodología estructurada y metodología orientada ...MariaCapuzzo
Este documento compara la metodología estructurada y la metodología orientada a objetos para el análisis y diseño de sistemas. La metodología estructurada se enfoca en definir los requisitos del usuario y documentarlos usando herramientas gráficas. Produce un modelo de diseño con elementos de diseño de datos, arquitectónico, de interfaz y procedimental. La metodología orientada a objetos examina los requisitos desde la perspectiva de clases y objetos, modelando el dominio de información, la función
El documento describe cómo instalar y usar Flex en Windows para generar analizadores léxicos. Explica cómo instalar MinGW y Flex, y provee ejemplos simples de analizadores léxicos para reemplazar un nombre de usuario, reconocer números y palabras clave en un archivo de texto, y contar palabras, líneas y caracteres en un archivo.
El documento identifica y analiza los riesgos asociados con un proyecto de ingeniería de software. Explica que la gestión de riesgos implica identificar, estimar y crear un plan para abordar los riesgos. Luego identifica varias categorías de riesgos técnicos, de negocio, de proyecto y más que podrían afectar el proyecto.
Este documento describe cómo configurar una base de datos distribuida en MySQL de forma asíncrona para proporcionar redundancia y balanceo de carga. Explica que un servidor actúa como maestro que replica cambios a un servidor esclavo. Detalla los pasos para configurar los servidores maestro y esclavo, incluyendo la creación de usuarios, exportación e importación de bases de datos y monitoreo de la replicación. También resume las ventajas como disponibilidad y rendimiento, y desventajas como complejidad y probabilidad mayor de errores de
Este documento presenta una introducción a MongoDB. Explica brevemente qué es NOSQL y MongoDB, y proporciona detalles sobre cómo instalar y ejecutar MongoDB, así como sobre los conceptos básicos como colecciones, documentos y consultas. También cubre temas como modelado de datos, índices, agregación y el uso de MongoDB con diferentes lenguajes de programación.
Presentación sobre cómo utilizar MongoDB en Bluemix, ya sea con el servicio de MongoDB o mediante Compose.io
Inicialmente se muestran un poco las capacidades de MongoDB para luego mostrar dos ejemplos montados mediante Python y Flask
Este documento describe cómo analizar y diagnosticar la saturación de una base de datos utilizando herramientas como Oracle Enterprise Manager y scripts SQL. Se muestra cómo monitorear el rendimiento, identificar sesiones y consultas con alta actividad que causan bloqueos, y analizar planes de ejecución de consultas para determinar las causas de la saturación. La información recolectada se envía al equipo de desarrollo para optimizar las consultas y mejorar el rendimiento.
Este documento explica el modelo de entidad-relación (ER) para el diseño de bases de datos. El modelo ER representa el mundo real mediante entidades, atributos y relaciones. Las entidades tienen atributos como claves primarias y foráneas. Las relaciones pueden ser de uno a uno, uno a muchos o muchos a muchos. El documento recomienda utilizar diagramas ER extendidos que incluyen entidades fuertes y débiles y atributos en relaciones.
El documento presenta una guía sobre el uso de sentencias SQL para modificar, eliminar e insertar registros en tablas de una base de datos. Explica las sentencias SELECT, INSERT, DELETE, UPDATE y el uso de cláusulas como WHERE, GROUP BY y HAVING. También incluye ejemplos de consultas, funciones de agregado, creación de tablas y manipulación de datos.
Este documento presenta un informe sobre la simulación de una red en Cisco Packet Tracer con servidores WEB y DNS. Describe el procedimiento para configurar ambos servidores y los computadores clientes con direcciones IP estáticas de clase B y C. Explica las funciones de un servidor WEB para almacenar páginas web e intercambiar información a través de HTTP, y de un servidor DNS para realizar resolución de nombres a direcciones IP en una red TCP/IP.
Scrum y RUP son metodologías ágiles, pero difieren en su enfoque de desarrollo de software. Mientras que RUP utiliza un plan formal de proyecto a largo plazo con múltiples iteraciones, Scrum no tiene un plan inicial completo y define el alcance iterativamente. Otras diferencias incluyen que RUP produce más documentación y es adecuado para proyectos a largo plazo, mientras que Scrum se enfoca en software funcional y es mejor para proyectos con requisitos cambiantes.
Este documento describe cómo configurar la fragmentación vertical entre dos bases de datos MySQL en diferentes servidores. Primero, se crea una base de datos y tabla en un servidor remoto y se otorga acceso de usuario. Luego, en el servidor local, se habilita el motor de almacenamiento federado y se crea una base de datos idéntica con una tabla que se conecta a la tabla remota para recuperar datos de forma remota.
Una vista es una consulta almacenada que se presenta como una tabla virtual a partir de una o más tablas reales en una base de datos. Las vistas permiten simplificar y personalizar la percepción de los datos para cada usuario, y también pueden usarse como mecanismo de seguridad. Se pueden crear, modificar y eliminar vistas mediante sentencias SQL como CREATE VIEW, ALTER VIEW y DROP VIEW.
El documento describe los diferentes tipos de usuarios de una base de datos, incluyendo: usuarios finales, desarrolladores de aplicaciones, administradores de base de datos (DBA), usuarios ingenuos, usuarios sofisticados, programadores de aplicaciones, y usuarios especializados. Cada tipo de usuario interactúa con la base de datos de manera diferente y tiene diferentes niveles de acceso y capacidades.
Tecnologico Nacional de Mexico
Ingenieria en Sistemas Computacionales
Programacion de Base de datos
Unidad 1: Conexion a la base de datos con un lenguaje de programacion actualizado
Este documento explica la función de la tabla de enrutamiento de un router. La tabla de enrutamiento almacena información sobre redes remotas y las rutas a seguir para enviar paquetes a esas redes. La tabla se construye mediante rutas estáticas configuradas manualmente o mediante protocolos de enrutamiento dinámicos que comparten información automáticamente. El router usa la tabla de enrutamiento para determinar cómo enviar cada paquete a su destino de manera eficiente.
Esta presentación nos muestra los conceptos Fundamentales para el Diseño y Creación de Base de Datos Relacionales, se Centra en el Modelo de Datos Relacional, ya que es el mas usado a nivel mundial.
El documento describe varios tipos de gestores de bases de datos móviles como DB2 Everyplace de IBM, Adaptive Server Anywhere de Sybase, SQL Server CE de Microsoft y SQLite. Estos gestores permiten a los usuarios acceder y actualizar datos de bases de datos desde dispositivos móviles a través de conexiones inalámbricas.
El documento describe cómo crear tablas y relaciones en MySQL siguiendo una estructura de datos diseñada previamente en Access. Primero se crean las tablas independientes como autores, editoriales y usuarios usando sentencias SQL. Luego se crean las tablas dependientes como libros y préstamos de usuarios, estableciendo llaves foráneas. Finalmente, se verifican y visualizan las tablas y relaciones creadas en el diseñador de consultas SQLyog.
Este documento presenta los resultados de la Iniciativa Mexicana del Team Software Process (TSP) para mejorar la calidad y productividad de la industria de software en México. Se describen casos de éxito del TSP que han reducido defectos, desviaciones de fecha y tiempo de ciclo. La iniciativa ha certificado a 239 personas en el Personal Software Process. Se presentan estudios de casos que muestran mejoras en calidad, rendimiento y control de esfuerzo. Finalmente, se resumen casos específicos de éxito en empresas como Delaware Software y Quarksoft
Cuadro comparativo entre la metodología estructurada y metodología orientada ...MariaCapuzzo
Este documento compara la metodología estructurada y la metodología orientada a objetos para el análisis y diseño de sistemas. La metodología estructurada se enfoca en definir los requisitos del usuario y documentarlos usando herramientas gráficas. Produce un modelo de diseño con elementos de diseño de datos, arquitectónico, de interfaz y procedimental. La metodología orientada a objetos examina los requisitos desde la perspectiva de clases y objetos, modelando el dominio de información, la función
El documento describe cómo instalar y usar Flex en Windows para generar analizadores léxicos. Explica cómo instalar MinGW y Flex, y provee ejemplos simples de analizadores léxicos para reemplazar un nombre de usuario, reconocer números y palabras clave en un archivo de texto, y contar palabras, líneas y caracteres en un archivo.
El documento identifica y analiza los riesgos asociados con un proyecto de ingeniería de software. Explica que la gestión de riesgos implica identificar, estimar y crear un plan para abordar los riesgos. Luego identifica varias categorías de riesgos técnicos, de negocio, de proyecto y más que podrían afectar el proyecto.
Este documento describe cómo configurar una base de datos distribuida en MySQL de forma asíncrona para proporcionar redundancia y balanceo de carga. Explica que un servidor actúa como maestro que replica cambios a un servidor esclavo. Detalla los pasos para configurar los servidores maestro y esclavo, incluyendo la creación de usuarios, exportación e importación de bases de datos y monitoreo de la replicación. También resume las ventajas como disponibilidad y rendimiento, y desventajas como complejidad y probabilidad mayor de errores de
Este documento presenta una introducción a MongoDB. Explica brevemente qué es NOSQL y MongoDB, y proporciona detalles sobre cómo instalar y ejecutar MongoDB, así como sobre los conceptos básicos como colecciones, documentos y consultas. También cubre temas como modelado de datos, índices, agregación y el uso de MongoDB con diferentes lenguajes de programación.
Presentación sobre cómo utilizar MongoDB en Bluemix, ya sea con el servicio de MongoDB o mediante Compose.io
Inicialmente se muestran un poco las capacidades de MongoDB para luego mostrar dos ejemplos montados mediante Python y Flask
Este documento proporciona una introducción a MongoDB, incluyendo que es una base de datos NoSQL orientada a documentos, que MongoDB Atlas ofrece alojamiento en la nube de clusters de MongoDB de forma automatizada y escalable, y describe conceptos básicos como colecciones, documentos y operaciones CRUD.
Mallorca MUG: MapReduce y Aggregation FrameworkEmilio Torrens
Este documento presenta MapReduce y el Aggregation Framework de MongoDB. Explica cómo funcionan MapReduce y el Aggregation Framework, incluyendo ejemplos de código. También describe cómo se pueden usar MapReduce y el Aggregation Framework para analizar registros web a gran escala, reduciendo los datos cada hora y almacenándolos en colecciones particionadas por mes para consultas posteriores.
El documento describe la introducción a NoSQL y características de MongoDB y CouchDB. También cubre PostgreSQL y extensiones de NoSQL, incluyendo Pgpymongo y Pgpycouch que permiten a PostgreSQL interactuar con bases de datos NoSQL como MongoDB y CouchDB. El documento lista funciones de las extensiones como crear, buscar y insertar documentos en colecciones de una base de datos NoSQL.
Se aprenderá a desarrollar una API siguiendo la metodología MADA que tiene como misión reducir la complejidad a la hora de desarrollar una API y que utiliza RAML como lenguaje de definición de APIs. A patir del RAML, se generará toda la documentación necesaria para exponer a los developers, se podrá construir un fake para probarlo en la consola de pruebas y se generará un esqueleto en node.js. El taller desarrollará un ejemplo utilizando objetos en memoria y otro ejemplo utilizando MongoDB como base de datos.
Este documento describe la instalación y administración de MongoDB. Explica cómo instalar MongoDB en diferentes sistemas operativos como Windows y Linux, los parámetros de configuración, comandos básicos del shell, creación y administración de usuarios, roles y conceptos clave como replica sets y sharding.
Este documento describe el desarrollo de una aplicación web bancaria utilizando PHP y una base de datos PostgreSQL. Se explica cómo crear la base de datos, las tablas, conectar la aplicación a la base de datos y desarrollar las clases y vistas necesarias para gestionar los datos de los clientes y cuentas bancarias.
MongoDB es un sistema de base de datos orientado a documentos de alto rendimiento y esquema flexible. Ofrece ventajas como ser gratuito, multiplataforma, rápido, funcional, escalable y fácil de usar. Se puede instalar fácilmente en varios sistemas operativos y nube. El documento presenta MongoDB y muestra ejemplos de su uso con C# y Python.
Tarde Técnica Abirtone. MongoDB. Un pequeño sorbo.Victor Cuervo
Presentación sobre conceptos básicos de MongoDB. Manejo de Arrays en documentos. Programación MongoDB desde la Shell. Y uso de Python+MongoDB = Pymongo.
Este documento describe MapReduce y MongoDB. MapReduce es un modelo de programación para procesamiento paralelo de grandes conjuntos de datos. Consiste en dos funciones, Map y Reduce. MongoDB es una base de datos NoSQL orientada a documentos que almacena datos en formato BSON de manera similar a JSON. Se utiliza para casos que requieren alta escalabilidad horizontal y almacenamiento de datos semiestructurados. El documento también explica conceptos como shards, réplicas y colecciones en MongoDB.
Este documento presenta una introducción a MongoDB, incluyendo qué es, por qué usarlo, sus ventajas e inconvenientes, cómo empezar a usarlo, y ejemplos básicos de consultas y herramientas como la shell, importación y exportación de datos. También cubre conceptos clave como documentos, colecciones, BSON y JSON.
Uso de CouchDB como base de datos para soluciones que ameriten el manejo de gran cantidad de información a través de aplicaciones Android.
La presentación muestra una pequeña introducción sobre ¿Cómo conectarse y manejar bases de datos CouchDB en Android?
Las diapositivas fueron desarrolladas por mi persona para ExpoTech 2013 (31-01 al 01-02-2013) , en Puerto Ordaz - Venezuela.
Greach 2011 - Engrandeciendo Grails con Mongo DBgreach_es
Este documento presenta una introducción a MongoDB y su integración con Grails a través del plugin MongoDB GORM. La presentación comienza explicando brevemente quién es el autor y por qué está hablando sobre este tema. Luego, introduce conceptos clave sobre NoSQL y MongoDB, incluyendo el diseño de modelos mediante incrustación vs enlaces y el uso de map-reduce. Finalmente, explica las funcionalidades principales del plugin MongoDB GORM como mapeo de clases, consultas y transaccionalidad, e incluye demostraciones de uso.
Catalogo Refrigeracion Miele Distribuidor Oficial Amado Salvador ValenciaAMADO SALVADOR
Descubre el catálogo general de la gama de productos de refrigeración del fabricante de electrodomésticos Miele, presentado por Amado Salvador distribuidor oficial Miele en Valencia. Como distribuidor oficial de electrodomésticos Miele, Amado Salvador ofrece una amplia selección de refrigeradores, congeladores y soluciones de refrigeración de alta calidad, resistencia y diseño superior de esta marca.
La gama de productos de Miele se caracteriza por su innovación tecnológica y eficiencia energética, garantizando que cada electrodoméstico no solo cumpla con las expectativas, sino que las supere. Los refrigeradores Miele están diseñados para ofrecer un rendimiento óptimo y una conservación perfecta de los alimentos, con características avanzadas como la tecnología de enfriamiento Dynamic Cooling, sistemas de almacenamiento flexible y acabados premium.
En este catálogo, encontrarás detalles sobre los distintos modelos de refrigeradores y congeladores Miele, incluyendo sus especificaciones técnicas, características destacadas y beneficios para el usuario. Amado Salvador, como distribuidor oficial de electrodomésticos Miele, garantiza que todos los productos cumplen con los más altos estándares de calidad y durabilidad.
Explora el catálogo completo y encuentra el refrigerador Miele perfecto para tu hogar con Amado Salvador, el distribuidor oficial de electrodomésticos Miele.
HPE presenta una competició destinada a estudiants, que busca fomentar habilitats tecnològiques i promoure la innovació en un entorn STEAM (Ciència, Tecnologia, Enginyeria, Arts i Matemàtiques). A través de diverses fases, els equips han de resoldre reptes mensuals basats en àrees com algorísmica, desenvolupament de programari, infraestructures tecnològiques, intel·ligència artificial i altres tecnologies. Els millors equips tenen l'oportunitat de desenvolupar un projecte més gran en una fase presencial final, on han de crear una solució concreta per a un conflicte real relacionat amb la sostenibilitat. Aquesta competició promou la inclusió, la sostenibilitat i l'accessibilitat tecnològica, alineant-se amb els Objectius de Desenvolupament Sostenible de l'ONU.
Catalogo Buzones BTV Amado Salvador Distribuidor Oficial ValenciaAMADO SALVADOR
Descubra el catálogo completo de buzones BTV, una marca líder en la fabricación de buzones y cajas fuertes para los sectores de ferretería, bricolaje y seguridad. Como distribuidor oficial de BTV, Amado Salvador se enorgullece de presentar esta amplia selección de productos diseñados para satisfacer las necesidades de seguridad y funcionalidad en cualquier entorno.
Descubra una variedad de buzones residenciales, comerciales y corporativos, cada uno construido con los más altos estándares de calidad y durabilidad. Desde modelos clásicos hasta diseños modernos, los buzones BTV ofrecen una combinación perfecta de estilo y resistencia, garantizando la protección de su correspondencia en todo momento.
Amado Salvador, se compromete a ofrecer productos de primera clase respaldados por un servicio excepcional al cliente. Como distribuidor oficial de BTV, entendemos la importancia de la seguridad y la tranquilidad para nuestros clientes. Por eso, trabajamos en colaboración con BTV para brindarle acceso a los mejores productos del mercado.
Explore el catálogo de buzones ahora y encuentre la solución perfecta para sus necesidades de correo y seguridad. Confíe en Amado Salvador y BTV para proporcionarle buzones de calidad excepcional que cumplan y superen sus expectativas.
Catalogo general Ariston Amado Salvador distribuidor oficial ValenciaAMADO SALVADOR
Distribuidor Oficial Ariston en Valencia: Amado Salvador distribuidor autorizado de Ariston, una marca líder en soluciones de calefacción y agua caliente sanitaria. Amado Salvador pone a tu disposición el catálogo completo de Ariston, encontrarás una amplia gama de productos diseñados para satisfacer las necesidades de hogares y empresas.
Calderas de condensación: Ofrecemos calderas de alta eficiencia energética que aprovechan al máximo el calor residual. Estas calderas Ariston son ideales para reducir el consumo de gas y minimizar las emisiones de CO2.
Bombas de calor: Las bombas de calor Ariston son una opción sostenible para la producción de agua caliente. Utilizan energía renovable del aire o el suelo para calentar el agua, lo que las convierte en una alternativa ecológica.
Termos eléctricos: Los termos eléctricos, como el modelo VELIS TECH DRY (sustito de los modelos Duo de Fleck), ofrecen diseño moderno y conectividad WIFI. Son ideales para hogares donde se necesita agua caliente de forma rápida y eficiente.
Aerotermia: Si buscas una solución aún más sostenible, considera la aerotermia. Esta tecnología extrae energía del aire exterior para calentar tu hogar y agua. Además, puede ser elegible para subvenciones locales.
Amado Salvador es el distribuidor oficial de Ariston en Valencia. Explora el catálogo y descubre cómo mejorar la comodidad y la eficiencia en tu hogar o negocio.
1. Análisis de Datos con MongoDB
Alejandro Mancilla
Sr. Solutions Architect, LATAM
alejandro@mongodb.com
@alxmancilla
2. Agenda
● ¿Por qué hacer análisis con MongoDB?
● Crear ambiente de MongoDB
● Ingestión de datos en MongoDB (mongoimport / mongorestore)
● Exploración de datos (MongoDB Compass)
● Análisis de datos con MongoDB (Aggregation Framework)
● Extendiendo análisis con Python (pymongo)
● Integración con herramientas de BI (BI Connector)
● Extendiendo análisis con Apache Spark
Repositorio de GitHub: https://github.com/alxmancilla/DataDayMX
3. 3
Análisis de Datos
como Arte
“Computer Programming as an art”, Turing Award Lecture 1974
La ciencia es conocimiento que
entendemos tan bien que podemos
enseñarlo a una computadora”.
Donald Knuth
11. MongoDB La Base NoSQL Líder
Modelo de Datos
Documental
Open-Source
Empresarial
Alto rendimiento
Escalable
{
nombre: “Juan Perez”,
pfxs: [“Dr.”,”Sr.”],
direccion: “Reforma 321”,
telefono: {
casa: 1234567890,
movil: 5512345689
}
}
12. El Modelo de Datos de Documento
Coincide con los objetos de aplicación
• Facilita el desarrollo
Flexible
• Evoluciona con la aplicación
Alto rendimiento
• Diseñado para el patrón de acceso
{
cliente_id : 12345,
nombre : ‘Juan’,
apellido : ‘Pérez’,
direccion : {
calle : ‘Av. Insurgentes Sur
321’,
colonia : ‘Roma Norte’,
ciudad : ‘Cuauhtémoc’,
estado : ‘CDMX’,
cod_postal : ‘06700’
}
polizas: [ {
num_poliza : 132987,
descripcion : ‘short term’,
deducible : 500
},{
num_poliza : 147001,
descripcion : ‘dental”,
visitas : 7
} ]
}
13. Funcionalidad adicional
MongoDB
Consultas
Expresivas
• Encuentra a alguien con el teléfono # "1-212 ..."
• Compruebe si la persona con el número "555 ..." está en la
lista de "no llamar"
Geo-espacial
• Encuentre la mejor oferta para el cliente en las coordenadas
geográficas de Insurgentes y Reforma
Búsqueda Textual
• Encuentra todos los tweets que mencionan la empresa en los
últimos 2 días
Agregación • Contar y ordenar número de clientes por ciudad
Soporte nativo a
JSON Binario (BSON)
• Agregue un número de teléfono adicional a Mario Robles sin
volver a escribir el documento
• Seleccione sólo el número de teléfono móvil en la lista
• Ordenar por la fecha modificada
{
cliente_id : 1,
nombre : "Mario",
apellido : "Robles",
ciudad : "CDMX",
telefonos: [
{ numero : “1-212-777-1212”,
primario : true,
tipo : “casa” },
{
numero : “1-212-777-
1213”,
tipo : “cell”
}
]
}
Left outer join
($lookup)
• Consulta todas las casas de CDMX, consulta sus
transacciones y suma la cantidad por personar
14. 14
Te permite ubicar los datos donde los necesitas
Localidad
de datos
EscalabilidadDisponibilidad
Aislamiento de
Carga de Trabajo
platforma resiliente con
replicación y failover
Crece horizontalmente
con sharding nativo
cargas operacionales y
analiíticas en el mismo
cluster
Gobierno, calidad de
servicio, minimiza
latencia
15. 15
Corre igual en cualquier lugar (on-premises <-> cloud)
Local
On-premises
Server & Mainframe Nube privada
Servicio en la nube
completamente administrado
Nube híbrida Nube pública
23. # Se pueden cargar archivos .json/.csv y dumps de MongoDB.
$ mongoimport -d test -c restaurants --drop --file primer-dataset.json
$ mongoimport -c books --drop --type csv --headerline --file ./dataset/books.csv
$ mongoimport -c ratings --drop --type csv --headerline --file ./dataset/ratings.csv
$ mongorestore --dir=dump
Cargando datos usando mongoimport / mongorestore
24. # Acceder a localhost en puerto default 27017
$ mongo test
rs_pss:PRIMARY> show dbs
admin 0.000GB
config 0.000GB
local 0.094GB
test 0.220GB
rs_pss:PRIMARY> show collections
books
ratings
restaurants
zips
Conexión al clúster desde el shell en tu laptop
25. > db.books.findOne()
{
"_id" : ObjectId("5aa890aa7fe2b08c22b6b246"),
"book_id" : 2,
"goodreads_book_id" : 3,
"work_id" : 4640799,
"books_count" : 491,
"isbn" : 439554934,
"authors" : "J.K. Rowling, Mary GrandPr̩",
"original_publication_year" : 1997,
"original_title" : "Harry Potter and the
Philosopher's Stone",
"title" : "Harry Potter and the Sorcerer's Stone
(Harry Potter, #1)",
"language_code" : "eng",
"image_url" : "https://images.gr-
assets.com/books/1474154022m/3.jpg",
"small_image_url" : "https://images.gr-
assets.com/books/1474154022s/3.jpg"
}
Consultar datos usando findOne() & count()
> db.ratings.findOne()
{
"_id" :
ObjectId("5aa889807fe2b08c225974e8"),
"user_id" : 2,
"book_id" : 260,
"rating" : 5
}
> db.books.count()
10000
> db.ratings.count()
5976479
39. # Instalar pymongo con pip
$ python -m pip install pymongo
# Verificar instalación de pymongo
$ python -c "import pymongo; print(pymongo.version);"
3.6.1
Instalación de pymongo
40. import pymongo
# Connection to Mongo DB
try:
conn=pymongo.MongoClient("mongodb://localhost:27017")
print "Connected successfully!!!"
collection = conn.DataDayMX.wkshops
# dictionary to be added in the database
record={
"title": "MongoDB and Python",
"description": 'MongoDB is no SQL database',
"tags": ['mongodb', 'database', 'NoSQL'],
"viewers": 104}
Ejemplo en Python - Conexión a MongoDB (1/2)
41. # inserting the data in the database
rec = collection.insert(record)
print "Inserted record successfully!!!"
for i in collection.find({"title": "MongoDB and Python"}):
print(i)
print "Docs returned successfully!!!"
except pymongo.errors.ConnectionFailure, e:
print "Could not connect to MongoDB: %s" % e
conn.close()
Ejemplo en Python - Conexión a MongoDB (2/2)
46. MongoDB Conector para BI
• Crea visualizaciones & analiítica desde herramientas de BI
basadas en SQL
• Muestreo automaático de esquemas
• Elimina necesidad de ETL
• Rendimiento mejorado en la capa de re-escritura de SQL
• Mayor procesamiento realizado en la base de datos
• Instalacioón y autenticación simplificada
52. Data Lake Operacional
MessageQueue
Customer Data
Mgmt
Mobile App IoT App Live Dashboards
Raw Data
Processed
Events
Distributed
Processing
Framework
s
Millisecond latency. Expressive querying & flexible indexing against subsets of
data. Updates-in place. In-database aggregations & transformations
Multi-minute latency with scans across TB/PB of data. No indexes. Data stored
in 128MB blocks. Write-once-read-many & append-only storage model
Sensors
User Data
Clickstreams
Logs
Churn
Analysis
Enriched
Customer
Profiles
Risk
Modeling
Predictive
Analytics
Real-Time Access
Batch Processing, Batch Views