AWS Tech Flashcards
What is AWS?
AWS, is as a leading cloud computing platform empowers businesses and individuals with a diverse array of services - encompassing computing power, storage solutions and databases Elasticity and Scalability
AWS offers elasticity, allowing resources to scale up or down based on demand, and scalability, enabling the use of large amounts of computing resources on a per-use fee basis.
Cost-Effective Solution: Using AWS is typically much cheaper than maintaining a server farm directly as it offers the ability to pay for computing resources on a per-use basis.
Here are short key points differentiating between Elasticity and Scalability:
Elasticity:
Refers to the ability to dynamically adjust resources based on demand, scaling up or down automatically.
Scalability:
Involves the capability to handle increased workload by adding resources without impacting the system’s performance.
What is cloud computing?
Cloud computing is the on-demand delivery of IT resources over the Internet with pay-as-you-go pricing.
Instead of buying, owning, and maintaining physical data centers and servers, you can access technology services, such as computing power, storage, and databases, on an as-needed basis from a cloud provider like Amazon Web Services (AWS).
Provide example for Types of cloud computing - IaaS, PaaS, SaaS
Elasticity: Refers to the ability to dynamically adjust resources based on demand, scaling up or down automatically.
Scalability: Involves the capability to handle increased workload by adding resources without impacting the system’s performance.
Provide example for Types of cloud computing
Infrastructure as a Service (IaaS)
These IaaS offerings on AWS provide the foundational infrastructure components for users to build, deploy, and manage their applications and services in the cloud. For example - EC2, S3, VPC
Platform as a Service (PaaS)
PaaS removes the need for you to manage underlying infrastructure (usually hardware and operating systems), and allows you to focus on the deployment and management of your applications- Platform as a Service (PaaS) examples -** AWS Lambda, Amazon RDS,Amazon DocumentDB **
SaaS SaaS provides you with a complete product that is run and managed by the service provider
nfrastructure as a Service (IaaS) offerings on AWS:
Amazon EC2 (Elastic Compute Cloud) A
mazon EC2 provides resizable compute capacity in the cloud, allowing users to launch virtual servers, known as instances, to host their applications. EC2 offers various instance types optimized for different workloads, providing flexibility and scalability for computing resources.
Amazon S3 (Simple Storage Service):
Amazon S3 is a scalable object storage service that offers reliable and secure storage for a wide range of use cases. It provides the ability to store and retrieve any amount of data at any time, making it suitable for various storage needs, including data backup, content storage, and application hosting.
Amazon VPC (Virtual Private Cloud):
Amazon VPC allows users to create a logically isolated section of the AWS Cloud, where they can launch AWS resources in a virtual network. VPC provides control over the virtual networking environment, including IP address ranges, subnets, and routing tables, enabling users to customize network configurations for their applications.
These IaaS offerings on AWS provide the foundational infrastructure components for users to build, deploy, and manage their applications and services in the cloud.
AWS Lambda: AWS Lambda is a serverless computing service that falls under the PaaS category. It enables developers to run code without provisioning or managing servers.
What is What is Amazon Simple Storage Service?
What is Object storage?
AWS S3, or Amazon Simple Storage Service, is a scalable, secure, and highly durable object storage service provided by Amazon Web Services.
Object storage is a type of storage architecture that manages data as objects, unlike traditional file systems that store data as files in a folder hierarchy. Each object typically includes the data itself, metadata, and a unique identifier. Object storage systems are highly scalable and can manage large amounts of unstructured data efficiently.
What is a document database, and how does it differ from a relational database?
- A document database stores semi-structured data as documents, using nested key-value pairs to provide the document’s structure or schema.
- Unlike a relational database, it does not normalize data across multiple tables with a unique and fixed structure, allowing for flexibility in storing different types of documents in the same database.
Document databases are beneficial for use cases such as managing user profiles, real-time big data analysis, and content management. They offer a flexible schema for storing diverse attributes and data values, making them practical for online profiles, real-time data extraction, and content aggregation from various sources.
How does Amazon DocumentDB enable machine learning and generative artificial intelligence models to work with data in real time?
- Amazon DocumentDB eliminates the need to manage separate infrastructure, write code to connect with another service, or duplicate data from the primary database, enabling machine learning and generative AI models to work with real-time data.
- Vector search for Amazon DocumentDB, you can store, index, and search millions of vectors with millisecond response times. A vector is a numerical representation that represents the semantic meaning of unstructured data such as text, images, and video. You can store vectors from Amazon Bedrock, Amazon SageMaker, and other third party or propriety models
Explain what is Vector Search for Amazon DocumentDB
- Vector search for Amazon DocumentDB is a feature that allows you to perform similarity search on the data stored in your Amazon DocumentDB database using vector representations of the documents.
- This feature leverages machine learning and similarity algorithms to retrieve similar documents based on their content.
- This approach enables efficient and accurate retrieval of similar documents, making it valuable for applications such as recommendation systems, content discovery, and information retrieval.
Suppose you have a collection of customer reviews stored in Amazon DocumentDB. With vector search, you can input a specific customer review and find other reviews that share similar sentiments, topics, or opinions. For instance, if you input a review expressing satisfaction with a particular product, the vector search feature can retrieve other reviews that convey similar levels of satisfaction or discuss similar product attributes, helping to identify patterns and trends in customer feedback.
what is A data lake?
A data lake is a centralized repository that enables storage of structured and unstructured data at any scale.
It allows storing data without the need to structure it beforehand and supports various types of analytics, including dashboards, visualizations, big data processing, real-time analytics, and machine learning for informed decision-making
AWS data lakes are collections of data stored in Amazon S3 that can be analyzed using services like Athena, Glue, and Lake Formation. This allows for centralized data storage and analysis across an organization.
What is A data warehouse
A data warehouse is a database optimized to analyze relational data coming from transactional systems and line of business applications. The data structure and schema are defined in advance to optimize for fast SQL queries, and the results are typically used for operational reporting and analysis. Data is cleaned, enriched, and transformed so it can act as the “single source of truth” that users can trus
How does a data warehouse compare to a data lake?
- Depending on the requirements, a typical organization will require both a data warehouse and a data lake as they serve different needs, and use cases.
- A data warehouse is designed to analyze relational data with a predefined structure for fast SQL queries, mainly for operational reporting and analysis. Conversely, a data lake can store structured and unstructured data without prior structuring, supporting various analytics like dashboards, visualizations, big data processing, real-time analytics, and machine learning for informed decision-making.
What is Microservices?
Microservices are an architectural paradigm that breaks an application into small autonomous services, each of which is independently deployable and loosely coupled to other microservices in the application.
What is Containers?
Containers are semi-isolated execution environments that bundle applications with their dependencies to allow easy and consistent deployment regardless of the environment.
Containers provide the essential infrastructure for deploying, managing, and scaling microservices, ultimately enhancing scalability, resource utilization, and customer experience.
What is Kubernetes?
- Kubernetes is an open-source container orchestration system that automates the management, scaling, and deployment of containerized applications at scale. It arranges containers into logical groupings for management and discoverability, then launches them onto clusters of Amazon Elastic Compute Cloud (Amazon EC2) instances.
- Kubernetes allows you to run containerized applications, including microservices, batch processing workers, and platforms as a service (PaaS) using the same toolset on premises and in the cloud.
What is Continuous Integration (CI)?
Continuous Integration (CI) is a software development practice where developers regularly merge their code changes into a central repository. Each merge triggers an automated build and testing process to quickly identify and resolve integration errors.
What is Continuous Delivery (CD)?
Continuous Delivery (CD) is an extension of CI that ensures software is always in a deployable state. It involves automating the process of deploying code changes to production or staging environments after successful builds and tests.