SlideShare ist ein Scribd-Unternehmen logo
1 von 68
Downloaden Sie, um offline zu lesen
Cloud Computing:
                 What it is, DOs and DON'Ts

                                      Svet Ivantchev, eFaber
                                        Fourth Workshop on
                            Advanced Computing Techniques in the Microworld,
                                             April 2011


domingo 1 de mayo de 2011
Our plan for today

                            • What Is Cloud Computing?
                            • Enabling technologies
                            • Public vs Private Clouds
                            • Idea of MapReduce with two examples

domingo 1 de mayo de 2011
Our plan for tomorrow

               •      Create a HPC cluster with:

                     •      184 GB RAM

                     •      13 TB local disk space and 800 GB persistent storage

                     •      64 cores @ 2.9 GHz, Intel Nehalem = 268 ECUs
                            (~268 2007 1.2 GHz Xeons)

                     •      10 GB network connection between them




domingo 1 de mayo de 2011
(Kind of) Evolution

                   • Grid Computing
                   • Utility Computing
                   • Cloud Computing
                   • Software as a Service (SaaS)

domingo 1 de mayo de 2011
Grid Computing
       Grid computing is a term referring to the combination of
       computer resources from multiple administrative domains
        to reach a common goal. The grid can be thought of as a
         distributed system with non-interactive workloads that
                      involve a large number of files.




                                  http://en.wikipedia.org/wiki/Grid_computing

domingo 1 de mayo de 2011
Utility Computing

            Utility Computing is the packaging of computing
       resources, such as computation, storage and services, as a
       metered service similar to a traditional public utility (such
        as electricity, water, natural gas, or telephone network).




                                    http://en.wikipedia.org/wiki/Utility_computing

domingo 1 de mayo de 2011
Cloud Computing




                                      McKinsey & Co. Report
domingo 1 de mayo de 2011
Cloud Computing
        Cloud computing is a model for enabling convenient, on-
        demand network access to a shared pool of configurable
          computing resources (e.g., networks, servers, storage,
        applications, and services) that can be rapidly provisioned
        and released with minimal management effort or service
                           provider interaction.



                                                  NIST

domingo 1 de mayo de 2011
Cloud Computing

                     1. The illusion of infinite computing resources...
                     2. The elimination of an up-front commitment...
                         3. The ability to pay for use ... as needed.




                                                    UC Berkeley RAD Labs

domingo 1 de mayo de 2011
So, what it is?

                   • Pay-per-use
                   • Resources are abstracted (virtualized)
                   • Upscale and downscale on demand
                   • Self service interface (API included)

domingo 1 de mayo de 2011
Enabling technologies

                            • Virtualisation
                            • Virtualised Storage
                            • Web Services


domingo 1 de mayo de 2011
Virtualisation

                            • Xen
                            • KVM
                            • WMware
                            • more...

domingo 1 de mayo de 2011
Abstracted Storage

                            • Distributed File Systems; examples:
                             • Amazon S3
                             • RackSpace’s CloudFiles
                             • HDFS

domingo 1 de mayo de 2011
Stack

                              Software as a Service (SaaS)

                              Platform as a Service (PaaS)

                            Infrastructure as a Service (IaaS)

                                    Cloud Enabler(s)

                                       Hardware


domingo 1 de mayo de 2011
Public Cloud Services

                            • Amazon EC2
                            • RackSpace
                            • 100s more ...


domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
Amazon Web Services (AWS)




domingo 1 de mayo de 2011
AWS EC2 Prices

                   • on demand instances
                   • reserved instances
                   • spot instances


domingo 1 de mayo de 2011
AWS EC2 prices




domingo 1 de mayo de 2011
Spot Instances




domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
Private
                   • Eucalyptus
                   • OpenNebula
                   • Nimbus
                   • OpenStack

                   • Hadoop & friends
domingo 1 de mayo de 2011
Public or private?
                              Better mixed




domingo 1 de mayo de 2011
MapReduce


                   • High level vs low level languages
                   • Example: MPI/PVM vs MapReduce


domingo 1 de mayo de 2011
MRs “Hello world”
                                Unix-style
                     “en un lugar de la Mancha de cuyo nombre no quiero
                     acordarme no ha mucho tiempo que vivía un hidalgo ...”


      $ cat i.txt | tr ' ' 'n' | sort | uniq -c

                                 1 Mancha
                                 1 acordarme
                                 1 cuyo
                                 2 de
                                 ...

domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
Google Books
                • 129 000 000 books are publshed so far
                • 15 000 000 books scanned (1700-2010)
                • 5 000 000 classified and with metadata
                            Science,Vol. 331, no 6014, pp. 176-182 (Jan 14, 2011):




domingo 1 de mayo de 2011
http://ngrams.googlelabs.com/
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
MapReduce

                      map:        (k1, v1) ! list (k2, v2)

               reduce:       (k2, list(v2)) ! list (v2)




