Arquitectura de Computadors d'Altes Prestacions

Esteu aquí

Crèdits
6
Tipus
Obligatòria
Requisits
Aquesta assignatura no té requisits, però té capacitats prèvies
Departament
AC
La computació al núvol és un model de servei per a computació distribuïda a gran escala basada en una infraestructura concentrada i un conjunt de serveis col•laboratius sobre els quals un conjunt d'aplicacions es poden implementar i executar a través de la xarxa.

Aquest curs sobre computació en el núvol té un enfocament principalment pràctic respecte a les tecnologies relacionades. Si bé els conceptes explicats s'apliquen a qualsevol aplicació, les classes presten especial atenció a la creació d'aplicacions Big Data Analytics en el núvol.

A les classes teòriques del curs, els estudiants aprendran els principis i l'estat de l'art de la computació distribuïda a gran escala a un model basat en serveis. Els estudiants estudiaran com l'escala afecta les propietats del sistema, els models, l'arquitectura i els requisits.
Quant als principis, aquest curs analitza com afecta l'escala a les propietats i problemes del sistema (com virtualització, disponibilitat, localitat, rendiment i adaptació), models de sistema, models arquitectònics, entorn i requisits d'aplicació (com tolerància a errors , distribució de contingut). Aquest curs també explora l'estat de l'art en la gestió de recursos d'entorns en el núvol (compostos per diferents tipus de plataformes i organitzacions) per admetre les aplicacions actuals i els seus requisits.
A les sessions de laboratori d'aquest curs, els estudiants obtindran una visió pràctica de l'últim en tecnologia del núvol per implementar un prototipus que satisfaci una idea de negoci creada pels estudiants. Es començarà a construir una caixa d'eines essencial per donar els primers passos en el núvol. Després tindran l'oportunitat de practicar amb les API, les portes en el núvol. Tots aquests preliminars permetran que els estudiants extreguin l'allau de dades provinents del núvol o utilitzin els nous serveis analítics avançats que ofereix actualment el núvol. Finalment, miraran sota el capó d'aquests serveis analítics d'alt nivell en el núvol, ja sigui en relació amb el programari o maquinari, per comprendre com complir amb els requisits d'alt rendiment.

Professorat

Responsable

  • Angel Toribio Gonzalez ( )

Hores setmanals

Teoria
2
Problemes
0
Laboratori
2
Aprenentatge dirigit
0
Aprenentatge autònom
7.11

Competències

Competències Tècniques de cada especialitat

Específiques

  • CTE1 - Capacitat per a modelar, dissenyar, definir l'arquitectura, implantar, gestionar, operar, administrar i mantenir aplicacions, xarxes, sistemes, serveis i continguts informàtics.
  • CTE6 - Capacitat per a dissenyar i avaluar sistemes operatius i servidors, i aplicacions i sistemes basats en computació distribuïda.
  • CTE7 - Capacitat per a comprendre i poder aplicar coneixements avançats de computació d'altes prestacions i mètodes numèrics o computacionals a problemes d'enginyeria.

Competències Tècniques Generals

Genèriques

  • CG1 - Capacitat per a projectar, calcular, i dissenyar productes, processos i instal·lacions en tots els àmbits de l'Enginyeria Informàtica
  • CG3 - Capacitat per a dirigir, planificar i supervisar equips multidisciplinaris.
  • CG4 - Capacitat pel modelat matemàtic, càlcul i simulació en centres tecnològics i d'enginyeria d'empresa, particularment en tasques de recerca, desenvolupament i innovació en tots els àmbits relacionats amb l'Enginyeria en Informàtica.
  • CG6 - Capacitat per a la direcció general, direcció tècnica i direcció de projectes de recerca, desenvolupament i innovació en empreses i centres tecnològics, en l'àmbit de l'Enginyeria en Informàtica.
  • CG8 - Capacitat per a l'aplicació dels coneixements adquirits i de resoldre problemes en entorns nous o poc coneguts dins de contexts més amplis i multidisciplinaris, essent capaços d'integrar aquests coneixements.

Competències Transversals

Actitud adequada davant el treball

  • CTR5 - Tenir motivació per a la realització professional i per a afrontar nous reptes, tenir una visió àmplia de les possibilitats de la carrera professional en l'àmbit de l'enginyeria en informàtica. Sentir-se motivat per la qualitat i la millora contínua, i actuar amb rigor en el desenvolupament professional. Capacitat d'adaptació als canvis organitzatius o tecnològics. Capacitat de treballar en situacions de carència d'informació i/o amb restriccions temporals i/o de recursos.

Bàsiques

  • CB6 - Que els estudiants sàpiguen aplicar els coneixements adquirits y la seva capacitat de resolució de problemes en entorns nous o poc coneguts dins de contexts més amplis (o multidisciplinaris) relacionats amb la seva àrea d'estudi.

