Parallel Programming in the Cloud Flashcards

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/112

flashcard set

Earn XP

Description and Tags

Vocabulary flashcards based on lecture notes about parallel programming in cloud computing.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

113 Terms

1
New cards

Parallel Computing

The execution of multiple computations simultaneously to improve performance and scalability.

2
New cards

Task Parallelism

Different tasks are executed simultaneously across different computing units.

3
New cards

Data Parallelism

The same operation is performed concurrently on subsets of a large dataset.

4
New cards

Pipeline Parallelism

A sequence of processing stages where the output of one stage serves as input to the next.

5
New cards

MapReduce

A programming model designed for processing large datasets in parallel across a distributed cluster.

6
New cards

Map Phase

Input data is split into smaller chunks and processed in parallel.

7
New cards

Reduce Phase

The processed data is aggregated and combined to generate the final output.

8
New cards

Hadoop

An open-source framework widely used for big data analytics.

9
New cards

HDFS (Hadoop Distributed File System)

A scalable and fault-tolerant storage system.

10
New cards

YARN (Yet Another Resource Negotiator)

A resource management layer that schedules and allocates resources efficiently.

11
New cards

MapReduce API

A programming interface for writing distributed applications.

12
New cards

Apache Spark

An in-memory distributed computing engine that processes data much faster than Hadoop.

13
New cards

RDD (Resilient Distributed Dataset)

An abstraction allowing data to be processed in-memory with fault tolerance.

14
New cards

DAG (Directed Acyclic Graph) Execution

Optimized execution plan for task dependencies.

15
New cards

Spark Streaming

Support for real-time data processing within Apache Spark.

16
New cards

Spark MLlib

Scalable machine learning algorithms provided by Spark.

17
New cards

GraphX

Enables graph computation at scale within Apache Spark.

18
New cards

Serverless Computing

Allows developers to deploy code without managing underlying infrastructure.

19
New cards

FaaS (Function-as-a-Service)

A cloud execution model where individual functions are executed in response to events.

20
New cards

AWS Lambda

A popular FaaS provider.

21
New cards

Google Cloud Functions

A popular FaaS provider.

22
New cards

Azure Functions

A popular FaaS provider.

23
New cards

Cloud-Native Applications

Applications designed specifically for cloud environments.

24
New cards

Microservices Architecture

Decomposing applications into small, independently deployable services.

25
New cards

Containerization

Using containers (e.g., Docker) to package and deploy applications.

26
New cards

Orchestration

Managing containerized applications using Kubernetes.

27
New cards

CI/CD Pipelines

Automating software delivery with DevOps tools.

28
New cards

Docker

A containerization platform that packages applications and dependencies into lightweight, portable containers.

29
New cards

Kubernetes

An orchestration system that manages containerized applications at scale.

30
New cards

Service Mesh

Tools that enhance communication and security between microservices (e.g., Istio, Linkerd).

31
New cards

Event-Driven Computing

A paradigm where applications respond to events (e.g., API calls, file uploads, database changes).

32
New cards

Message Queues

Facilitate asynchronous event processing (e.g., Kafka, RabbitMQ).

33
New cards

Event-Driven FaaS

Functions execute in response to events (e.g., AWS Lambda triggers from S3 uploads).

34
New cards

Stream Processing

Enables real-time data analytics (e.g., Apache Flink, Spark Streaming).

35
New cards

Scalability

The ability of a system to handle a growing amount of work by adding resources.

36
New cards

Fault Tolerance

The ability of a system to continue operating properly in the event of the failure of some of its components.

37
New cards

Agility

The ability to move quickly and easily.

38
New cards

Sidecar Pattern

A pattern where a service mesh is typically implemented as a scalable set of network proxies deployed alongside application code.

39
New cards

Data Plane

The component of a service mesh that handles communication between microservices.

40
New cards

Control Plane

The component of a service mesh that controls the data plane.

41
New cards

Cloud Native Application

An application might consist of hundreds of services; each service might have thousands of instances; and each of those instances might be in a constantly-changing state as they are dynamically scheduled by an orchestrator like Kubernetes.

42
New cards

Service-to-Service Communication

Communication in the cloud native world which is incredibly complex, it’s a fundamental part of the application’s runtime behavior.

43
New cards

Asynchronous

Not occurring at the same time.

44
New cards

Resilience

The capacity to recover quickly from difficulties; toughness.

45
New cards

Observability

A measure of how well internal states of a system can be inferred from knowledge of its external outputs.

46
New cards

Real-Time Data Processing

Processing data as soon as it is generated.

47
New cards

Event-Driven Applications

Applications are built such that they react to events in real time.

48
New cards

Scalable Machine Learning

Scalability in machine learning involves efficiently handling growing data volumes, model complexity, and user traffic while maintaining performance and resource utilization.

49
New cards

Containerized Applications

Applications packaged using containerization technologies like Docker.

50
New cards

Distributed Architectures

System in which components are located on different networked computers, which communicate and coordinate their actions by passing messages to one another.