domingo 1 de mayo de 2011
MapReduce: Mapper
                            map(String key, String value):
                               // key: document name
                               // value: document contents
                               for each word w in value:
                                     EmitIntermediate(w, 1);



                                                               “en”, 1
                                                               “un”, 1
     “en un lugar de la Mancha de                              “lugar”, 1
     cuyo nombre no quiero acordarme                           “de”, 1
     no ha mucho tiempo que vivía un                           “la”, 1
     hidalgo”                                                  “Mancha”, 1
                                                               “de”, 1
                                                               ...
domingo 1 de mayo de 2011
MapReduce: Reducer
                            reduce(String key, Iterator values):
                               // key: a word
                               // values: a list of counts
                               result = 0;
                               for each v in values:
                                  result += v;
                               Emit(result);


                     “en”, [1]                          “en”, 1
                     “un”, [1,1]                        “un”, 2
                     “lugar”, [1]                       “lugar”, 1
                     “de”, [1]                          “de”, 1
                     ...                                ...

domingo 1 de mayo de 2011
Dean, J and Ghemawat, S, Comm. ACM,Vol 51, pp. 107--113, (2008)
domingo 1 de mayo de 2011
Our input
    $ ls -l donquijote_s?.txt
    -rw-r--r-- 1 svet staff       1037413 23 abr 18:26 donquijote_s1.txt
    -rw-r--r-- 1 svet staff       1099078 23 abr 18:22 donquijote_s2.txt



    $ head -6 donquijote_s1.txt

    El ingenioso hidalgo don Quijote de la Mancha

    TASA

    Yo, Juan Gallo de Andrada, escribano de Camara del Rey
    nuestro senor, de los que residen en su Consejo, certifico
    y doy fe que, habiendo visto por los senores del un libro




domingo 1 de mayo de 2011
Python Mapper
                     #!/usr/bin/python

                     import sys
                     import re

                     def main(argv):
                        line = sys.stdin.readline()
                        pattern = re.compile("[a-zA-Z][a-zA-Z0-9]*")
                        try:
                          while line:
                             for word in pattern.findall(line):
                               print "LongValueSum:" + word.lower() + "t" + "1"
                             line = sys.stdin.readline()
                        except "end of file":
                          return None
                     if __name__ == "__main__":
                        main(sys.argv)


domingo 1 de mayo de 2011
Test the mapper
                            $ cat donquijote_s1.txt | ./wsplit.py

                            LongValueSum:el          1
                            LongValueSum:ingenioso   1
                            LongValueSum:hidalgo     1
                            LongValueSum:don         1
                            LongValueSum:quijote     1
                            LongValueSum:de          1
                            LongValueSum:la          1
                            LongValueSum:mancha      1
                            LongValueSum:tasa        1
                            LongValueSum:yo          1
                            LongValueSum:juan        1
                            LongValueSum:gallo       1
                            LongValueSum:de          1
                            LongValueSum:andrada     1



domingo 1 de mayo de 2011
Preparing the S3




domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
Run




domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
Final result
                            $ awk '{print $2 " " $1}' part-00000 | sort -r -n

                            21477 que
                            18297 de
                            18189 y                  3352   su
                            10363 la                 2647   don
                            9824 a                   2623   del
                            9490 el                  2539   como
                            8243 en                  2345   me
                            6335 no                  2312   si
                            5079 se                  2284   mas
                            4748 los                 2207   mi
                            4202 con                 2175   quijote
                            3940 por                 2148   sancho
                            3468 las                 2142   es
                            3461 lo                  2077   yo
                            3398 le                  1938   un
                                                     1808   dijo
                                                     1740   al
                                                     1463   para
                                                     1400   porque

domingo 1 de mayo de 2011
CL alternative

                        $ elastic-mapreduce --create 
                              --stream 
                              --input s3n://mrbg/input 
                              --mapper s3://mrbg/prog/wsplit.py 
                              --output s3n://mgbr/output/run2



                        $ elastic-mapreduce --create




domingo 1 de mayo de 2011
MapReduce, ex 2




                                Pi = 4*M/N
domingo 1 de mayo de 2011
MapReduce: Mapper
                      #!/usr/bin/ruby

                      ARGF.each do |line|
                        mcsteps = line.strip
                        unless mcsteps.length == 0
                          begin
                            inside = 0
                            mcsteps.to_i.times do
                                x, y = rand, rand
                                inside += 1 if Math.hypot(x,y) < 1.0
                            end
                            puts inside.to_s
                          rescue
                            # couldn't parse mc steps
                          end
                        end
                      end

domingo 1 de mayo de 2011
Pi

                            $ cat mcs.txt
                            1000

                            $ cat mcs.txt | ./mc-pi-mr.rb
                            776


               ... create more mcs.txts:
                            200_000_000
                            200_000_000
domingo 1 de mayo de 2011
MapReduce: Reducer


                            #!/usr/bin/ruby

                            count = 0
                            ARGF.each do |line|
                              count += line.to_i
                            end

                            puts "#{count} points inside"