Objectius

  1. Present the student with new execution environments required to manage the computing resources and simplify the development and integration of the different types of applications and services at nowadays Internet-scale systems.
    Competències relacionades: CTE1, CTE2, CTR6, CTR1,
  2. Collaborate in the design, implementation and presentation of a cloud computing environment that is required for a class project.
    Competències relacionades: CTE1, CTR3, CTR5, CTR6, CB7, CG4, CG5, CTR1,
  3. Find and understand useful information to create innovative solutions.
    Competències relacionades: CTE2, CTE3, CB8, CG5,

Continguts

  1. Teoria: fonaments de computació en el núvol
    Conceptes fonamentals: l'efecte de l'escala en les propietats del sistema.
    ---- Problemes en sistemes a gran escala: virtualització, orientació i composició del servei, disponibilitat, localitat, rendiment i adaptació.
    ---- Models per a sistemes a gran escala: models de sistemes per a anàlisi, models arquitectònics i models de servei / implementació.
    ---- Tècniques d'escala: tècniques bàsiques, tècniques de computació escalables per models arquitectònics.
    ---- Middleware i aplicacions: informàtica, emmagatzematge, web, distribució de contingut, sistemes o serveis d'escala d'Internet.
    ---- Requisits d'entorn i aplicacions.
  2. Sessions de laboratori: Visió pràctica de Cloud Computing
    Anàlisi de dades massives
       ---- API: les portes del núvol
       ---- Capes de programari requerides actualment en l'anàlisi de dades massives
       ---- Requisits de programari nous per a anàlisi avançat
       ---- Requisits de maquinari nous per a anàlisi avançat
  3. Projecte: part experimental
    Desenvolupament d'una aplicació prototip utilitzant els serveis disponibles a la núvia (com AWS, Google App Engine, Open Stack, OpenNebula)
    ---- Desenvolupament d'una aplicació prototype utilitzant serveis analítics avançats ja sigui en relació amb API o programari com servei.

Activitats

Activitat Acte avaluatiu


Presentation of the subject and Introduction to Cloud Computing and Big Data Analytics


Objectius: 1
Teoria
4h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h

Virtualization


Objectius: 1
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h

Cloud Computing Architecture


Objectius: 1 3
Teoria
6h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
12h

Best Practices for creating SaaS


Objectius: 2 3
Teoria
2h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h

Cloud Security


Objectius: 1 3
Teoria
4h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
8h

Shared Knowledge on current trending topics


Objectius: 1 3
Teoria
4h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
12h

Collaborative class project


Objectius: 2
Teoria
5h
Problemes
0h
Laboratori
11h
Aprenentatge dirigit
0h
Aprenentatge autònom
36h

Lab 1: Basic knowledge toolbox


Objectius: 2 3
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Lab 2: Doors in the cloud


Objectius: 2 3
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Lab 3: Basic use of the cloud


Objectius: 2 3
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Lab 4: Use of services programmatically through their API


Objectius: 2 3
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Lab 5: Deploy a custom web app using additional cloud services


Objectius: 2 3
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Lab 6: Run a custom web app in the cloud


Objectius: 2 3
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Lab 7: Continuous Integration, Continuous Delivery, and Observability


Objectius: 2 3
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Lab 8: Serverless applications


Objectius: 2 3
Teoria
0h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
2h

Metodologia docent

Classes de teoria, lectura i discussió de documents tècnics i de recerca, Presentació de temes (i documents) per part dels estudiants. Sessions de laboratori i un projecte pràctic de classe.

Es requereix que els estudiants portin el seu portàtil per desenvolupar les sessions de laboratori i el projecte de classe pràctica.

Els estudiants han de ser responsables dels seus comptes d'Amazon Web Services (proveïdor de serveis computació al núvol).

Mètode d'avaluació

Els alumnes s'avaluaran sobre la seva participació a classe, sessions de laboratori, assistència, lectura i presentació d'informes i treballs i treballs sobre temes específics.

La nota final del curs és la mitjana ponderada de les qualificacions dels següents components obtinguts en cada part del curs:
· Sessions de laboratori: 40%
· Lectures d'articles / presentacions i tasques: 10%
· Projectes del curs: 30%
· Exàmen final: 20%

Per poder defensar públicament el projecte del curs, els estudiants han d'haver assistit almenys al 70% de les classes i els equips han d'haver lliurat a temps les activitats que s'han planificat durant el curs. El projecte del curs és fruit del treball en equip, que es reflectirà en la calificació donada al conjunt del grup. Cada membre del grup serà responsable d'una part del projecte i es pot calificar individualment en la seva contribució.

Bibliografia

Bàsica:

Capacitats prèvies

Coneixements generals de:
- Xarxes TCP/IP
- Administració bàsica de sistemes operatius i utilització del sistema operatiu dins dels programes
- Desenvolupament de programari


Coneixement bàsic de:
- Línia de comandes de Unix.
- Llenguatge de programació Python.
- Sistema de control de versions Git.

Atenció. Se suposa que els estudiants han de tenir els coneixements anteriors abans de començar les sessions de laboratori. Es proporcionaran materials complementaris abans de la classe per ajudar els estudiants a complir amb els requisits anteriors.