51
New cards

Dynamically Allocate Resources

Allocation of the resources immediately prior to its use based on the conditions prevailing at the time of allocation.

52
New cards

Big Data Analytics

the process of examining large and varied data sets to uncover hidden patterns, unknown correlations, market trends, customer preferences and other useful information that can help organizations make more informed business decisions

53
New cards

Scalable Cloud Applications

The application has the ability to handle an increase workload.

54
New cards

Robust Cloud Computing

Has the ability to handle cloud functions with efficiency.

55
New cards

Scalable Applications

Applications designed to allow for upscaling and downscaling without having to change the code base.

56
New cards

Immutable distributed collections

Cannot be changed after creation. If wanting to modify the object, a copy that reflects the modifications need to be created.

57
New cards

Scalable Graph Computation

Computation of information on large amounts of data.

58
New cards

DevOps

a set of practices that combines software development and IT operations.

59
New cards

Cloud Execution Model

A subscription and usage-based service where resources can be accessed on-demand over the internet.

60
New cards

Scalable Services

Architecting services is critical to application scalability. These services must be stateless, so that all possible requests are handled in the same manner.

61
New cards

Cloud Environment

A collection of linked physical or virtual resources, such as hardware, networking, and storage, combined with cloud management software.

62
New cards

Lightweight Containers

Package dependencies into easily moveable containers.

63
New cards

Portable Containers

A standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another.

64
New cards

Scalabe Kubernetes

Makes it easier for organizations to manage large clusters that support thousands upon thousands of containerized applications

65
New cards

Resilient Applications

Architecting a system that is resilient requires that a system respond when a problem occurs by remaining operational.

66
New cards

Cloud-Agnostic Applications

The ability to move and run our application to an alternative cloud provider quickly and seamlessly.

67
New cards

Cloud Infrastructure

The hardware and software components needed to support the computing requirements of a cloud computing model.

68
New cards

Communication Between Microservices

The act of two or more services working together.

69
New cards

Scalable Cloud Applications

A modular system that can handle increases and decreases in the amount of processes completed.

70
New cards

Automated Software Delivery

Using DevOps to automate the software pipeline.

71
New cards

Independently Deployable Services

Can be easily deployable within the cloud environment.

72
New cards

High-Performance Distributed Computing

Using parallel programming in the cloud to process distribute high performance applications.

73
New cards

Efficient Data Processing

Using cloud applications such as MapReduce, Spark, serverless computing, and microservices to process data efficiently.

74
New cards

Scalable Applications

Using cloud applications such as MapReduce, Spark, serverless computing, and microservices to create scalable applications.

75
New cards

Resilient Architecture

Using parallel programming in the cloud to create resilient architectural designs.

76
New cards

Harnessing the Power of Parallel Computing

Using cloud native design principles so developers can build robust, scalable, and event-driven applications.

77
New cards

Cloud Computing

Using remote servers to store, manage, and process data, rather than a local server or a personal computer.

78
New cards

API Calls

Requests made by application programming interface.

79
New cards

File Uploads

The process of uploading files to a cloud server or other destination.

80
New cards

Database Changes

Adjustments to data in a database that can trigger events.

81
New cards

Cloud Computing in 2025

Spring Cloud Computing course.

82
New cards

Flexibility

Enables efficient large-scale data processing and high-performance computing applications.

83
New cards

Real-Time Data Processing

Processing data as soon as it is created.

84
New cards

Scalable Applications

Architect for growth.

85
New cards

Sidecar

A second container running alongside the applications main container.

86
New cards

Network Proxies

A tool for adding security, reliability, and observability features to cloud native applications by transparently inserting this functionality at the platform layer rather than the application layer.

87
New cards

Cloud Platforms

A complete set of hardware and software that provides all of the elements needed to deliver online cloud services, including compute, storage, networking, and virtualization.

88
New cards

Compute Instances

A configuration of virtualized hardware and software that provides the computing resources an application uses to run.

89
New cards

Storage

Holding digital data in an electromagnetic or optical form for access by a computer processor.

90
New cards

Cloud Resources

The infrastructure and data available via the Internet for on-demand usage.

91
New cards

Memory

The area of a computer that holds data that are waiting to be processed.

92
New cards

Data Streams

A continuous flow of data.

93
New cards

Data Lakes

A centralized repository that allows you to store all your structured and unstructured data at any scale.

94
New cards

Dynamic Applications

Apps that are capable of changing.

95
New cards

Application Instances

A single deployment of your application running on a server.

96
New cards

Application Lifecycle

The software process of continuously planning, developing, testing, deploying and monitoring an application.

97
New cards

Event Processing

The continuous and incremental assessment of data as it arrives.

98
New cards

Application Programming Interface

A way for two or more computer programs to communicate with each other.

99
New cards

Cloud Management

Management capabilities for private, public, and hybrid cloud computing services.

100
New cards

Virtualization

An umbrella term for technology that allows you to create multiple virtual instances of resources such as computing, networking, and storage from a single physical resource or device.