domingo 1 de mayo de 2011
Prepare the EMR

                   • upload mcsnn.txt to mrbg/mcinput/
                   • upload mc-mapper.rb to mrbg/prog/
                   • upload mc-reducer.rb to mrbg/prog/


domingo 1 de mayo de 2011
domingo 1 de mayo de 2011
est: 109955955/140000000*4=3.14159871
domingo 1 de mayo de 2011
• Hadoop Common
        • HDFS
        • MapReduce

domingo 1 de mayo de 2011
Thank you



                            Q &A

domingo 1 de mayo de 2011

Weitere ähnliche Inhalte

Ähnlich wie Cloud Computing: What it is, DOs and DON'Ts

1-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características ...
1-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características ...1-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características ...
1-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características ...Luis Fernando Aguas Bucheli
 
Creating Productive Workshops in Scary Situations
Creating Productive Workshops in Scary SituationsCreating Productive Workshops in Scary Situations
Creating Productive Workshops in Scary SituationsEffective
 
Cloud Computing: Just Do It
Cloud Computing: Just Do ItCloud Computing: Just Do It
Cloud Computing: Just Do ItSvet Ivantchev
 
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.pptCOMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.pptJUANPABLOCHVEZNAVA
 
Computacion en la nube
Computacion en la nubeComputacion en la nube
Computacion en la nubecarolinadlr
 
Planificando la actividad de contribución a comunidades de software libre des...
Planificando la actividad de contribución a comunidades de software libre des...Planificando la actividad de contribución a comunidades de software libre des...
Planificando la actividad de contribución a comunidades de software libre des...betabeers
 
Modernizando el rol de un Data Lake en una arquitectura Data Fabric
Modernizando el rol de un Data Lake en una arquitectura Data FabricModernizando el rol de un Data Lake en una arquitectura Data Fabric
Modernizando el rol de un Data Lake en una arquitectura Data FabricDenodo
 
PaaS: Beanstalk - CloudHispano
PaaS: Beanstalk - CloudHispanoPaaS: Beanstalk - CloudHispano
PaaS: Beanstalk - CloudHispanoLuis Roldán
 
Primer ensayo deyanira
Primer ensayo deyaniraPrimer ensayo deyanira
Primer ensayo deyaniraJose Garcia
 

Ähnlich wie Cloud Computing: What it is, DOs and DON'Ts (20)

1-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características ...
1-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características ...1-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características ...
1-Unidad 1: Introducción a la Plataforma .NET-1.1 Conceptos, características ...
 
Creating Productive Workshops in Scary Situations
Creating Productive Workshops in Scary SituationsCreating Productive Workshops in Scary Situations
Creating Productive Workshops in Scary Situations
 
Oracle
Oracle Oracle
Oracle
 
1-Unidad 1. Introducción a la Plataforma .NET
1-Unidad 1. Introducción a la Plataforma .NET1-Unidad 1. Introducción a la Plataforma .NET
1-Unidad 1. Introducción a la Plataforma .NET
 
Slides upf2011 sesión #4
Slides upf2011 sesión #4Slides upf2011 sesión #4
Slides upf2011 sesión #4
 
Unidad_1.pptx
Unidad_1.pptxUnidad_1.pptx
Unidad_1.pptx
 
7984
7984 7984
7984
 
Cloud Computing: Just Do It
Cloud Computing: Just Do ItCloud Computing: Just Do It
Cloud Computing: Just Do It
 
Evolucion dela web
Evolucion dela webEvolucion dela web
Evolucion dela web
 
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.pptCOMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
COMPUTACIÓN DISTRIBUIDA Y SU APLICACIÓN TECNOLÓGICA.ppt
 
Computacion en la nube
Computacion en la nubeComputacion en la nube
Computacion en la nube
 
Devops episodio 1. devOpsTnf
Devops episodio 1. devOpsTnf Devops episodio 1. devOpsTnf
Devops episodio 1. devOpsTnf
 
Red de redes
Red de redes Red de redes
Red de redes
 
Planificando la actividad de contribución a comunidades de software libre des...
Planificando la actividad de contribución a comunidades de software libre des...Planificando la actividad de contribución a comunidades de software libre des...
Planificando la actividad de contribución a comunidades de software libre des...
 
Ember.js
Ember.jsEmber.js
Ember.js
 
Web 2 - 4 - Metaweb
Web 2 - 4 - MetawebWeb 2 - 4 - Metaweb
Web 2 - 4 - Metaweb
 
Modernizando el rol de un Data Lake en una arquitectura Data Fabric
Modernizando el rol de un Data Lake en una arquitectura Data FabricModernizando el rol de un Data Lake en una arquitectura Data Fabric
Modernizando el rol de un Data Lake en una arquitectura Data Fabric
 
PaaS: Beanstalk - CloudHispano
PaaS: Beanstalk - CloudHispanoPaaS: Beanstalk - CloudHispano
PaaS: Beanstalk - CloudHispano
 
