Modelo de programación MapReduce
|
|
- Rafael Peña Montes
- hace 6 años
- Vistas:
Transcripción
1 Sistemas Distribuidos Modelo de programación
2 Tecnologías procesado masivo de datos Modelo de programación Alm. lógico Alm. físico Serv. genéricos Pregel... BigTable GFS Serv. genéricos 2
3 Vamos a contar palabras Entrada: Conjunto de ficheros de texto Cada fichero: colección de registros Cada registro representa un documento: ID_documento y Contenido de documento Salida Secuencia ordenada de parejas: (palabra, nº apariciones) Cómo lo programarías en un entorno distribuido? Maestro-trabajador: Maestro particiona entrada: nº particiones >> nº trabajadores Maestro va asignando particiones a trabajadores Trabajador procesa partición extrayendo cada palabra Cómo se realiza el recuento? Quién lo hace? 3
4 Contando... Fichero1 Fichero2 DocID X Hola Mundo... DocID Y Adiós Mundo Cruel... DocID 1 El País, El Mundo, ABC DocID 2 Hola Y Adiós ABC 1 Adiós 2 Cruel 1 El 2 Hola 2 Mundo 3 País 1 Y 1 4
5 Posible solución 2 tipos de trabajadores (futuros Map y Reduce): Extractor: Obtiene palabras de su partición Acumulador: Recuento de apariciones de un subconjunto de palabras Modo de operación: Maestro despliega extractores y acumuladores Extractor obtiene palabras y las envía a acumulador correspondiente Función hash: palabra nº acumulador Acumulador recibe palabras que le corresponden Las va ordenando Realiza el recuento generando el resultado Optimización: Extractor con acumulación parcial de su partición (futuro Combiner) Envía a acumulador correspondiente parejas: (palabra, cuenta parcial) 5
6 Trabajo sucio Programador tiene que ocuparse de aspectos tales como: Partición de datos de entrada Despliegue de maestro y trabajadores Esquema de asignación de trabajos a trabajadores Comunicación y sincronización entre procesos Tratamiento de caídas de procesos Además, parte de ese trabajo se repite en problemas afines Se podría automatizar ese trabajo dejando que el programador se ocupará sólo de la funcionalidad deseada? Eso pretende el modelo de programación (MR) Otra solución de Google basada en especialización Nuevamente con éxito: numerosos clones de libre distribución 6
7 Modelo de programación Basado en funciones Map y Reduce Map: (k1,v1) list(k2,v2) Reduce: (k2,list(v2)) list(v2) Programador sólo desarrolla funciones Map y Reduce Entorno de ejecución se encarga de todo lo demás Inspirado en ops. map y fold de programación funcional Salida de un MR puede ser entrada de otro MR (pipeline) 2003: MR con 8 etapas para indexación en servicio de búsqueda Programa externo repite operación MR hasta convergencia P.e. en algoritmo PageRank Además de modelo prog., MR se refiere a una implementación MR Google, MR Hadoop,... 7
8 Map y Fold Map/Fold sin efectos laterales Map/Reduce?: a discreción del programador Data-Intensive Text Processing with 8 Jimmy Lin and Chris Dyer. University of Maryland
9 Visión lógica de ejecución de MR Data-Intensive Text Processing with 9 Jimmy Lin and Chris Dyer. University of Maryland
10 Contando palabras con Map: (docid, contenido) list(palabra, 1 ) Reduce: (palabra, list( 1,...)) nº apariciones de palabra : Simplified data processing on large clusters Jeff Dean y Sanjay Ghemawat; OSDI 04 10
11 Contando palabras con MR-Hadoop Data-Intensive Text Processing with 11 Jimmy Lin and Chris Dyer. University of Maryland
12 (Des)ventajas de m. programación MR Ventajas Automatiza aspectos de paralelismo y tolerancia a fallos Permite que programador se ocupe sólo de funcionalidad requerida Factorización de código Mejora biblioteca MR beneficia automáticamente a todas aplicaciones Desventajas Modelo forzado para cierto tipo de aplicaciones que obliga a Crear etapas adicionales MR para ajustar aplicación a modelo Emitir valores intermedios extraños Crear funciones Map y/o Reduce de tipo identidad (sort paralelo) Sólo adecuado para operaciones de tipo batch MR vs. BB.DD. paralelas: MR a major step backwards Réplica de creadores de MR : A flexible Data Processing Tool. J. Dean y S. Ghemawat. CACM, enero
13 Combiners Optimización: agregación local antes de shuffle & sort Operación de agregación debe ser conmutativa y asociativa Combiner Mini-Reducer: Map»»» Combine»»» Reduce Map: (k1,v1) list(k2,v2) Combine:(k2,list(v2)) list(k2,v2) Reduce: (k2,list(v2)) list(v2) class COMBINER method COMBINE(term t; counts [c1; c2; : : :]) sum 0 for all count c counts [c1; c2; : : :] do sum sum + c EMIT(term t, count sum) 13
14 Control de particiones Por defecto reparto de valores intermedios entre reducers: reducer = hash(key2) mod nº total de reducers Programador puede especificar función de partición alternativa Puede usarse para mejorar equilibrado de carga en reducers Cada reducer recibe valores que le corresponden ordenados Programador puede definir orden alternativo P.ej. que tenga en cuenta sólo cierta parte de la clave 14
15 Visión lógica completa de ejecución MR 15 Data-Intensive Text Processing with. Lin & Dyer.
16 Formato y soporte de E/S Programador especifica formato registros entrada y salida En Google MR usa Protocol Buffers Formato binario eficiente Programador puede usar diversos soportes de entrada y salida GFS BigTable Base de datos SQL,... Programador puede desarrollar sus propios Reader y Writer 16
17 Ejemplos adicionales 1. Entrada: (término, número); Calcular media/término 2. Cálculo matriz de aparición conjunta de palabras M M ij : nº veces que palabra i aparece en mismo contexto que palabra j Frase, párrafo, documento o en ventana de K palabras a) Solución basada en pares b) Solución basada en tiras 2 consideraciones sobres estas soluciones: Ambas pueden usar combiners; más efectivos para solución de tiras Potencial problema de escalabilidad en solución de tiras IMPORTANTE: Map/combine/reduce puede guardar datos en memoria antes emitir Mejora eficiencia pero potencial problema de escalabilidad Extraídos de Data-Intensive Text Processing with de Jimmy Lin and Chris Dyer 17
18 Ejemplo 1 18
19 Ejemplo 2a 19
20 Ejemplo 2b 20
21 Más ejemplos (OSDI 04) Recuento de accesos a páginas web Entrada: colección de logs con URLs Obtención de grafo web inverso (qué URLs apuntan a otra) Entrada: páginas web Obtención de vector con recuento de palabras por host Entrada: colección de documentos con URL como ID del documento Salida: (host, vector con frecuencia de cada término) NOTA: De URL se extrae el host Índice invertido de términos Entrada: colección de documentos Salida: en qué documentos aparece cada término 21
22 Un punto débil de MR: Join Hasta ahora un único conjunto de datos de entrada Join implica múltiples conjuntos que hay que cruzar No encaja bien con naturaleza de MR Ejemplo con relación 1-N: Cjto. 1: datos de usuarios UID, edad, profesión, estado civil,... Cjto. 2: datos de compras OPID, ID_usuario, fecha, precio,... Objetivo: Precio medio de compras/profesión Supuesto: Mapper único que puede conocer a qué cjto. sus datos Alternativa: especificar un Mapper para cada tipo de cjto. de entrada Solución basada en 2 etapas MR 2 versiones de la 1ª etapa para analizar problemas de escalabilidad 2ª etapa igual que Ejemplo 1 22
23 1ª versión de 1ª etapa de Join M1 recibe una especie de union (rg. usuario rg. compra) Si entrada rg. usuario Emite(UID, profesión) Si entrada rg. compra Emite(UID, precio) R1 recibe (UID, [profesión precio]) ordenados por UID Debe emitir(profesión, precio) por cada compra Pero no puede hacerlo hasta que llegue profesión Mientras debe guardar compras de ese UID Potencial problema de escalabilidad UID UID UID UID101 enfermero Emite(enfermero, 101), Emite(enfermero, 57), Emite(enfermero, 72) UID Emite(enfermero, 111) UID
24 2ª versión de 1ª etapa de Join M1 recibe (rg. usuario rg. compra) Si entrada rg. usuario Emite([UID, tipo1], profesión) Si entrada rg. compra Emite([UID, tipo2], precio) Partición1: Usar sólo UID de la clave Orden1: Usar UID y tipo Reducer recibirá primero la profesión y luego las compras R1 recibe (UID, [profesión precio]) ordenados por UID y tipo Si tipo1 aux = profesión Si tipo2 Emite(aux, precio) UID101 tipo1 enfermero aux = enfermero UID101 tipo2 101 Emite(aux, 101) UID101 tipo2 57 Emite(aux, 57),... 24
25 Ejecución MR-Google Maestro-trabajador con nº trabajadores T configurable Entrada dividida en M partes: M tareas Map Tamaño de partición TP configurable: típico 64MB (no sorprende...) Resultados Map divididos en R particiones: R tareas Reduce Valor configurable por programa Maestro reparte tareas M y R entre trabajadores (M + R) >> T Ejemplo: TP = 64MB, M = ; R = 5.000, T = Aspecto clave en el rendimiento de MR sobre GFS Tarea M trabajador en nodo que contiene réplica de datos Si no posible, lo más cercano posible 25
26 Visión física de ejecución Google-MR 26
27 Sincronización implícita en MR 27 Extraído presentación Jeff Dean (Google)
28 Tolerancia a fallos en MR-Google Caída de un trabajador Se vuelven a ejecutar en otros nodos las tareas no completadas También las tareas Map completadas por ese trabajador Sus resultados no están accesibles por almacenarse en disco local Caída de maestro Versión original: abortar computación Alternativa: log de ejecución del maestro en GFS Tareas de reserva: ejecución especulativa (NOTA: aspecto relacionado con rendimiento no t. a fallos) Máquina lenta puede arruinar eficiencia de ejecución (straggler) Cuando op. MR cerca de final se activan tareas de reserva Misma tarea ejecutada en otro nodo Se usa resultado de primera que termina 28
29 Percolator Requisitos de Google Caffeine no factibles con Su motor de búsqueda requiere actualización continua de índices Requiere modelo incremental de procesar repositorio de datos Frente a modelo batch de Percolator: Nueva infraestructura de procesamiento masivo GFS + BigTable + Concepto de observador Observador: código ejecutado ante cambios en datos Puede causar una ejecución en cadena de otros observadores Large-scale Incremental Processing Using Distributed Transactions and Notifications. D. Peng, F. Dabek, OSDI 10 29
MapReduce. Modelo de programación MapReduce. MapReduce. Sistemas Distribuidos. Tecnologías procesado masivo de datos. Vamos a contar palabras
Tecnologías procesado masivo de datos Sistemas Distribuidos Modelo de programación Modelo de programación Alm. lógico Alm. físico Serv. genéricos Pregel... BigTable GFS Serv. genéricos 2 Vamos a contar
Más detallesBig Data, MapReduce y. Hadoop. el ecosistema. Bases de Datos No Relacionales Instituto de Computación, FING, UdelaR 2016
Big Data, MapReduce y el ecosistema Hadoop Bases de Datos No Relacionales Instituto de Computación, FING, UdelaR 2016 CC-BY Lorena Etcheverry lorenae@fing.edu.uy Agenda Big Data: algunas definiciones El
Más detallesAndres Felipe Rojas / Nancy Gelvez. UNESCO UNIR ICT & Education Latam Congress 2016
Distributed processing using cosine similarity for mapping Big Data in Hadoop (Procesamiento distribuido usando similitud de coseno para mapear Big Data en Haddop) Andres Felipe Rojas / Nancy Gelvez UNESCO
Más detallesTaller Big Data - Parte 1
Taller Big Data - Parte 1 Carlos Eiras Franco Department of Computer Science University of A Coruña (Spain) Carlos Eiras Franco EVIA - Junio 2016 1/25 Big data y Data Science Data Science es el arte de
Más detallesTema 2 Introducción a la Programación en C.
Tema 2 Introducción a la Programación en C. Contenidos 1. Conceptos Básicos 1.1 Definiciones. 1.2 El Proceso de Desarrollo de Software. 2. Lenguajes de Programación. 2.1 Definición y Tipos de Lenguajes
Más detallesCURSO: APACHE SPARK CAPÍTULO 3: SPARK CONCEPTOS BÁSICOS.
CURSO: APACHE SPARK CAPÍTULO 3: SPARK CONCEPTOS BÁSICOS www.formacionhadoop.com Índice 1 Introducción a Spark 2 3 Spark Shell 2.1 SparkContext Introducción a RDDs (Resilient Distributed Datasets) 3.1 Creación
Más detallesLa importancia de Big Data en finanzas
La importancia de Big Data en finanzas Jornada sobre Tecnologías de la computación en el Sector Financiero Emilio Parrado Hernández (emilio. parrado@bbva.com) Global Strategies and Data Science Outline
Más detallesConcurrencia. Concurrencia
Concurrencia Procesos y hebras Concurrencia Programación concurrente Por qué usar hebras y procesos? Ejecución de procesos Ejecución de hebras Hebras vs. Procesos Creación y ejecución de hebras La prioridad
Más detallesUNIVERSIDAD NACIONAL DE RÍO CUARTO FACULTAD DE CIENCIAS EXACTAS, FÍSICO-QUÍMICAS Y NATURALES DEPARTAMENTO DE COMPUTACIÓN
UNIVERSIDAD NACIONAL DE RÍO CUARTO FACULTAD DE CIENCIAS EXACTAS, FÍSICO-QUÍMICAS Y NATURALES DEPARTAMENTO DE COMPUTACIÓN CARRERA/S: LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN. PLAN DE ESTUDIOS: 1999 ASIGNATURA:
Más detallesPlataformas distribuidas para análisis de grandes grafos. Dr. Cristian Mateos Díaz CONICET / ISISTAN UNICEN
Plataformas distribuidas para análisis de grandes grafos Dr. Cristian Mateos Díaz CONICET / ISISTAN UNICEN http://www.exa.unicen.edu.ar/~cmateos 1 Introducción Big data conduce a grandes volúmenes de datos,
Más detallesComplejidad computacional (Análisis de Algoritmos)
Definición. Complejidad computacional (Análisis de Algoritmos) Es la rama de las ciencias de la computación que estudia, de manera teórica, la optimización de los recursos requeridos durante la ejecución
Más detallesEvolución del software y su situación actual
Evolución del software y su situación actual El software es el conjunto de programas que permite emplear la PC, es decir, es el medio de comunicación con la computadora, el control de sus funciones y su
Más detallesHerramientas para el estudio de prestaciones en clusters de computación científica, aplicación en el Laboratorio de Computación Paralela
Introducción Herramientas Estudio Conclusiones Herramientas para el estudio de prestaciones en clusters de computación científica, aplicación en el Laboratorio de Computación Paralela Ingeniería en Informática
Más detallesBases de datos distribuidas Fernando Berzal, berzal@acm.org
Bases de datos distribuidas Fernando Berzal, berzal@acm.org Acceso a los datos Bases de datos relacionales: SQL O/R Mapping Bases de datos distribuidas Bases de datos NoSQL Bases de datos multidimensionales:
Más detalles6. PROCESADORES SUPERESCALARES Y VLIW
6. PROCESADORES SUPERESCALARES Y VLIW 1 PROCESADORES SUPERESCALARES Y VLIW 1. Introducción 2. El modelo VLIW 3. El cauce superescalar 4. Superescalar con algoritmo de Tomasulo 2 PROCESADORES SUPERESCALARES
Más detallesParte I Generalidades e Historia
Sistemas de Bases de Datos en el GRUPO HERALDO Parte I Generalidades e Historia Ángel Luis Garrido Responsable de Proyectos e I+D 1. EL GRUPO HERALDO 1. El Grupo Heraldo (1) GRUPO HERALDO Tecnología Medios
Más detallesConectores Pentaho Big Data Community VS Enterprise
Conectores Pentaho Big Data Community VS Enterprise Agosto 2014 Stratebi Business Solutions www.stratebi.com info@stratebi.com Índice 1. Resumen... 3 2. Introducción... 4 3. Objetivo... 4 4. Pentaho Community
Más detallesPráctica 3 de Computación Científica I Proyecto: Algoritmo PageRank
Práctica 3 de Computación Científica I Proyecto: Algoritmo PageRank Fecha de distribución: 04-05/11/2010 Fecha de entrega E3: 25-26/11/2010 Fecha de entrega E4: 09-10/12/2010 1. Ejercicios obligatorios
Más detallesES 2 425 447 A2 ESPAÑA 11. Número de publicación: 2 425 447. Número de solicitud: 201230550 G06F 9/00 (2006.01) 12.04.2012
19 OFICINA ESPAÑOLA DE PATENTES Y MARCAS ESPAÑA 11 21 Número de publicación: 2 42 447 Número de solicitud: 2012300 1 Int. CI.: G06F 9/00 (2006.01) 12 SOLICITUD DE PATENTE A2 22 Fecha de presentación: 12.04.2012
Más detallesOracle Database 11g: Taller de Administración II Versión 2 (Español)
Oracle Database 11g: Taller de Administración II Versión 2 (Español) : 5 Este curso lleva al administrador de la base de datos más allá de las tareas básicas tratadas en el primer taller. El estudiante
Más detallesF1131 Fundamentos de sistemas operativos 1/12
PROGRAMA DE ESTUDIO Fundamentos de sistemas operativos Programa Educativo: Licenciado en Informática Administrativa Área de Formación : Sustantiva Profesional Horas teóricas: 3 Horas prácticas: 2 Total
Más detallesOracle Database 12c: Taller de Copia de Seguridad y Recuperación ed 2
Oracle University Contact Us: +34916267792 Oracle Database 12c: Taller de Copia de Seguridad y Recuperación ed 2 Duration: 5 Days What you will learn Con Oracle Database 12c: Taller de Copia de Seguridad
Más detallesBase de Datos Distribuidas
Base de Datos Distribuidas Benjamín Martínez Martínez Benja_min_15@hotmail.com Base de Datos Distribuidas México Db2 Monterrey Microsoft Access Red de comunicaciones Guerrero Chiapas SqlServer Oaxaca MySql
Más detallesUnidad I: Introducción a las estructuras de datos
Unidad I: Introducción a las estructuras de datos 1.1 Tipos de datos abstractos (TDA) Los tipos de datos abstractos (TDA) encapsulan datos y funciones que trabajan con estos datos. Los datos no son visibles
Más detallesINTRODUCCIÓN A APACHE SPARK CON PYTHON
Ls INTRODUCCIÓN A APACHE SPARK CON PYTHON Introducción a Apache Spark Jortilles.com info@jortilles.com Índice de contenido 1.Descripción...3 2.Cual es su ventaja competitiva...3 3.Instalación...3 4.Conceptos
Más detallesMódulo: Modelos de programación para Big Data
Program. paralela/distribuida Módulo: Modelos de programación para Big Data (título original: Entornos de programación paralela basados en modelos/paradigmas) Fernando Pérez Costoya Introducción Big Data
Más detallesProcesando Big Data en Hadoop usando el Repartition Join
Procesando Big Data en Hadoop usando el Repartition Join Nestor Ivan Escalante Fol 1, Alberto Portilla Flores 1,2, Genoveva-Vargas-Solar 2, Carolina Rocío Sánchez Pérez 1 1 Universidad Autónoma de Tlaxcala,
Más detallesModelos de Programación Paralela Prof. Gilberto Díaz
Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas Modelos de Programación Paralela Prof. Gilberto Díaz gilberto@ula.ve Departamento de Computación, Escuela de Sistemas, Facultad de Ingeniería
Más detallesTema V Generación de Código
Tema V Generación de Código Una vez que se ha realizado la partición HW/SW y conocemos las operaciones que se van a implementar por hardware y software, debemos abordar el proceso de estas implementaciones.
Más detallesINDICE Prologo Capitulo 1. Algoritmos y programas Capitulo 2. La resolución de los problemas con computadoras y las herramientas de programación
INDICE Prologo XI Capitulo 1. Algoritmos y programas 1.1. Configuraciones de una computadora 1 1.2. Lenguajes de programación 2 1.3. Resolución de problemas 1.3.1. Fase de resolución del problema 3 1.3.1.1.
Más detallesClase de ruteo. Capa de red. Guido Chari. 19 de Septiembre de DC - FCEyN - UBA
Capa de red DC - FCEyN - UBA 19 de Septiembre de 2012 Menú del día 1 Repaso rápido 2 3 4 Enunciado 5 Cuál es el objetivo? Repaso rápido Encontrar un camino/el mejor camino entre dos nodos. Características
Más detallesBIG DATA. Jorge Mercado. Software Quality Engineer
BIG DATA Jorge Mercado Software Quality Engineer Agenda Big Data - Introducción Big Data - Estructura Big Data - Soluciones Conclusiones Q&A Big Data - Introducción Que es Big Data? Big data es el termino
Más detallesGESTIÓN DE ARCHIVOS. Presentado por: Alba Arosemena Alma Vargas Hospicia Mendoza Roselvira Fernández Ahías Arosemena
GESTIÓN DE ARCHIVOS Presentado por: Alba Arosemena Alma Vargas Hospicia Mendoza Roselvira Fernández Ahías Arosemena INTRODUCCIÓN En la mayoría de las aplicaciones, el archivo es el elemento central. La
Más detallesSistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria
1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo
Más detallesIntegración de Datos y ETL con Oracle Warehouse Builder: Parte 1
Oracle University Contact Us: +34916267792 Integración de Datos y ETL con Oracle Warehouse Builder: Parte 1 Duration: 3 Days What you will learn Los participantes aprenderán a cargar datos mediante la
Más detallesSistemas Distribuidos. Bibliografía: Introducción a los Sistemas de Bases de Datos Date, C.J.
Sistemas Distribuidos Bibliografía: Introducción a los Sistemas de Bases de Datos Date, C.J. Bases de datos distribuidas implica que una sola aplicación deberá ser capaz de trabajar en forma transparente
Más detalleswww.consultec.es Introducción a Big Data
Introducción a Big Data Quiénes somos? Gorka Armen+a Developer garmen+a@consultec.es @joruus Iñaki Elcoro Developer ielcoro@consultec.es @iceoverflow Índice 1. Introducción 2. Qué no es Big Data? 3. Qué
Más detallesAnatomia de Google. Una presentación realizada por Jose Dueñas para la asignatura Estructura de Datos II
Anatomia de Google Basado en el artículo The Anatomy Of A Large Scale Search Engine escrito por los creadores de Google, Sergey Brin y Lawrence Page, y presentado en la WWW7 en 1997, Una presentación realizada
Más detallesTema 2 Conceptos básicos de programación. Fundamentos de Informática
Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis
Más detallesBig Data y Seguridad
Big Data y Seguridad Introducción Análisis de datos y su proceso de madurez Se han analizado datos desde hace mucho tiempo, ahora la calidad y cantidad están aumentando. 2500 petabytes generados por día.
Más detallesPREVIEW BIDOOP 2.0. Big Data Brunch
PREVIEW BIDOOP 2.0 Big Data Brunch 08 de Julio 2014 Quién soy? Trabajando con Hadoop desde 2010 sluangsay@pragsis.com @sourygna CTO de Pragsis Responsable departamento sistemas Preventa Instructor de Hadoop
Más detallesUNIDAD II Metodología de programación paralela. Lic. Jesús Germán Andrés PAUTSCH - FCEQyN - UNaM
UNIDAD II Metodología de programación paralela UNIDAD II: Metodología de programación paralela Metodología de programación paralela Algunos conceptos que nos ayudarán a entender mejor el tema. Modelos
Más detallesIntroducción a la Geometría Computacional. Análisis de Algoritmos
Introducción a la Geometría Computacional Análisis de Algoritmos Geometría Computacional La Geometría Computacional surgió a finales de los 70s del área de diseño y análisis de algoritmos. Estudio sistemático
Más detallesIntel lanza su procesador Caballero Medieval habilitado para Inteligencia Artificial
Intel lanza su procesador Caballero Medieval habilitado para Inteligencia Artificial Intel ha lanzado su procesador Xeon Phi en la Conferencia Internacional de Supercomputación de Alemania. El procesador
Más detallesMétodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo
TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para
Más detallesprotección y replicación remota de datos dib backup Copias de seguridad remotas vía Internet de grandes volúmenes de información
protección y replicación remota de datos dib backup remoto Novedades versión 4.0.5 Febrero 2006 Copias de seguridad remotas vía Internet de grandes volúmenes de información dib backup permite realizar
Más detallesINSTITUCIÓN EDUCATIVA SAN CRISTÓBAL
INSTITUCIÓN EDUCATIVA SAN CRISTÓBAL MEDIA TÉCNICA EN PROGRAMACIÓN DE SOFTWARE TEMA: LOS LENGUAJES DE PROGRAMACIÓN Profesora: Beatriz Elena Herrera Legarda Qué es una computadora? Computadora electrónica
Más detallesFacultad de Ingeniería Industrial y de Sistemas v1.0 MA781U PROCESOS DISTRIBUIDOS
PROCESOS DISTRIBUIDOS Preparado por: Angel Chata Tintaya (angelchata@hotmail.com) Resumen El proceso cliente servidor es la clave para comprender el potencial de los sistemas de información y las redes
Más detallesMáster Universitario en Tecnologías de la Información y las Comunicaciones Universidad de Alcalá Curso Académico 2013/14
Sistemas Distribuidos de Control Máster Universitario en Tecnologías de la Información y las Comunicaciones Universidad de Alcalá Curso Académico 2013/14 GUÍA DOCENTE Nombre de la asignatura: Código: 200593
Más detallesAlgebra Matricial y Teoría de Grafos
Algebra Matricial y Teoría de Grafos Unidad 3: Nociones de teoría de grafos Luis M. Torres Escuela Politécnica del Litoral Quito, Enero 2008 Maestría en Control de Operaciones y Gestión Logística p.1 Contenido
Más detallesÁrboles balanceados (AVL) Tablas de dispersión (Hash) Colas de prioridad (Heap)
Práctico 4 Árboles balanceados (AVL) Tablas de dispersión (Hash) Colas de prioridad (Heap) Clasificación de ejercicios: (I) Imprescindibles (R) Recomendados (C) Complementarios Árboles balanceados (AVL)
Más detallesProyecto Fin de Carrera OpenNebula y Hadoop: Cloud Computing con herramientas Open Source
Proyecto Fin de Carrera OpenNebula y Hadoop: Cloud Computing con herramientas Open Source Francisco Magaz Villaverde Consultor: Víctor Carceler Hontoria Junio 2012 Contenido Introducción Qué es Cloud Compu5ng?
Más detallesTEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O
TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO Definición y objetivos de un S.O Definición y objetivos del sistema operativo Estructura, componentes y servicios de un S.O Llamadas al sistema
Más detallesEl Sistema Gestor de Base de Datos (DBMS)
Pontificia Universidad Javeriana Contenido 1 Introducción 2 Evolución de los SGBD 3 Arquitectura del SGBD 4 Lenguajes de BD 5 Usuarios de la BD Introducción Se espera del SGBD (DBMS) que: 1 Permita a los
Más detallesPA JOSÉ MANUEL BURBANO CARVAJAL
PA121-01 SISTEMA DE GESTIÓN DEL CONOCIMIENTO PARA LA DEFINICIÓN DE ESTRATEGIAS QUE EVITEN LA DESERCIÓN ESCOLAR EN LOS COLEGIOS DE MOCOA PUTUMAYO EN EL NIVEL DE EDUCACIÓN BÁSICA SECUNDARIA JOSÉ MANUEL BURBANO
Más detallesAsumir el control de big data: soluciones de análisis y almacenamiento para obtener información de gran impacto sobre el negocio
Asumir el control de big data: soluciones de análisis y almacenamiento para obtener información de gran impacto sobre el negocio 1 Agenda Big data y NAS de escalamiento horizontal EMC Isilon La promesa
Más detallesEs un software del tipo MAP-REDUCE realizada usando la librería MPI para la
Es un software del tipo MAP-REDUCE realizada usando la librería MPI para la ejecución de programas secuenciales de forma paralela con el requisito de no modificar los programas secuenciales. La idea fundamental
Más detallesDIPLOMADO TEORÍA DE LAS RESTRICCIONES APLICADA A PLANTAS INDUSTRIALES PYMES
DIPLOMADO TEORÍA DE LAS RESTRICCIONES APLICADA A PLANTAS INDUSTRIALES PYMES Antecedentes Se pretende con este Diplomado en teoría de restricciones dar unas herramientas de planeación y control productivo,
Más detallesCURSO: APACHE SPARK CAPÍTULO 2: INTRODUCCIÓN A APACHE SPARK. www.formacionhadoop.com
CURSO: APACHE SPARK CAPÍTULO 2: INTRODUCCIÓN A APACHE SPARK www.formacionhadoop.com Índice 1 Qué es Big Data? 2 Problemas con los sistemas tradicionales 3 Qué es Spark? 3.1 Procesamiento de datos distribuido
Más detallesCocinando con Big Data
Cocinando con Big Data Javier Sánchez BDM Big Data jsanchez@flytech.es 91.300.51.09 21/11/2013 Javier Sánchez 1 Agenda Qué es Big Data? Receta Punto de Partida Para qué Big Data? Conclusiones 21/11/2013
Más detallesAlgoritmos de Ordenamiento
Algoritmos de Ordenamiento mat-151 Alonso Ramírez Manzanares Computación y Algoritmos 12.04 Algoritmos de ordenamiento Entrada: secuencia de números. Salida: permutación
Más detallesSISTEMA PARA GENERAR GRÁFICAS A PARTIR DE LOGS TCPDUMP USANDO HADOOP. Ángel Stalin Cruz Palaquibay Pedro Alfredo Torres Arellano
SISTEMA PARA GENERAR GRÁFICAS A PARTIR DE LOGS TCPDUMP USANDO HADOOP Ángel Stalin Cruz Palaquibay Pedro Alfredo Torres Arellano Descripción general 2 El Problema Motivación Objetivos Metodología del proyecto
Más detallesDiseño de Sistemas Distribuidos: Google
Sistemas Operativos Distribuidos Diseño de Sistemas Distribuidos: Google Alejandro Alonso Dpto. Ing. de Sistemas Telemáticos!1 Tabla de contenidos 1. Introducción al caso de estudio 2. Arquitectura global
Más detallesSistemas operativos. Tema 10: Sistemas de ficheros
Sistemas operativos Tema 10: Sistemas de ficheros Sistemas de ficheros El sistema de ficheros suele ser el aspecto más m visible de un SO para los usuarios. Objetivos: Ofrecer una visión n uniforme del
Más detalles1. Almacenamiento redundante
ALTA DISPONIBILIDAD Los sistemas RAID los hacemos con un conjunto de discos. Por un lado hay RAID que valen para: *VELOCIDAD. Optimizan el rendimiento para conseguir velocidad. *SEGURIDAD. Si falla un
Más detallesNOTACIÓN O GRANDE. El análisis de algoritmos estima el consumo de recursos de un algoritmo.
NOTACIÓN O GRANDE El análisis de algoritmos estima el consumo de recursos de un algoritmo. Esto nos permite comparar los costos relativos de dos o más algoritmos para resolver el mismo problema. El análisis
Más detallesMAPREDUCE EL MODELO DETRÁS DE
EL MODELO DETRÁS DE MAPREDUCE MapReduce es un modelo de programación orientado al procesamiento de grandes volúmenes de datos, desarrollado específicamente para sacar ventaja del poder de procesamiento
Más detallesMonitor de Estadísticas de IDECanarias
Monitor de Estadísticas de IDECanarias Deepak P. Daswani 1, J. J. Rodrigo 1 y J. Rosales 2 1 Depto. de Ingeniería GRAFCAN. Cartográfica de Canarias, S.A C/ Panamá 34, Naves 8 y 9 Santa Cruz de Tenerife
Más detallesNombres y Sistemas de Archivos en Sistemas Distribuidos
Nombres y Sistemas de Archivos en Sistemas Distribuidos Definiciones Nombre: cadena de bits o caracteres que se usan para referirse a una entidad. Entidad: casi cualquier cosa en un sistema distribuido.
Más detallesMitos y Realidades del Big Data -Introducción al Big Data-
Jornada: Mitos y Realidades del Big Data -Introducción al Big Data- Urko Zurutuza Dpto. Electrónica e Informática Mondragon Goi Eskola Politeknikoa JMA Mondragon Unibertsitatea Agenda Introducción al Big
Más detallesAPACHE HADOOP. Daniel Portela Paz Javier Villarreal García Luis Barroso Vázquez Álvaro Guzmán López
APACHE HADOOP Daniel Portela Paz Javier Villarreal García Luis Barroso Vázquez Álvaro Guzmán López Objetivos 1. Qué es Apache Hadoop? 2. Funcionalidad 2.1. Map/Reduce 2.2. HDFS 3. Casos prácticos 4. Hadoop
Más detallesDiseño e Implementación SQL Server
Diseño e Implementación SQL Server Programa de Estudio Diseño e Implementación SQL Server Desarrolla e Implanta importantes Modelos de Bases de Datos basados en casos reales de Empresas. Aprende a diseñar
Más detallesConstrucción de tablas de análisis sintáctico LL(1)
Construcción de tablas de análisis sintáctico LL(1) Universidad de Costa Rica Escuela de Ciencias de la Computación e Informática Diego Centeno Gerardo Cortés Juan Diego Alfaro Resumen. A la medida en
Más detallesíndice MÓDULO 1: Introducción a Visual Basic 6.0 MÓDULO 2: Fundamentos de programación TEMA 1. Introducción a Visual Basic 6.0
MÓDULO 1: Introducción a Visual Basic 6.0 TEMA 1. Introducción a Visual Basic 6.0 1.1 Conceptos de programación...1-1 1.2 Introducción a Visual Basic...1-1 1.3 Iniciar una sesión de Visual Basic 6.0...1-2
Más detallesBases de Datos Distribuidas. Carlos A. Olarte BDII
Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Contenido 1 Introducción 2 Fragmentación de Datos 3 Transparencia de Red 4 Transacciones Distribuidas 5 Control de Concurrencia Introducción Por que distribuir
Más detallesFecha de entrega: Miércoles 4 de Septiembre. Campus: Villahermosa. Carrera : Ingeniería en Sistemas Compuacionales. Nombre del maestro: Carlos Castro
Nombre del estudiante: Giovanna Kristhel Mendoza Castillo Nombre del trabajo: Investigación sobre los Sistemas Operativos distribuidos Fecha de entrega: Miércoles 4 de Septiembre Campus: Villahermosa Carrera
Más detallesOracle Database 12c: Administración de Data Guard
Oracle University Contact Us: +34916267792 Oracle Database 12c: Administración de Data Guard Duration: 4 Days What you will learn En este curso de formación Oracle Database 12c: Administración de Data
Más detallesAplicaciones de Microsoft Dynamics CRM 4.0
8980B Aplicaciones de Microsoft Dynamics CRM 4.0 Fabricante: Microsoft Grupo: Dynamics Subgrupo: Microsoft Dynamics CRM 4.0 Formación: Presencial Horas: 15 Introducción Este curso con instructor de tres
Más detallesJesús Manuel Carrera Velueta José Juan Almeida García Fecha de elaboración: Mayo 6 de 2010 Fecha de última actualización:
PROGRAMA DE ESTUDIO Programa Educativo: Área de Formación : Licenciatura en Ingeniería Ambiental Sustantiva profesional. Programa elaborado por: PROGRAMACIÓN APLICADA Horas teóricas: 1 Horas prácticas:
Más detallesMANUAL DE USUARIO PROCESOS ESPECIALES
PROCESOS ESPECIALES Los procesos especiales de Activos Fijos le permitirán realizar operaciones sobre la información que tiene en el módulo, por eso su importancia ya que cuando se ejecutan le puede ayudar
Más detallesModelos de Datos Gestión y Modelación de Datos. María Constanza Pabón mcpabon@javerianacali.edu.co
Modelos de Datos Gestión y Modelación de Datos María Constanza Pabón mcpabon@javerianacali.edu.co Contenido Qué es un Modelo de Datos? Etapas de diseño de BD Modelo Relacional Modelos Orientados a Objetos
Más detallesSistemas de información Administrativa II
Sistemas de información Administrativa II UNIDAD 1 MSI. José Luis Llamas Cárdenas Ciclo de Vida Proceso de todo sistema de información Sistemas de Información El sistema informativo esta comprendido por
Más detallesTransacción. Introducción a los conceptos del Procesamiento de las Transacciones. Monousuarios vs. Multiusuarios. Pablo Turjanski.
Transacción a los conceptos del Procesamiento de las Transacciones Definición Una transacción es un conjunto de instrucciones que se ejecutan formando una unidad lógica de procesamiento. Una transacción
Más detallesStorm: Procesamiento distribuido de datos.
Pablo Acuña. Except where otherwise noted, this work is licensed under: http://creativecommons.org/licenses/by-nc-sa/3.0/ c_b_n_a Contenidos - Presentación - Qué es Storm? - Arquitectura y componentes
Más detallesProgramación 1. Diseño modular de nuevos tipos de datos en un programa. Diseño modular de un tipo de dato con estructura de conjunto
Programación 1 Diseño modular de nuevos tipos de datos en un programa Diseño modular de un tipo de dato con estructura de conjunto 1 1. Objetivo de la lección Presentar una metodología para el diseño modular
Más detallesAnálisis y Recuperación de Información
Análisis y Recuperación de Información 1 er Cuatrimestre 2016 Página Web http://www.exa.unicen.edu.ar/catedras/ayrdatos/ Prof. Dra. Daniela Godoy ISISTAN Research Institute UNICEN University Tandil, Bs.
Más detallesINTRODUCCIÓN A LA MATEMÁTICA DISCRETA PRÁCTICA 1
INTRODUCCIÓN A LA MATEMÁTICA DISCRETA PRÁCTICA 1 I N T R O D U C C I Ó N A S A G E Q U É E S S A G E? G U Í A D E I N S T A L A C I Ó N C O N C E P T O S B Á S I C O S B I B L I O G R A F Í A Qué es Sage?
Más detallesCapítulo 12: Indexación y asociación
Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación
Más detallesDIPLOMADO EN MICROSOFT SQL SERVER 2008
DIPLOMADO EN MICROSOFT SQL SERVER 2008 El departamento de TI de las empresas se está sometiendo a una transformación integral. Está preparado? Aproveche la mejor oportunidad para capacitarse, ampliar sus
Más detallesProcesamiento y Optimización de Consultas
30/09/2016 s Procesamiento y Optimización de Consultas Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla septiembre 2016 s Objetivos
Más detallesDeep Learning y Big Data
y Eduardo Morales, Enrique Sucar INAOE (INAOE) 1 / 40 Contenido 1 2 (INAOE) 2 / 40 El poder tener una computadora que modele el mundo lo suficientemente bien como para exhibir inteligencia ha sido el foco
Más detallesMercedes Granda Departamento de Electrónica y Computadores. Las propiedades de las redes de Petri nos permiten
22//22 REDES DE PETRI: PROPIEDADES Y MÉTODOS DE ANÁLISIS PROGRAMACIÓN CONCURRENTE MASTER EN COMPUTACIÓN DEPARTAMENTO DE ELECTRÓNICA Y COMPUTADORES UNIVERSIDAD DE CANTABRIA CURSO 22/3 REDES DE PETRI: PROPIEDADES
Más detallesQué es un programa informático?
Qué es un programa informático? Un programa informático es una serie de comandos ejecutados por el equipo. Sin embargo, el equipo sólo es capaz de procesar elementos binarios, es decir, una serie de 0s
Más detallesUNIVERSIDAD DE GUADALAJARA
UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE LOS ALTOS DIVISIÓN DE ESTUDIOS EN FORMACIONES SOCIALES LICENCIATURA: INGENIERÍA EN COMPUTACIÓN UNIDAD DE APRENDIZAJE POR OBJETIVOS ESTRUCTURA DE ARCHIVOS
Más detallesEvaluación de MapReduce, Pig y Hive, sobre la plataforma Hadoop
Informe de materia de graduación Evaluación de MapReduce, Pig y Hive, sobre la plataforma Hadoop Franklin Parrales Bravo Marco Calle Jaramillo Contenido o Herramientas o Motivación o Servicios y herramientas
Más detallesHadoop. Cómo vender un cluster Hadoop?
Hadoop Cómo vender un cluster Hadoop? ÍNDICE Problema Big Data Qué es Hadoop? Descripción HDSF Map Reduce Componentes de Hadoop Hardware Software 3 EL PROBLEMA BIG DATA ANTES Los datos los generaban las
Más detallesFaceFinder MÓDULO DE BÚSQUEDA DE PERSONAS DENTRO DE UNA BASE DE DATOS DE ROSTROS
FaceFinder MÓDULO DE BÚSQUEDA DE PERSONAS DENTRO DE UNA BASE DE DATOS DE ROSTROS Introducción Los algoritmos utilizados para el procesamiento de imágenes son de complejidad computacional alta. Por esto
Más detallesTÉCNICO SUPERIOR UNIVERSITARIO EN MECATRÓNICA ÁREA AUTOMATIZACIÓN EN COMPETENCIAS PROFESIONALES ASIGNATURA DE LENGUAJE DE PROGRAMACIÓN
TÉCNICO SUPERIOR UNIVERSITARIO EN MECATRÓNICA ÁREA AUTOMATIZACIÓN EN COMPETENCIAS PROFESIONALES ASIGNATURA DE LENGUAJE DE PROGRAMACIÓN 1. Competencias Implementar sistemas de medición y control bajo los
Más detallesLos diagramas de clases y de objetos sirven para modelar diversos aspectos estructurales o estáticos de un sistema: Modelado - Vocabulario del Sistema
Modelado Los diagramas de clases y de objetos sirven para modelar diversos aspectos estructurales o estáticos de un sistema: Vocabulario del Sistema Distribución de Responsabilidades Semántica de una Clase
Más detalles