Clouds, Distributed Systems, Networking
Learn about and build distributed and networked systems for clouds and big data.
Sobre este Programa Especializado
Sigue el orden sugerido o elige el tuyo.
Diseñado para ayudarte a practicar y aplicar las habilidades que aprendiste.
Resalta tus nuevas habilidades en tu currículum o LinkedIn.
- Intermediate Specialization.
- Some related experience required.
Conceptos de Cómputo en la Nube, Parte 1Próxima sesión: mar. 27 — may. 8.
Acerca del CursoHoy día los sistemas de cómputo en la nube, ya sean de código abierto o los usados dentro de compañías, se encuentran construidos usando un mismo conjunto de técnicas clave, algoritmos, y filosofías de diseño - todas centradas alrededor de los sistemas distribuidos. Aprende sobre estos "conceptos" fundamentales del cómputo distribuido para el cómputo en la nube. Algunos de estos conceptos incluyen: las nubes, MapReduce, almacenamiento de valores de llaves (key-value stores), precursores clásicos, algoritmos ampliamente usados, algoritmos clásicos, escalabilidad, áreas de tendencia, ¡y más!. Entenderás como estas técnicas trabajan internamente en los sistemas de cómputo en la nube más ampliamente usados en la actualidad. Pondrás manos a la obra usando estos conceptos con los ejercicios y tareas que te asignaremos. En el track opcional de programación, implementarás algunos de estos conceptos en las plantillas que te serán asignadas en lenguaje de programación C++. También podrás observar entrevistas con gerentes líderes e investigadores, tanto de la industria como del ambiente académico.
Cloud Computing Concepts: Part 2Próxima sesión: abr. 3 — may. 15.
Acerca del CursoCloud computing systems today, whether open-source or used inside companies, are built using a common set of core techniques, algorithms, and design philosophies—all centered around distributed systems. Learn about such fundamental distributed computing "concepts" for cloud computing. Some of these concepts include: Clouds, MapReduce, key-value stores, Classical precursors, Widely-used algorithms, Classical algorithms, Scalability, Trending areas, And more! Understand how these techniques work inside today’s most widely-used cloud computing systems. Get your hands dirty using these concepts with provided homework exercises. In the programming assignment, implement some of these concepts in template assignments provided in C++ programming language. You will also watch interviews with leading managers and researchers, from both industry and academia. This course builds on the material covered in the Cloud Computing Concepts, Part 1 course.
Cloud Computing Applications, Part 1: Cloud Systems and InfrastructurePróxima sesión: abr. 3 — may. 8.
- 4 weeks, 2-3 hours of video lectures per week, a weekly quiz (30 minutes). 3-4 hours for tutorial.
Acerca del CursoWelcome to the Cloud Computing Applications course, the first part of a two-course series designed to give you a comprehensive view on the world of Cloud Computing and Big Data! In this first course we cover a multitude of technologies that comprise the modern concept of cloud computing. Cloud computing is an information technology revolution that has just started to impact many enterprise computing systems in major ways, and it will change the face of computing in the years to come. We start the first week by introducing some major concepts in cloud computing, the economics foundations of it and we introduce the concept of big data. We also cover the concept of software defined architectures, and how virtualization results in cloud infrastructure and how cloud service providers organize their offerings. In week two, we cover virtualization and containers with deeper focus, including lectures on Docker, JVM and Kubernates. We finish up week two by comparing the infrastructure as a service offering by the big three: Amazon, Google and Microsoft. Week three moves to higher level of cloud offering, including platform as a service, mobile backend as a service and even serverless architectures. We also talk about some of the cloud middleware technologies that are fundamental to cloud based applications such as RPC and REST, JSON and load balancing. Week three also covers metal as a service (MaaS), where physical machines are provisioned in a cloud environment. Week four introduces higher level cloud services with special focus on cloud storage services. We introduce Hive, HDFS and Ceph as pure Big Data Storage and file systems, and move on to cloud object storage systems, virtual hard drives and virtual archival storage options. As discussion on Dropbox cloud solution wraps up week 4 and the course.
Cloud Computing Applications, Part 2: Big Data and Applications in the CloudPróxima sesión: mar. 27 — may. 1.
- There is about 3-4 hours of video lectures per week. Each week's quiz takes about 30 minutes.
Acerca del CursoWelcome to the Cloud Computing Applications course, the second part of a two-course series designed to give you a comprehensive view on the world of Cloud Computing and Big Data! In this second course we continue Cloud Computing Applications by exploring how the Cloud opens up data analytics of huge volumes of data that are static or streamed at high velocity and represent an enormous variety of information. Cloud applications and data analytics represent a disruptive change in the ways that society is informed by, and uses information. We start the first week by introducing some major systems for data analysis including Spark and the major frameworks and distributions of analytics applications including Hortonworks, Cloudera, and MapR. By the middle of week one we introduce the HDFS distributed and robust file system that is used in many applications like Hadoop and finish week one by exploring the powerful MapReduce programming model and how distributed operating systems like YARN and Mesos support a flexible and scalable environment for Big Data analytics. In week two, our course introduces large scale data storage and the difficulties and problems of consensus in enormous stores that use quantities of processors, memories and disks. We discuss eventual consistency, ACID, and BASE and the consensus algorithms used in data centers including Paxos and Zookeeper. Our course presents Distributed Key-Value Stores and in memory databases like Redis used in data centers for performance. Next we present NOSQL Databases. We visit HBase, the scalable, low latency database that supports database operations in applications that use Hadoop. Then again we show how Spark SQL can program SQL queries on huge data. We finish up week two with a presentation on Distributed Publish/Subscribe systems using Kafka, a distributed log messaging system that is finding wide use in connecting Big Data and streaming applications together to form complex systems. Week three moves to fast data real-time streaming and introduces Storm technology that is used widely in industries such as Yahoo. We continue with Spark Streaming, Lambda and Kappa architectures, and a presentation of the Streaming Ecosystem. Week four focuses on Graph Processing, Machine Learning, and Deep Learning. We introduce the ideas of graph processing and present Pregel, Giraph, and Spark GraphX. Then we move to machine learning with examples from Mahout and Spark. Kmeans, Naive Bayes, and fpm are given as examples. Spark ML and Mllib continue the theme of programmability and application construction. The last topic we cover in week four introduces Deep Learning technologies including Theano, Tensor Flow, CNTK, MXnet, and Caffe on Spark.
Cloud NetworkingPróxima sesión: mar. 27 — may. 8.
Acerca del CursoIn the cloud networking course, we will see what the network needs to do to enable cloud computing. We will explore current practice by talking to leading industry experts, as well as looking into interesting new research that might shape the cloud network’s future. This course will allow us to explore in-depth the challenges for cloud networking—how do we build a network infrastructure that provides the agility to deploy virtual networks on a shared infrastructure, that enables both efficient transfer of big data and low latency communication, and that enables applications to be federated across countries and continents? Examining how these objectives are met will set the stage for the rest of the course. This course places an emphasis on both operations and design rationale—i.e., how things work and why they were designed this way. We're excited to start the course with you and take a look inside what has become the critical communications infrastructure for many applications today.
Cloud Computing ProjectPróxima sesión: may. 1 — jun. 19.
Sobre el Proyecto FinalNote: You should complete all the other courses in this Specialization before beginning this course. This six-week long Project course of the Cloud Computing Specialization will allow you to apply the learned theories and techniques for cloud computing from the previous courses in the Specialization, including Cloud Computing Concepts, Part 1, Cloud Computing Concepts, Part 2, Cloud Computing Applications, Part 1, Cloud Computing Concepts, Part 2, and Cloud Networking.
Data Engineering Manager at Capital One, Adjunct Research Assistant Professor of Computer Science
P. Brighten Godfrey
Roy H. Campbell
Professor of Computer Science