Creando un único punto de acceso de úsqueda en una Biblioteca Virtual. La exp...
Creando un único punto de acceso de úsqueda en una Biblioteca Virtual. La exp...Creando un único punto de acceso de úsqueda en una Biblioteca Virtual. La exp...
Creando un único punto de acceso de úsqueda en una Biblioteca Virtual. La exp...
 
Primer ensayo deyanira
Primer ensayo deyaniraPrimer ensayo deyanira
Primer ensayo deyanira
 

Mehr von Svet Ivantchev

Machne Learning and Human Learning (2013).
Machne Learning and Human Learning (2013).Machne Learning and Human Learning (2013).
Machne Learning and Human Learning (2013).Svet Ivantchev
 
Big Data: 
Some Questions in its Use in Applied Economics (2017)
Big Data: 
Some Questions in its Use in Applied Economics (2017)Big Data: 
Some Questions in its Use in Applied Economics (2017)
Big Data: 
Some Questions in its Use in Applied Economics (2017)Svet Ivantchev
 
Introducción a Elixir
Introducción a ElixirIntroducción a Elixir
Introducción a ElixirSvet Ivantchev
 
Gaztea Tech Robotica 2016
Gaztea Tech Robotica 2016Gaztea Tech Robotica 2016
Gaztea Tech Robotica 2016Svet Ivantchev
 
Gaztea Tech 2015: 4. GT Drawbot Control
Gaztea Tech 2015: 4. GT Drawbot ControlGaztea Tech 2015: 4. GT Drawbot Control
Gaztea Tech 2015: 4. GT Drawbot ControlSvet Ivantchev
 
Gaztea Tech 2015: 3. Processing y Firmata
Gaztea Tech 2015: 3. Processing y FirmataGaztea Tech 2015: 3. Processing y Firmata
Gaztea Tech 2015: 3. Processing y FirmataSvet Ivantchev
 
Gaztea Tech 2015: 2. El GT DrawBot
Gaztea Tech 2015: 2. El GT DrawBotGaztea Tech 2015: 2. El GT DrawBot
Gaztea Tech 2015: 2. El GT DrawBotSvet Ivantchev
 
Gaztea Tech 2015: 1. Introducción al Arduino
Gaztea Tech 2015: 1. Introducción al ArduinoGaztea Tech 2015: 1. Introducción al Arduino
Gaztea Tech 2015: 1. Introducción al ArduinoSvet Ivantchev
 
Learning Analytics and Online Learning: New Oportunities?
Learning Analytics and Online Learning: New Oportunities?Learning Analytics and Online Learning: New Oportunities?
Learning Analytics and Online Learning: New Oportunities?Svet Ivantchev
 
How Machine Learning and Big Data can Help Us with the Human Learning
How Machine Learning and Big Data can Help Us with the Human LearningHow Machine Learning and Big Data can Help Us with the Human Learning
How Machine Learning and Big Data can Help Us with the Human LearningSvet Ivantchev
 
Libros electrónicos IV: ePub 2
Libros electrónicos IV: ePub 2Libros electrónicos IV: ePub 2
Libros electrónicos IV: ePub 2Svet Ivantchev
 
Libros electrónicos III
Libros electrónicos IIILibros electrónicos III
Libros electrónicos IIISvet Ivantchev
 
Libros electrónicos II - ePub
Libros electrónicos II - ePubLibros electrónicos II - ePub
Libros electrónicos II - ePubSvet Ivantchev
 
Libros electrónicos I
Libros electrónicos ILibros electrónicos I
Libros electrónicos ISvet Ivantchev
 
Los mitos de la innovación
Los mitos de la innovaciónLos mitos de la innovación
Los mitos de la innovaciónSvet Ivantchev
 

Mehr von Svet Ivantchev (20)

Machne Learning and Human Learning (2013).
Machne Learning and Human Learning (2013).Machne Learning and Human Learning (2013).
Machne Learning and Human Learning (2013).
 
Big Data: 
Some Questions in its Use in Applied Economics (2017)
Big Data: 
Some Questions in its Use in Applied Economics (2017)Big Data: 
Some Questions in its Use in Applied Economics (2017)
Big Data: 
Some Questions in its Use in Applied Economics (2017)
 
Introducción a Elixir
Introducción a ElixirIntroducción a Elixir
Introducción a Elixir
 
Gaztea Tech Robotica 2016
Gaztea Tech Robotica 2016Gaztea Tech Robotica 2016
Gaztea Tech Robotica 2016
 
Gaztea Tech 2015: 4. GT Drawbot Control
Gaztea Tech 2015: 4. GT Drawbot ControlGaztea Tech 2015: 4. GT Drawbot Control
Gaztea Tech 2015: 4. GT Drawbot Control
 
Gaztea Tech 2015: 3. Processing y Firmata
Gaztea Tech 2015: 3. Processing y FirmataGaztea Tech 2015: 3. Processing y Firmata
Gaztea Tech 2015: 3. Processing y Firmata
 
Gaztea Tech 2015: 2. El GT DrawBot
Gaztea Tech 2015: 2. El GT DrawBotGaztea Tech 2015: 2. El GT DrawBot
Gaztea Tech 2015: 2. El GT DrawBot
 
Gaztea Tech 2015: 1. Introducción al Arduino
Gaztea Tech 2015: 1. Introducción al ArduinoGaztea Tech 2015: 1. Introducción al Arduino
Gaztea Tech 2015: 1. Introducción al Arduino
 
Learning Analytics and Online Learning: New Oportunities?
Learning Analytics and Online Learning: New Oportunities?Learning Analytics and Online Learning: New Oportunities?
Learning Analytics and Online Learning: New Oportunities?
 
How Machine Learning and Big Data can Help Us with the Human Learning
How Machine Learning and Big Data can Help Us with the Human LearningHow Machine Learning and Big Data can Help Us with the Human Learning
How Machine Learning and Big Data can Help Us with the Human Learning
 
Vienen los Drones!
Vienen los Drones!Vienen los Drones!
Vienen los Drones!
 
Data Science
Data ScienceData Science
Data Science
 
Libros electrónicos IV: ePub 2
Libros electrónicos IV: ePub 2Libros electrónicos IV: ePub 2
Libros electrónicos IV: ePub 2
 
Libros electrónicos III
Libros electrónicos IIILibros electrónicos III
Libros electrónicos III
 
Libros electrónicos II - ePub
Libros electrónicos II - ePubLibros electrónicos II - ePub
Libros electrónicos II - ePub
 
Libros electrónicos I
Libros electrónicos ILibros electrónicos I
Libros electrónicos I
 
BigData
BigDataBigData
BigData
 
Los mitos de la innovación
Los mitos de la innovaciónLos mitos de la innovación
Los mitos de la innovación
 
eFaber en 5 minutos
eFaber en 5 minutoseFaber en 5 minutos
eFaber en 5 minutos
 
RoR y eLearning 2.0
RoR y eLearning 2.0RoR y eLearning 2.0
RoR y eLearning 2.0
 

Kürzlich hochgeladen

VelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiC
VelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiCVelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiC
VelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiC6dwwcgtpfx
 
innovacion banking & warehouse 2024 blog
innovacion banking & warehouse 2024 bloginnovacion banking & warehouse 2024 blog
innovacion banking & warehouse 2024 blogManuel Diaz
 
Uso de las TIC en la vida cotidiana .
Uso de las TIC en la vida cotidiana       .Uso de las TIC en la vida cotidiana       .
Uso de las TIC en la vida cotidiana .itzyrivera61103
 
BUSCADORES DE INTERNET (Universidad de Sonora).
BUSCADORES DE INTERNET (Universidad de Sonora).BUSCADORES DE INTERNET (Universidad de Sonora).
BUSCADORES DE INTERNET (Universidad de Sonora).jcaballerosamayoa
 
Desarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - EstradaDesarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - EstradaRicardoEstrada90
 
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdfRedes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdfJosAndrRosarioVzquez
 
editorial de informática de los sueños.docx
editorial de informática de los sueños.docxeditorial de informática de los sueños.docx
editorial de informática de los sueños.docxssusere34b451
 
Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024NicolleAndrade7
 
avancestecnologicossigloveintiunoprofetengohambreayuda
avancestecnologicossigloveintiunoprofetengohambreayudaavancestecnologicossigloveintiunoprofetengohambreayuda
avancestecnologicossigloveintiunoprofetengohambreayudadocente
 
Tipos de datos en Microsoft Access de Base de Datos
Tipos de datos en Microsoft Access de Base de DatosTipos de datos en Microsoft Access de Base de Datos
Tipos de datos en Microsoft Access de Base de DatosYOMIRAVILLARREAL1
 
De Olmos Santiago_Dolores _ M1S3AI6.pptx
De Olmos Santiago_Dolores _ M1S3AI6.pptxDe Olmos Santiago_Dolores _ M1S3AI6.pptx
De Olmos Santiago_Dolores _ M1S3AI6.pptxdoloresolmosantiago
 
Chat GPT para la educación Latinoamerica
Chat GPT para la educación LatinoamericaChat GPT para la educación Latinoamerica
Chat GPT para la educación LatinoamericaEdwinGarca59
 
PRÁCTICA Nº 4: “Análisis de secuencias del ADN con el software BioEdit y uso ...
PRÁCTICA Nº 4: “Análisis de secuencias del ADN con el software BioEdit y uso ...PRÁCTICA Nº 4: “Análisis de secuencias del ADN con el software BioEdit y uso ...
PRÁCTICA Nº 4: “Análisis de secuencias del ADN con el software BioEdit y uso ...dramosbrise1403
 
Navegadores de internet - Nuevas Tecnologías de la Información y la Comunicación
Navegadores de internet - Nuevas Tecnologías de la Información y la ComunicaciónNavegadores de internet - Nuevas Tecnologías de la Información y la Comunicación
Navegadores de internet - Nuevas Tecnologías de la Información y la ComunicaciónAntonia Yamilet Perez Palomares
 
herramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaherramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaJadeVilcscordova
 
Actividad 6/Las TIC en la Vida Cotidiana.
Actividad 6/Las TIC en la Vida Cotidiana.Actividad 6/Las TIC en la Vida Cotidiana.
Actividad 6/Las TIC en la Vida Cotidiana.241534381
 
Introduccion-a-la-electronica-industrial.pptx
Introduccion-a-la-electronica-industrial.pptxIntroduccion-a-la-electronica-industrial.pptx
Introduccion-a-la-electronica-industrial.pptxcj12paz
 
Electricidad Libro compendio de temas estudiados.docx
Electricidad Libro compendio de temas estudiados.docxElectricidad Libro compendio de temas estudiados.docx
Electricidad Libro compendio de temas estudiados.docxCsarNlsonMrquezContr
 
Imágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la informaciónImágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la informaciónUniversidad de Sonora
 
el uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptxel uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptx221112876
 

Kürzlich hochgeladen (20)

VelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiC
VelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiCVelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiC
VelderrainPerez_Paola_M1C1G63-097.pptx. LAS TiC
 
innovacion banking & warehouse 2024 blog
innovacion banking & warehouse 2024 bloginnovacion banking & warehouse 2024 blog
innovacion banking & warehouse 2024 blog
 
Uso de las TIC en la vida cotidiana .
Uso de las TIC en la vida cotidiana       .Uso de las TIC en la vida cotidiana       .
Uso de las TIC en la vida cotidiana .
 
BUSCADORES DE INTERNET (Universidad de Sonora).
BUSCADORES DE INTERNET (Universidad de Sonora).BUSCADORES DE INTERNET (Universidad de Sonora).
BUSCADORES DE INTERNET (Universidad de Sonora).
 
Desarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - EstradaDesarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - Estrada
 
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdfRedes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
 
editorial de informática de los sueños.docx
editorial de informática de los sueños.docxeditorial de informática de los sueños.docx
editorial de informática de los sueños.docx
 
Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024
 
avancestecnologicossigloveintiunoprofetengohambreayuda
avancestecnologicossigloveintiunoprofetengohambreayudaavancestecnologicossigloveintiunoprofetengohambreayuda
avancestecnologicossigloveintiunoprofetengohambreayuda
 
Tipos de datos en Microsoft Access de Base de Datos
Tipos de datos en Microsoft Access de Base de DatosTipos de datos en Microsoft Access de Base de Datos
Tipos de datos en Microsoft Access de Base de Datos
 
De Olmos Santiago_Dolores _ M1S3AI6.pptx
De Olmos Santiago_Dolores _ M1S3AI6.pptxDe Olmos Santiago_Dolores _ M1S3AI6.pptx
De Olmos Santiago_Dolores _ M1S3AI6.pptx
 
Chat GPT para la educación Latinoamerica
Chat GPT para la educación LatinoamericaChat GPT para la educación Latinoamerica
Chat GPT para la educación Latinoamerica
 
PRÁCTICA Nº 4: “Análisis de secuencias del ADN con el software BioEdit y uso ...
PRÁCTICA Nº 4: “Análisis de secuencias del ADN con el software BioEdit y uso ...PRÁCTICA Nº 4: “Análisis de secuencias del ADN con el software BioEdit y uso ...
PRÁCTICA Nº 4: “Análisis de secuencias del ADN con el software BioEdit y uso ...
 
Navegadores de internet - Nuevas Tecnologías de la Información y la Comunicación
Navegadores de internet - Nuevas Tecnologías de la Información y la ComunicaciónNavegadores de internet - Nuevas Tecnologías de la Información y la Comunicación
Navegadores de internet - Nuevas Tecnologías de la Información y la Comunicación
 
herramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaherramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el tema
 
Actividad 6/Las TIC en la Vida Cotidiana.
Actividad 6/Las TIC en la Vida Cotidiana.Actividad 6/Las TIC en la Vida Cotidiana.
Actividad 6/Las TIC en la Vida Cotidiana.
 
Introduccion-a-la-electronica-industrial.pptx
Introduccion-a-la-electronica-industrial.pptxIntroduccion-a-la-electronica-industrial.pptx
Introduccion-a-la-electronica-industrial.pptx
 
Electricidad Libro compendio de temas estudiados.docx
Electricidad Libro compendio de temas estudiados.docxElectricidad Libro compendio de temas estudiados.docx
Electricidad Libro compendio de temas estudiados.docx
 
Imágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la informaciónImágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la información
 
el uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptxel uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptx
 

Cloud Computing: What it is, DOs and DON'Ts

  • 1. Cloud Computing: What it is, DOs and DON'Ts Svet Ivantchev, eFaber Fourth Workshop on Advanced Computing Techniques in the Microworld, April 2011 domingo 1 de mayo de 2011
  • 2. Our plan for today • What Is Cloud Computing? • Enabling technologies • Public vs Private Clouds • Idea of MapReduce with two examples domingo 1 de mayo de 2011
  • 3. Our plan for tomorrow • Create a HPC cluster with: • 184 GB RAM • 13 TB local disk space and 800 GB persistent storage • 64 cores @ 2.9 GHz, Intel Nehalem = 268 ECUs (~268 2007 1.2 GHz Xeons) • 10 GB network connection between them domingo 1 de mayo de 2011
  • 4. (Kind of) Evolution • Grid Computing • Utility Computing • Cloud Computing • Software as a Service (SaaS) domingo 1 de mayo de 2011
  • 5. Grid Computing Grid computing is a term referring to the combination of computer resources from multiple administrative domains to reach a common goal. The grid can be thought of as a distributed system with non-interactive workloads that involve a large number of files. http://en.wikipedia.org/wiki/Grid_computing domingo 1 de mayo de 2011
  • 6. Utility Computing Utility Computing is the packaging of computing resources, such as computation, storage and services, as a metered service similar to a traditional public utility (such as electricity, water, natural gas, or telephone network). http://en.wikipedia.org/wiki/Utility_computing domingo 1 de mayo de 2011
  • 7. Cloud Computing McKinsey & Co. Report domingo 1 de mayo de 2011
  • 8. Cloud Computing Cloud computing is a model for enabling convenient, on- demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. NIST domingo 1 de mayo de 2011
  • 9. Cloud Computing 1. The illusion of infinite computing resources... 2. The elimination of an up-front commitment... 3. The ability to pay for use ... as needed. UC Berkeley RAD Labs domingo 1 de mayo de 2011
  • 10. So, what it is? • Pay-per-use • Resources are abstracted (virtualized) • Upscale and downscale on demand • Self service interface (API included) domingo 1 de mayo de 2011
  • 11. Enabling technologies • Virtualisation • Virtualised Storage • Web Services domingo 1 de mayo de 2011
  • 12. Virtualisation • Xen • KVM • WMware • more... domingo 1 de mayo de 2011
  • 13. Abstracted Storage • Distributed File Systems; examples: • Amazon S3 • RackSpace’s CloudFiles • HDFS domingo 1 de mayo de 2011
  • 14. Stack Software as a Service (SaaS) Platform as a Service (PaaS) Infrastructure as a Service (IaaS) Cloud Enabler(s) Hardware domingo 1 de mayo de 2011
  • 15. Public Cloud Services • Amazon EC2 • RackSpace • 100s more ... domingo 1 de mayo de 2011
  • 16. domingo 1 de mayo de 2011
  • 17. Amazon Web Services (AWS) domingo 1 de mayo de 2011
  • 18. AWS EC2 Prices • on demand instances • reserved instances • spot instances domingo 1 de mayo de 2011
  • 19. AWS EC2 prices domingo 1 de mayo de 2011
  • 20. Spot Instances domingo 1 de mayo de 2011
  • 21. domingo 1 de mayo de 2011
  • 22. domingo 1 de mayo de 2011
  • 23. domingo 1 de mayo de 2011
  • 24. domingo 1 de mayo de 2011
  • 25. Private • Eucalyptus • OpenNebula • Nimbus • OpenStack • Hadoop & friends domingo 1 de mayo de 2011
  • 26. Public or private? Better mixed domingo 1 de mayo de 2011
  • 27. MapReduce • High level vs low level languages • Example: MPI/PVM vs MapReduce domingo 1 de mayo de 2011
  • 28. MRs “Hello world” Unix-style “en un lugar de la Mancha de cuyo nombre no quiero acordarme no ha mucho tiempo que vivía un hidalgo ...” $ cat i.txt | tr ' ' 'n' | sort | uniq -c 1 Mancha 1 acordarme 1 cuyo 2 de ... domingo 1 de mayo de 2011
  • 29. domingo 1 de mayo de 2011
  • 30. Google Books • 129 000 000 books are publshed so far • 15 000 000 books scanned (1700-2010) • 5 000 000 classified and with metadata Science,Vol. 331, no 6014, pp. 176-182 (Jan 14, 2011): domingo 1 de mayo de 2011
  • 32. domingo 1 de mayo de 2011
  • 33. MapReduce map: (k1, v1) ! list (k2, v2) reduce: (k2, list(v2)) ! list (v2) domingo 1 de mayo de 2011
  • 34. MapReduce: Mapper map(String key, String value): // key: document name // value: document contents for each word w in value: EmitIntermediate(w, 1); “en”, 1 “un”, 1 “en un lugar de la Mancha de “lugar”, 1 cuyo nombre no quiero acordarme “de”, 1 no ha mucho tiempo que vivía un “la”, 1 hidalgo” “Mancha”, 1 “de”, 1 ... domingo 1 de mayo de 2011
  • 35. MapReduce: Reducer reduce(String key, Iterator values): // key: a word // values: a list of counts result = 0; for each v in values: result += v; Emit(result); “en”, [1] “en”, 1 “un”, [1,1] “un”, 2 “lugar”, [1] “lugar”, 1 “de”, [1] “de”, 1 ... ... domingo 1 de mayo de 2011
  • 36. Dean, J and Ghemawat, S, Comm. ACM,Vol 51, pp. 107--113, (2008) domingo 1 de mayo de 2011
  • 37. Our input $ ls -l donquijote_s?.txt -rw-r--r-- 1 svet staff 1037413 23 abr 18:26 donquijote_s1.txt -rw-r--r-- 1 svet staff 1099078 23 abr 18:22 donquijote_s2.txt $ head -6 donquijote_s1.txt El ingenioso hidalgo don Quijote de la Mancha TASA Yo, Juan Gallo de Andrada, escribano de Camara del Rey nuestro senor, de los que residen en su Consejo, certifico y doy fe que, habiendo visto por los senores del un libro domingo 1 de mayo de 2011
  • 38. Python Mapper #!/usr/bin/python import sys import re def main(argv): line = sys.stdin.readline() pattern = re.compile("[a-zA-Z][a-zA-Z0-9]*") try: while line: for word in pattern.findall(line): print "LongValueSum:" + word.lower() + "t" + "1" line = sys.stdin.readline() except "end of file": return None if __name__ == "__main__": main(sys.argv) domingo 1 de mayo de 2011
  • 39. Test the mapper $ cat donquijote_s1.txt | ./wsplit.py LongValueSum:el 1 LongValueSum:ingenioso 1 LongValueSum:hidalgo 1 LongValueSum:don 1 LongValueSum:quijote 1 LongValueSum:de 1 LongValueSum:la 1 LongValueSum:mancha 1 LongValueSum:tasa 1 LongValueSum:yo 1 LongValueSum:juan 1 LongValueSum:gallo 1 LongValueSum:de 1 LongValueSum:andrada 1 domingo 1 de mayo de 2011
  • 40. Preparing the S3 domingo 1 de mayo de 2011
  • 41. domingo 1 de mayo de 2011
  • 42. domingo 1 de mayo de 2011
  • 43. domingo 1 de mayo de 2011
  • 44. Run domingo 1 de mayo de 2011
  • 45. domingo 1 de mayo de 2011
  • 46. domingo 1 de mayo de 2011
  • 47. domingo 1 de mayo de 2011
  • 48. domingo 1 de mayo de 2011
  • 49. domingo 1 de mayo de 2011
  • 50. domingo 1 de mayo de 2011
  • 51. domingo 1 de mayo de 2011
  • 52. domingo 1 de mayo de 2011
  • 53. domingo 1 de mayo de 2011
  • 54. domingo 1 de mayo de 2011
  • 55. domingo 1 de mayo de 2011
  • 56. domingo 1 de mayo de 2011
  • 57. domingo 1 de mayo de 2011
  • 58. Final result $ awk '{print $2 " " $1}' part-00000 | sort -r -n 21477 que 18297 de 18189 y 3352 su 10363 la 2647 don 9824 a 2623 del 9490 el 2539 como 8243 en 2345 me 6335 no 2312 si 5079 se 2284 mas 4748 los 2207 mi 4202 con 2175 quijote 3940 por 2148 sancho 3468 las 2142 es 3461 lo 2077 yo 3398 le 1938 un 1808 dijo 1740 al 1463 para 1400 porque domingo 1 de mayo de 2011
  • 59. CL alternative $ elastic-mapreduce --create --stream --input s3n://mrbg/input --mapper s3://mrbg/prog/wsplit.py --output s3n://mgbr/output/run2 $ elastic-mapreduce --create domingo 1 de mayo de 2011
  • 60. MapReduce, ex 2 Pi = 4*M/N domingo 1 de mayo de 2011
  • 61. MapReduce: Mapper #!/usr/bin/ruby ARGF.each do |line| mcsteps = line.strip unless mcsteps.length == 0 begin inside = 0 mcsteps.to_i.times do x, y = rand, rand inside += 1 if Math.hypot(x,y) < 1.0 end puts inside.to_s rescue # couldn't parse mc steps end end end domingo 1 de mayo de 2011
  • 62. Pi $ cat mcs.txt 1000 $ cat mcs.txt | ./mc-pi-mr.rb 776 ... create more mcs.txts: 200_000_000 200_000_000 domingo 1 de mayo de 2011
  • 63. MapReduce: Reducer #!/usr/bin/ruby count = 0 ARGF.each do |line| count += line.to_i end puts "#{count} points inside" domingo 1 de mayo de 2011
  • 64. Prepare the EMR • upload mcsnn.txt to mrbg/mcinput/ • upload mc-mapper.rb to mrbg/prog/ • upload mc-reducer.rb to mrbg/prog/ domingo 1 de mayo de 2011
  • 65. domingo 1 de mayo de 2011
  • 67. • Hadoop Common • HDFS • MapReduce domingo 1 de mayo de 2011
  • 68. Thank you Q &A domingo 1 de mayo de 2011