SlideShare a Scribd company logo
AWS architecture
problems while
being fancy
About me
Goran Kopevski
Tech Lead @ Global Savings Group
Agenda
▰ Benefits of using AWS Cloud
▰ Fancy selling point
▰ Common design patterns and problems
What is AWS
Marketing eyes: Amazon Web Services (AWS) is a secure cloud
services platform, offering compute power, database storage,
content delivery and other functionality to help businesses scale
and grow.
Engineer eyes:
▰ Managed services
▰ Easier way for development and deployment
▰ New architecture horizonts
But why AWS or any other cloud?
Four fundamental principles for cloud:
▰ Fault tolerant systems
▰ Scalability
▰ Elasticity
▰ Cost effective
What kind of services they are offering
The good part
▰ Polished services
▻ EC2
▻ S3
▻ EB
▻ CF
▻ AWS RDS
▻ ….
▰ If a service gains popularity it gets big investment from AWS
Challenges
▰ For the sake of having a “service”, let's roll it out
▰ If service is popular -> invest,
▻ if not -> ignore it :)
▰ Stubbornness and simply ignoring requests
▰ Forcing you use their vision about cloud services
▻ Workarounds for other scenarios
The fancy smart wording
▰ “I am experienced in using Elastic mapReduce for distributed
cloud processing of large data sets across clusters of
computers using simple programming models”
▰ “I am using DynamoDB which a fast and flexible NoSQL
database service for all applications that need consistent,
single-digit millisecond latency at any scale”
The real wording
▰ “I am experienced in using Elastic mapReduce for distributed
cloud processing of large data sets across clusters of
computers using simple programming models”
▰ In normal (real) wording “I am using Hadoop”
▰ “I am using DynamoDB which a fast and flexible NoSQL
database service for all applications that need consistent,
single-digit millisecond latency at any scale”
▰ After some experience “I am using simple key value db”
AWS API Gateway: The good parts
▰ API Caching
▰ API limiter
▻ Example: max 1000 requests to specific endpoint
▰ Support for swagger definition of endpoints
▰ Good security
AWS API Gateway: Challenges
▰ Multipart requests
▻ Encode image in base64 and send it like that
▰ 10 MB limit payload
▻ Use streaming request
▰ Creation of endpoint
▻ Swagger custom parameters
Regions problem: The good parts
▰ Regions on every continent
▻ Closer to your clients
▰ Multiple availability zones per region
▰ Main power of the AWS infrastructure
▻ Prerequisite for fault tolerant systems
Regions problem: The challenges
▰ Some services available but not all
▻ First N.Virginia and Ireland then move it to other
regions
▰ Real world scenarios:
▻ DynamoDB caching
▻ DynamoDB backup
▻ CodePipeline
▻ AWS Fargate
▻ …
▰ https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/
Dynamo: The good parts
▰ Fast write
▰ Fast read
▻ Under some conditions
▰ Autoscaling is managed by AWS
▰ You pay for throughput
▻ number of request
▻ speed for writing/reading
▻ You can have 100000000…. TB of data
Dynamo: The challenging part!
▰ For every simple query you need to write a lot of code
instead of “1 liner”
▰ SELECT * FROM X WHERE Status=’Published’ AND
date>:date:
Dynamo: Even more challenges
▰ If you want to query by other parameters (not primary key), you need indexes
▻ Dynamo supports up to 5 indexes :)
▰ Versioning does not work with batch write
▻ You need to handle it yourself
▻ https://github.com/bchew/dynamodump
▰ https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html (racism link)
Dynamo problems with backup using AWS EMR
▰ Solution provided by AWS was to use new AWS
service (AWS EMR, (Hadoop))
▻ https://aws.amazon.com/blogs/aws/aws-howto-using-amazon-elastic-
mapreduce-with-dynamodb/
▰ The bad part is it was not working
consistently
▻ In a test scenario we restored 80% of the data
Dynamo solution for backup
From November 2017 AWS started to support dynamo table
backup as a managed service
Cloudformation templates
▰ Code as infrastructure
▰ Love hate relationship service
▰ If you use it properly and understand you have incredibly
good tool
▻ If not then you will hate it
▰ Interesting limitation if you don’t pay much attention
▻ 200 resources max per template
Lambda λ
Pros:
▰ FaaS
▻ Pay per execution
▰ No scaling problems
▰ Operational management
▰ Faster innovation
Cons:
▰ No control over environment
▰ Lack of operational tools
▰ Architectural complexity
AWS SQS
▰ Amazon Simple Queue Service (SQS) is a fully managed
message queuing service that makes it easy to decouple and
scale microservices, distributed systems, and serverless
applications.
▰ Nearly unlimited number of transactions per second
▻ 120,000 inflight messages in a queue
▰ Only 1 bad word => Limits:
▻ Activemq 8Gb
▻ RabitMQ 2Gb
▻ AWS SQS 256KB
▰ https://stackshare.io/stackups/amazon-sqs-vs-kafka-vs-rabbitmq
Cloudwatch: The good parts
▰ Out of the box integration with AWS
▻ SNS/SQS
▻ Logging
▻ Lambda
▻ ...
▰ Monitoring tool
▰ Supports for multiple type of notifications
Cloudwatch & Logging
Cloudwatch & Logging
https://eu-central-1.console.aws.amazon.com/lambda/home?region=eu-central-
1#/functions/LogsToElasticsearchEx_deals-es-logging_454597441955?tab=graph
CodePipeline: The good parts
▰ Super easy setup!
▰ Good integration in AWS ecosystem
CodePipeline: The challenges
▰ Integration with 3rd party goes with custom lambda
▻ Lambda for sonar (community)
▻ Lambda for github (community)
▰ No parameterized builds
▰ Code Pipeline Monitoring
The custom lambda problem
▰ If you need to tune the system to the way you want to work
in AWS system easiest way is with Custom Lambda!
▰ Example:
▻ Integration of Sonar with CodePipeline
▻ Integration of Github builds in CodePipeline
▻ Sending logs from Cloudwatch to ElasticSearch
https://forums.aws.amazon.com/thread.jspa?threadID=227681
AWS ES: The good parts
▰ Managed service
▰ Easy setup
▰ Integration with AWS ecosystem
▻ IAM Roles
▻ Kinesis
▻ EC2 instances
AWS ES: Challenges
▰ Transport protocol is disabled
▰ Only HTTP requests
▻ https://forums.aws.amazon.com/thread.jspa?messageID=784997
▰ Sometimes returns 500 :)
▰ Out of the box automatic autoscaling is not supported
Conclusion
▰ Consult/Research before choosing specific AWS service
▰ Managing whole infrastructure is easy with AWS
▰ If you don’t have very specific requirements go with AWS
THANKS!
Any questions?
You can find me at
gkopevski@gmail.com

More Related Content

What's hot

Big data and Analytics on AWS
Big data and Analytics on AWSBig data and Analytics on AWS
Big data and Analytics on AWS
2nd Watch
 
Optimizing your cloud
Optimizing your cloudOptimizing your cloud
Optimizing your cloud
2nd Watch
 
AWS Cost Optimization Strategy
AWS Cost Optimization StrategyAWS Cost Optimization Strategy
AWS Cost Optimization Strategy
Robert Sell
 
2016 Utah Cloud Summit: AWS Lambda and API Gateway
2016 Utah Cloud Summit: AWS Lambda and API Gateway2016 Utah Cloud Summit: AWS Lambda and API Gateway
2016 Utah Cloud Summit: AWS Lambda and API Gateway
1Strategy
 
BDA403 The Visible Network: How Netflix Uses Kinesis Streams to Monitor Appli...
BDA403 The Visible Network: How Netflix Uses Kinesis Streams to Monitor Appli...BDA403 The Visible Network: How Netflix Uses Kinesis Streams to Monitor Appli...
BDA403 The Visible Network: How Netflix Uses Kinesis Streams to Monitor Appli...
Amazon Web Services
 
Front End Orlando - AWS Lambda
Front End Orlando - AWS LambdaFront End Orlando - AWS Lambda
Front End Orlando - AWS Lambda
Brandon Westcott
 
EC2 Pricing Model (deck 0307 of the InfiniteSkills AWS course at http://bit.l...
EC2 Pricing Model (deck 0307 of the InfiniteSkills AWS course at http://bit.l...EC2 Pricing Model (deck 0307 of the InfiniteSkills AWS course at http://bit.l...
EC2 Pricing Model (deck 0307 of the InfiniteSkills AWS course at http://bit.l...
rICh morrow
 
Ingest Options on AWS
Ingest Options on AWSIngest Options on AWS
Ingest Options on AWS
Amazon Web Services
 
"Production-ready Serverless Java Applications in 3 weeks" at AWS Community D...
"Production-ready Serverless Java Applications in 3 weeks" at AWS Community D..."Production-ready Serverless Java Applications in 3 weeks" at AWS Community D...
"Production-ready Serverless Java Applications in 3 weeks" at AWS Community D...
Vadym Kazulkin
 
AWS Greengrass Technical Deep Dive - AWS Online Tech Talks
AWS Greengrass Technical Deep Dive - AWS Online Tech TalksAWS Greengrass Technical Deep Dive - AWS Online Tech Talks
AWS Greengrass Technical Deep Dive - AWS Online Tech Talks
Amazon Web Services
 
Wild Rides Takes off - The Dawn of a New Unicorn
Wild Rides Takes off - The Dawn of a New UnicornWild Rides Takes off - The Dawn of a New Unicorn
Wild Rides Takes off - The Dawn of a New Unicorn
Amazon Web Services
 
AWS re:Invent 2016 Recap: What Happened, What It Means
AWS re:Invent 2016 Recap: What Happened, What It MeansAWS re:Invent 2016 Recap: What Happened, What It Means
AWS re:Invent 2016 Recap: What Happened, What It Means
RightScale
 
Developing serverless applications with .NET on AWS
Developing serverless applications with .NET on AWSDeveloping serverless applications with .NET on AWS
Developing serverless applications with .NET on AWS
Woody Pewitt
 
Aws cost strategies
Aws cost strategiesAws cost strategies
Aws cost strategies
John Louis Garcia
 
Introduction To AWS & AWS Lambda
Introduction To AWS & AWS LambdaIntroduction To AWS & AWS Lambda
Introduction To AWS & AWS Lambda
An Nguyen
 
AWS March 2016 Webinar Series - Managed Database Services on Amazon Web Services
AWS March 2016 Webinar Series - Managed Database Services on Amazon Web ServicesAWS March 2016 Webinar Series - Managed Database Services on Amazon Web Services
AWS March 2016 Webinar Series - Managed Database Services on Amazon Web Services
Amazon Web Services
 
Migrating On-Premises Databases to Cloud - AWS PS Summit Canberra
Migrating On-Premises Databases to Cloud - AWS PS Summit CanberraMigrating On-Premises Databases to Cloud - AWS PS Summit Canberra
Migrating On-Premises Databases to Cloud - AWS PS Summit Canberra
Amazon Web Services
 
AWS re:Invent 2016: Running Lean Architectures: How to Optimize for Cost Effi...
AWS re:Invent 2016: Running Lean Architectures: How to Optimize for Cost Effi...AWS re:Invent 2016: Running Lean Architectures: How to Optimize for Cost Effi...
AWS re:Invent 2016: Running Lean Architectures: How to Optimize for Cost Effi...
Amazon Web Services
 
AWS Partner Webcast - Disaster Recovery: Implementing DR Across On-premises a...
AWS Partner Webcast - Disaster Recovery: Implementing DR Across On-premises a...AWS Partner Webcast - Disaster Recovery: Implementing DR Across On-premises a...
AWS Partner Webcast - Disaster Recovery: Implementing DR Across On-premises a...
Amazon Web Services
 
(SDD420) Amazon WorkSpaces: Advanced Topics and Deep Dive | AWS re:Invent 2014
(SDD420) Amazon WorkSpaces: Advanced Topics and Deep Dive | AWS re:Invent 2014(SDD420) Amazon WorkSpaces: Advanced Topics and Deep Dive | AWS re:Invent 2014
(SDD420) Amazon WorkSpaces: Advanced Topics and Deep Dive | AWS re:Invent 2014
Amazon Web Services
 

What's hot (20)

Big data and Analytics on AWS
Big data and Analytics on AWSBig data and Analytics on AWS
Big data and Analytics on AWS
 
Optimizing your cloud
Optimizing your cloudOptimizing your cloud
Optimizing your cloud
 
AWS Cost Optimization Strategy
AWS Cost Optimization StrategyAWS Cost Optimization Strategy
AWS Cost Optimization Strategy
 
2016 Utah Cloud Summit: AWS Lambda and API Gateway
2016 Utah Cloud Summit: AWS Lambda and API Gateway2016 Utah Cloud Summit: AWS Lambda and API Gateway
2016 Utah Cloud Summit: AWS Lambda and API Gateway
 
BDA403 The Visible Network: How Netflix Uses Kinesis Streams to Monitor Appli...
BDA403 The Visible Network: How Netflix Uses Kinesis Streams to Monitor Appli...BDA403 The Visible Network: How Netflix Uses Kinesis Streams to Monitor Appli...
BDA403 The Visible Network: How Netflix Uses Kinesis Streams to Monitor Appli...
 
Front End Orlando - AWS Lambda
Front End Orlando - AWS LambdaFront End Orlando - AWS Lambda
Front End Orlando - AWS Lambda
 
EC2 Pricing Model (deck 0307 of the InfiniteSkills AWS course at http://bit.l...
EC2 Pricing Model (deck 0307 of the InfiniteSkills AWS course at http://bit.l...EC2 Pricing Model (deck 0307 of the InfiniteSkills AWS course at http://bit.l...
EC2 Pricing Model (deck 0307 of the InfiniteSkills AWS course at http://bit.l...
 
Ingest Options on AWS
Ingest Options on AWSIngest Options on AWS
Ingest Options on AWS
 
"Production-ready Serverless Java Applications in 3 weeks" at AWS Community D...
"Production-ready Serverless Java Applications in 3 weeks" at AWS Community D..."Production-ready Serverless Java Applications in 3 weeks" at AWS Community D...
"Production-ready Serverless Java Applications in 3 weeks" at AWS Community D...
 
AWS Greengrass Technical Deep Dive - AWS Online Tech Talks
AWS Greengrass Technical Deep Dive - AWS Online Tech TalksAWS Greengrass Technical Deep Dive - AWS Online Tech Talks
AWS Greengrass Technical Deep Dive - AWS Online Tech Talks
 
Wild Rides Takes off - The Dawn of a New Unicorn
Wild Rides Takes off - The Dawn of a New UnicornWild Rides Takes off - The Dawn of a New Unicorn
Wild Rides Takes off - The Dawn of a New Unicorn
 
AWS re:Invent 2016 Recap: What Happened, What It Means
AWS re:Invent 2016 Recap: What Happened, What It MeansAWS re:Invent 2016 Recap: What Happened, What It Means
AWS re:Invent 2016 Recap: What Happened, What It Means
 
Developing serverless applications with .NET on AWS
Developing serverless applications with .NET on AWSDeveloping serverless applications with .NET on AWS
Developing serverless applications with .NET on AWS
 
Aws cost strategies
Aws cost strategiesAws cost strategies
Aws cost strategies
 
Introduction To AWS & AWS Lambda
Introduction To AWS & AWS LambdaIntroduction To AWS & AWS Lambda
Introduction To AWS & AWS Lambda
 
AWS March 2016 Webinar Series - Managed Database Services on Amazon Web Services
AWS March 2016 Webinar Series - Managed Database Services on Amazon Web ServicesAWS March 2016 Webinar Series - Managed Database Services on Amazon Web Services
AWS March 2016 Webinar Series - Managed Database Services on Amazon Web Services
 
Migrating On-Premises Databases to Cloud - AWS PS Summit Canberra
Migrating On-Premises Databases to Cloud - AWS PS Summit CanberraMigrating On-Premises Databases to Cloud - AWS PS Summit Canberra
Migrating On-Premises Databases to Cloud - AWS PS Summit Canberra
 
AWS re:Invent 2016: Running Lean Architectures: How to Optimize for Cost Effi...
AWS re:Invent 2016: Running Lean Architectures: How to Optimize for Cost Effi...AWS re:Invent 2016: Running Lean Architectures: How to Optimize for Cost Effi...
AWS re:Invent 2016: Running Lean Architectures: How to Optimize for Cost Effi...
 
AWS Partner Webcast - Disaster Recovery: Implementing DR Across On-premises a...
AWS Partner Webcast - Disaster Recovery: Implementing DR Across On-premises a...AWS Partner Webcast - Disaster Recovery: Implementing DR Across On-premises a...
AWS Partner Webcast - Disaster Recovery: Implementing DR Across On-premises a...
 
(SDD420) Amazon WorkSpaces: Advanced Topics and Deep Dive | AWS re:Invent 2014
(SDD420) Amazon WorkSpaces: Advanced Topics and Deep Dive | AWS re:Invent 2014(SDD420) Amazon WorkSpaces: Advanced Topics and Deep Dive | AWS re:Invent 2014
(SDD420) Amazon WorkSpaces: Advanced Topics and Deep Dive | AWS re:Invent 2014
 

Similar to Aws architecture problems while being fancy

AWSomeDay Zurich 2018 - How to go serverless
AWSomeDay Zurich 2018 - How to go serverless AWSomeDay Zurich 2018 - How to go serverless
AWSomeDay Zurich 2018 - How to go serverless
Roman Plessl
 
Your Basic Building Blocks - AWS Compute - AWS Summit Tel Aviv 2017
Your Basic Building Blocks - AWS Compute - AWS Summit Tel Aviv 2017Your Basic Building Blocks - AWS Compute - AWS Summit Tel Aviv 2017
Your Basic Building Blocks - AWS Compute - AWS Summit Tel Aviv 2017
Amazon Web Services
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
Amazon Web Services
 
Aws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon ElishaAws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon Elisha
Helen Rogers
 
Beyond Relational
Beyond RelationalBeyond Relational
Beyond Relational
Lynn Langit
 
AWS Serverless patterns & best-practices in AWS
AWS Serverless  patterns & best-practices in AWSAWS Serverless  patterns & best-practices in AWS
AWS Serverless patterns & best-practices in AWS
Dima Pasko
 
Building Serverless Web Applications - DevDay Austin 2017
Building Serverless Web Applications - DevDay Austin 2017Building Serverless Web Applications - DevDay Austin 2017
Building Serverless Web Applications - DevDay Austin 2017
Amazon Web Services
 
Building a Big Data & Analytics Platform using AWS
Building a Big Data & Analytics Platform using AWS Building a Big Data & Analytics Platform using AWS
Building a Big Data & Analytics Platform using AWS
Amazon Web Services
 
How to Migrate your Startup to AWS
How to Migrate your Startup to AWSHow to Migrate your Startup to AWS
How to Migrate your Startup to AWS
Amazon Web Services
 
How to move a mission critical system to 4 AWS regions in one year?
How to move a mission critical system to 4 AWS regions in one year?How to move a mission critical system to 4 AWS regions in one year?
How to move a mission critical system to 4 AWS regions in one year?
Wojciech Gawroński
 
Building Serverless Web Applications - DevDay Los Angeles 2017
Building Serverless Web Applications - DevDay Los Angeles 2017Building Serverless Web Applications - DevDay Los Angeles 2017
Building Serverless Web Applications - DevDay Los Angeles 2017
Amazon Web Services
 
The Next Big Thing: Serverless
The Next Big Thing: ServerlessThe Next Big Thing: Serverless
The Next Big Thing: Serverless
Doug Vanderweide
 
Introduction to EC2 (AWS)
Introduction to EC2 (AWS)Introduction to EC2 (AWS)
Introduction to EC2 (AWS)
NodeXperts
 
An introduction to Serverless
An introduction to ServerlessAn introduction to Serverless
An introduction to Serverless
Adrien Blind
 
Getting Started with AWS Lambda & Serverless Cloud
Getting Started with AWS Lambda & Serverless CloudGetting Started with AWS Lambda & Serverless Cloud
Getting Started with AWS Lambda & Serverless Cloud
Ian Massingham
 
Customer Sharing: Trend Micro - Analytic Engine - A common Big Data computati...
Customer Sharing: Trend Micro - Analytic Engine - A common Big Data computati...Customer Sharing: Trend Micro - Analytic Engine - A common Big Data computati...
Customer Sharing: Trend Micro - Analytic Engine - A common Big Data computati...
Amazon Web Services
 
analytic engine - a common big data computation service on the aws
analytic engine - a common big data computation service on the awsanalytic engine - a common big data computation service on the aws
analytic engine - a common big data computation service on the aws
Scott Miao
 
AWS Cloud cost optimization
AWS Cloud cost optimizationAWS Cloud cost optimization
AWS Cloud cost optimization
Yogesh Sharma
 
Amazon Elastic Map Reduce - Ian Meyers
Amazon Elastic Map Reduce - Ian MeyersAmazon Elastic Map Reduce - Ian Meyers
Amazon Elastic Map Reduce - Ian Meyers
huguk
 
Raleigh DevDay 2017: Build a serverless web application in one day workshop
Raleigh DevDay 2017: Build a serverless web application in one day workshopRaleigh DevDay 2017: Build a serverless web application in one day workshop
Raleigh DevDay 2017: Build a serverless web application in one day workshop
Amazon Web Services
 

Similar to Aws architecture problems while being fancy (20)

AWSomeDay Zurich 2018 - How to go serverless
AWSomeDay Zurich 2018 - How to go serverless AWSomeDay Zurich 2018 - How to go serverless
AWSomeDay Zurich 2018 - How to go serverless
 
Your Basic Building Blocks - AWS Compute - AWS Summit Tel Aviv 2017
Your Basic Building Blocks - AWS Compute - AWS Summit Tel Aviv 2017Your Basic Building Blocks - AWS Compute - AWS Summit Tel Aviv 2017
Your Basic Building Blocks - AWS Compute - AWS Summit Tel Aviv 2017
 
Getting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless CloudGetting Started with AWS Lambda and the Serverless Cloud
Getting Started with AWS Lambda and the Serverless Cloud
 
Aws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon ElishaAws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon Elisha
 
Beyond Relational
Beyond RelationalBeyond Relational
Beyond Relational
 
AWS Serverless patterns & best-practices in AWS
AWS Serverless  patterns & best-practices in AWSAWS Serverless  patterns & best-practices in AWS
AWS Serverless patterns & best-practices in AWS
 
Building Serverless Web Applications - DevDay Austin 2017
Building Serverless Web Applications - DevDay Austin 2017Building Serverless Web Applications - DevDay Austin 2017
Building Serverless Web Applications - DevDay Austin 2017
 
Building a Big Data & Analytics Platform using AWS
Building a Big Data & Analytics Platform using AWS Building a Big Data & Analytics Platform using AWS
Building a Big Data & Analytics Platform using AWS
 
How to Migrate your Startup to AWS
How to Migrate your Startup to AWSHow to Migrate your Startup to AWS
How to Migrate your Startup to AWS
 
How to move a mission critical system to 4 AWS regions in one year?
How to move a mission critical system to 4 AWS regions in one year?How to move a mission critical system to 4 AWS regions in one year?
How to move a mission critical system to 4 AWS regions in one year?
 
Building Serverless Web Applications - DevDay Los Angeles 2017
Building Serverless Web Applications - DevDay Los Angeles 2017Building Serverless Web Applications - DevDay Los Angeles 2017
Building Serverless Web Applications - DevDay Los Angeles 2017
 
The Next Big Thing: Serverless
The Next Big Thing: ServerlessThe Next Big Thing: Serverless
The Next Big Thing: Serverless
 
Introduction to EC2 (AWS)
Introduction to EC2 (AWS)Introduction to EC2 (AWS)
Introduction to EC2 (AWS)
 
An introduction to Serverless
An introduction to ServerlessAn introduction to Serverless
An introduction to Serverless
 
Getting Started with AWS Lambda & Serverless Cloud
Getting Started with AWS Lambda & Serverless CloudGetting Started with AWS Lambda & Serverless Cloud
Getting Started with AWS Lambda & Serverless Cloud
 
Customer Sharing: Trend Micro - Analytic Engine - A common Big Data computati...
Customer Sharing: Trend Micro - Analytic Engine - A common Big Data computati...Customer Sharing: Trend Micro - Analytic Engine - A common Big Data computati...
Customer Sharing: Trend Micro - Analytic Engine - A common Big Data computati...
 
analytic engine - a common big data computation service on the aws
analytic engine - a common big data computation service on the awsanalytic engine - a common big data computation service on the aws
analytic engine - a common big data computation service on the aws
 
AWS Cloud cost optimization
AWS Cloud cost optimizationAWS Cloud cost optimization
AWS Cloud cost optimization
 
Amazon Elastic Map Reduce - Ian Meyers
Amazon Elastic Map Reduce - Ian MeyersAmazon Elastic Map Reduce - Ian Meyers
Amazon Elastic Map Reduce - Ian Meyers
 
Raleigh DevDay 2017: Build a serverless web application in one day workshop
Raleigh DevDay 2017: Build a serverless web application in one day workshopRaleigh DevDay 2017: Build a serverless web application in one day workshop
Raleigh DevDay 2017: Build a serverless web application in one day workshop
 

Recently uploaded

怎么办理(lincoln学位证书)英国林肯大学毕业证文凭学位证书原版一模一样
怎么办理(lincoln学位证书)英国林肯大学毕业证文凭学位证书原版一模一样怎么办理(lincoln学位证书)英国林肯大学毕业证文凭学位证书原版一模一样
怎么办理(lincoln学位证书)英国林肯大学毕业证文凭学位证书原版一模一样
kekzed
 
Gamify it until you make it Improving Agile Development and Operations with ...
Gamify it until you make it  Improving Agile Development and Operations with ...Gamify it until you make it  Improving Agile Development and Operations with ...
Gamify it until you make it Improving Agile Development and Operations with ...
Ben Linders
 
The Intersection between Competition and Data Privacy – CAPEL – June 2024 OEC...
The Intersection between Competition and Data Privacy – CAPEL – June 2024 OEC...The Intersection between Competition and Data Privacy – CAPEL – June 2024 OEC...
The Intersection between Competition and Data Privacy – CAPEL – June 2024 OEC...
OECD Directorate for Financial and Enterprise Affairs
 
Using-Presentation-Software-to-the-Fullf.pptx
Using-Presentation-Software-to-the-Fullf.pptxUsing-Presentation-Software-to-the-Fullf.pptx
Using-Presentation-Software-to-the-Fullf.pptx
kainatfatyma9
 
The Intersection between Competition and Data Privacy – COLANGELO – June 2024...
The Intersection between Competition and Data Privacy – COLANGELO – June 2024...The Intersection between Competition and Data Privacy – COLANGELO – June 2024...
The Intersection between Competition and Data Privacy – COLANGELO – June 2024...
OECD Directorate for Financial and Enterprise Affairs
 
2023 Ukraine Crisis Media Center Financial Report
2023 Ukraine Crisis Media Center Financial Report2023 Ukraine Crisis Media Center Financial Report
2023 Ukraine Crisis Media Center Financial Report
UkraineCrisisMediaCenter
 
IEEE CIS Webinar Sustainable futures.pdf
IEEE CIS Webinar Sustainable futures.pdfIEEE CIS Webinar Sustainable futures.pdf
IEEE CIS Webinar Sustainable futures.pdf
Claudio Gallicchio
 
2 December UAE National Day - United Arab Emirates
2 December UAE National Day - United Arab Emirates2 December UAE National Day - United Arab Emirates
2 December UAE National Day - United Arab Emirates
UAE Ppt
 
一比一原版(unc毕业证书)美国北卡罗来纳大学教堂山分校毕业证如何办理
一比一原版(unc毕业证书)美国北卡罗来纳大学教堂山分校毕业证如何办理一比一原版(unc毕业证书)美国北卡罗来纳大学教堂山分校毕业证如何办理
一比一原版(unc毕业证书)美国北卡罗来纳大学教堂山分校毕业证如何办理
gfysze
 
Data Processing in PHP - PHPers 2024 Poznań
Data Processing in PHP - PHPers 2024 PoznańData Processing in PHP - PHPers 2024 Poznań
Data Processing in PHP - PHPers 2024 Poznań
Norbert Orzechowicz
 
Legislation And Regulations For Import, Manufacture,.pptx
Legislation And Regulations For Import, Manufacture,.pptxLegislation And Regulations For Import, Manufacture,.pptx
Legislation And Regulations For Import, Manufacture,.pptx
Charmi13
 
Bridging the visual gap between cultural heritage and digital scholarship
Bridging the visual gap between cultural heritage and digital scholarshipBridging the visual gap between cultural heritage and digital scholarship
Bridging the visual gap between cultural heritage and digital scholarship
Inesm9
 
2023 Ukraine Crisis Media Center Finance Balance
2023 Ukraine Crisis Media Center Finance Balance2023 Ukraine Crisis Media Center Finance Balance
2023 Ukraine Crisis Media Center Finance Balance
UkraineCrisisMediaCenter
 
Genesis chapter 3 Isaiah Scudder.pptx
Genesis    chapter 3 Isaiah Scudder.pptxGenesis    chapter 3 Isaiah Scudder.pptx
Genesis chapter 3 Isaiah Scudder.pptx
FamilyWorshipCenterD
 
The Intersection between Competition and Data Privacy – OECD – June 2024 OECD...
The Intersection between Competition and Data Privacy – OECD – June 2024 OECD...The Intersection between Competition and Data Privacy – OECD – June 2024 OECD...
The Intersection between Competition and Data Privacy – OECD – June 2024 OECD...
OECD Directorate for Financial and Enterprise Affairs
 
ACTIVE IMPLANTABLE MEDICAL DEVICE IN EUROPE
ACTIVE IMPLANTABLE MEDICAL DEVICE IN EUROPEACTIVE IMPLANTABLE MEDICAL DEVICE IN EUROPE
ACTIVE IMPLANTABLE MEDICAL DEVICE IN EUROPE
Charmi13
 
AWS User Group Torino 2024 #3 - 18/06/2024
AWS User Group Torino 2024 #3 - 18/06/2024AWS User Group Torino 2024 #3 - 18/06/2024
AWS User Group Torino 2024 #3 - 18/06/2024
Guido Maria Nebiolo
 
ServiceNow CIS-ITSM Exam Dumps & Questions [2024]
ServiceNow CIS-ITSM Exam Dumps & Questions [2024]ServiceNow CIS-ITSM Exam Dumps & Questions [2024]
ServiceNow CIS-ITSM Exam Dumps & Questions [2024]
SkillCertProExams
 
Proposal: The Ark Project and The BEEP Inc
Proposal: The Ark Project and The BEEP IncProposal: The Ark Project and The BEEP Inc
Proposal: The Ark Project and The BEEP Inc
Raheem Muhammad
 
The Intersection between Competition and Data Privacy – KEMP – June 2024 OECD...
The Intersection between Competition and Data Privacy – KEMP – June 2024 OECD...The Intersection between Competition and Data Privacy – KEMP – June 2024 OECD...
The Intersection between Competition and Data Privacy – KEMP – June 2024 OECD...
OECD Directorate for Financial and Enterprise Affairs
 

Recently uploaded (20)

怎么办理(lincoln学位证书)英国林肯大学毕业证文凭学位证书原版一模一样
怎么办理(lincoln学位证书)英国林肯大学毕业证文凭学位证书原版一模一样怎么办理(lincoln学位证书)英国林肯大学毕业证文凭学位证书原版一模一样
怎么办理(lincoln学位证书)英国林肯大学毕业证文凭学位证书原版一模一样
 
Gamify it until you make it Improving Agile Development and Operations with ...
Gamify it until you make it  Improving Agile Development and Operations with ...Gamify it until you make it  Improving Agile Development and Operations with ...
Gamify it until you make it Improving Agile Development and Operations with ...
 
The Intersection between Competition and Data Privacy – CAPEL – June 2024 OEC...
The Intersection between Competition and Data Privacy – CAPEL – June 2024 OEC...The Intersection between Competition and Data Privacy – CAPEL – June 2024 OEC...
The Intersection between Competition and Data Privacy – CAPEL – June 2024 OEC...
 
Using-Presentation-Software-to-the-Fullf.pptx
Using-Presentation-Software-to-the-Fullf.pptxUsing-Presentation-Software-to-the-Fullf.pptx
Using-Presentation-Software-to-the-Fullf.pptx
 
The Intersection between Competition and Data Privacy – COLANGELO – June 2024...
The Intersection between Competition and Data Privacy – COLANGELO – June 2024...The Intersection between Competition and Data Privacy – COLANGELO – June 2024...
The Intersection between Competition and Data Privacy – COLANGELO – June 2024...
 
2023 Ukraine Crisis Media Center Financial Report
2023 Ukraine Crisis Media Center Financial Report2023 Ukraine Crisis Media Center Financial Report
2023 Ukraine Crisis Media Center Financial Report
 
IEEE CIS Webinar Sustainable futures.pdf
IEEE CIS Webinar Sustainable futures.pdfIEEE CIS Webinar Sustainable futures.pdf
IEEE CIS Webinar Sustainable futures.pdf
 
2 December UAE National Day - United Arab Emirates
2 December UAE National Day - United Arab Emirates2 December UAE National Day - United Arab Emirates
2 December UAE National Day - United Arab Emirates
 
一比一原版(unc毕业证书)美国北卡罗来纳大学教堂山分校毕业证如何办理
一比一原版(unc毕业证书)美国北卡罗来纳大学教堂山分校毕业证如何办理一比一原版(unc毕业证书)美国北卡罗来纳大学教堂山分校毕业证如何办理
一比一原版(unc毕业证书)美国北卡罗来纳大学教堂山分校毕业证如何办理
 
Data Processing in PHP - PHPers 2024 Poznań
Data Processing in PHP - PHPers 2024 PoznańData Processing in PHP - PHPers 2024 Poznań
Data Processing in PHP - PHPers 2024 Poznań
 
Legislation And Regulations For Import, Manufacture,.pptx
Legislation And Regulations For Import, Manufacture,.pptxLegislation And Regulations For Import, Manufacture,.pptx
Legislation And Regulations For Import, Manufacture,.pptx
 
Bridging the visual gap between cultural heritage and digital scholarship
Bridging the visual gap between cultural heritage and digital scholarshipBridging the visual gap between cultural heritage and digital scholarship
Bridging the visual gap between cultural heritage and digital scholarship
 
2023 Ukraine Crisis Media Center Finance Balance
2023 Ukraine Crisis Media Center Finance Balance2023 Ukraine Crisis Media Center Finance Balance
2023 Ukraine Crisis Media Center Finance Balance
 
Genesis chapter 3 Isaiah Scudder.pptx
Genesis    chapter 3 Isaiah Scudder.pptxGenesis    chapter 3 Isaiah Scudder.pptx
Genesis chapter 3 Isaiah Scudder.pptx
 
The Intersection between Competition and Data Privacy – OECD – June 2024 OECD...
The Intersection between Competition and Data Privacy – OECD – June 2024 OECD...The Intersection between Competition and Data Privacy – OECD – June 2024 OECD...
The Intersection between Competition and Data Privacy – OECD – June 2024 OECD...
 
ACTIVE IMPLANTABLE MEDICAL DEVICE IN EUROPE
ACTIVE IMPLANTABLE MEDICAL DEVICE IN EUROPEACTIVE IMPLANTABLE MEDICAL DEVICE IN EUROPE
ACTIVE IMPLANTABLE MEDICAL DEVICE IN EUROPE
 
AWS User Group Torino 2024 #3 - 18/06/2024
AWS User Group Torino 2024 #3 - 18/06/2024AWS User Group Torino 2024 #3 - 18/06/2024
AWS User Group Torino 2024 #3 - 18/06/2024
 
ServiceNow CIS-ITSM Exam Dumps & Questions [2024]
ServiceNow CIS-ITSM Exam Dumps & Questions [2024]ServiceNow CIS-ITSM Exam Dumps & Questions [2024]
ServiceNow CIS-ITSM Exam Dumps & Questions [2024]
 
Proposal: The Ark Project and The BEEP Inc
Proposal: The Ark Project and The BEEP IncProposal: The Ark Project and The BEEP Inc
Proposal: The Ark Project and The BEEP Inc
 
The Intersection between Competition and Data Privacy – KEMP – June 2024 OECD...
The Intersection between Competition and Data Privacy – KEMP – June 2024 OECD...The Intersection between Competition and Data Privacy – KEMP – June 2024 OECD...
The Intersection between Competition and Data Privacy – KEMP – June 2024 OECD...
 

Aws architecture problems while being fancy

  • 2. About me Goran Kopevski Tech Lead @ Global Savings Group
  • 3. Agenda ▰ Benefits of using AWS Cloud ▰ Fancy selling point ▰ Common design patterns and problems
  • 4. What is AWS Marketing eyes: Amazon Web Services (AWS) is a secure cloud services platform, offering compute power, database storage, content delivery and other functionality to help businesses scale and grow. Engineer eyes: ▰ Managed services ▰ Easier way for development and deployment ▰ New architecture horizonts
  • 5. But why AWS or any other cloud? Four fundamental principles for cloud: ▰ Fault tolerant systems ▰ Scalability ▰ Elasticity ▰ Cost effective
  • 6. What kind of services they are offering
  • 7. The good part ▰ Polished services ▻ EC2 ▻ S3 ▻ EB ▻ CF ▻ AWS RDS ▻ …. ▰ If a service gains popularity it gets big investment from AWS
  • 8. Challenges ▰ For the sake of having a “service”, let's roll it out ▰ If service is popular -> invest, ▻ if not -> ignore it :) ▰ Stubbornness and simply ignoring requests ▰ Forcing you use their vision about cloud services ▻ Workarounds for other scenarios
  • 9. The fancy smart wording ▰ “I am experienced in using Elastic mapReduce for distributed cloud processing of large data sets across clusters of computers using simple programming models” ▰ “I am using DynamoDB which a fast and flexible NoSQL database service for all applications that need consistent, single-digit millisecond latency at any scale”
  • 10. The real wording ▰ “I am experienced in using Elastic mapReduce for distributed cloud processing of large data sets across clusters of computers using simple programming models” ▰ In normal (real) wording “I am using Hadoop” ▰ “I am using DynamoDB which a fast and flexible NoSQL database service for all applications that need consistent, single-digit millisecond latency at any scale” ▰ After some experience “I am using simple key value db”
  • 11. AWS API Gateway: The good parts ▰ API Caching ▰ API limiter ▻ Example: max 1000 requests to specific endpoint ▰ Support for swagger definition of endpoints ▰ Good security
  • 12. AWS API Gateway: Challenges ▰ Multipart requests ▻ Encode image in base64 and send it like that ▰ 10 MB limit payload ▻ Use streaming request ▰ Creation of endpoint ▻ Swagger custom parameters
  • 13. Regions problem: The good parts ▰ Regions on every continent ▻ Closer to your clients ▰ Multiple availability zones per region ▰ Main power of the AWS infrastructure ▻ Prerequisite for fault tolerant systems
  • 14. Regions problem: The challenges ▰ Some services available but not all ▻ First N.Virginia and Ireland then move it to other regions ▰ Real world scenarios: ▻ DynamoDB caching ▻ DynamoDB backup ▻ CodePipeline ▻ AWS Fargate ▻ … ▰ https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/
  • 15. Dynamo: The good parts ▰ Fast write ▰ Fast read ▻ Under some conditions ▰ Autoscaling is managed by AWS ▰ You pay for throughput ▻ number of request ▻ speed for writing/reading ▻ You can have 100000000…. TB of data
  • 16. Dynamo: The challenging part! ▰ For every simple query you need to write a lot of code instead of “1 liner” ▰ SELECT * FROM X WHERE Status=’Published’ AND date>:date:
  • 17. Dynamo: Even more challenges ▰ If you want to query by other parameters (not primary key), you need indexes ▻ Dynamo supports up to 5 indexes :) ▰ Versioning does not work with batch write ▻ You need to handle it yourself ▻ https://github.com/bchew/dynamodump ▰ https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html (racism link)
  • 18. Dynamo problems with backup using AWS EMR ▰ Solution provided by AWS was to use new AWS service (AWS EMR, (Hadoop)) ▻ https://aws.amazon.com/blogs/aws/aws-howto-using-amazon-elastic- mapreduce-with-dynamodb/ ▰ The bad part is it was not working consistently ▻ In a test scenario we restored 80% of the data
  • 19. Dynamo solution for backup From November 2017 AWS started to support dynamo table backup as a managed service
  • 20.
  • 21. Cloudformation templates ▰ Code as infrastructure ▰ Love hate relationship service ▰ If you use it properly and understand you have incredibly good tool ▻ If not then you will hate it ▰ Interesting limitation if you don’t pay much attention ▻ 200 resources max per template
  • 22. Lambda λ Pros: ▰ FaaS ▻ Pay per execution ▰ No scaling problems ▰ Operational management ▰ Faster innovation Cons: ▰ No control over environment ▰ Lack of operational tools ▰ Architectural complexity
  • 23. AWS SQS ▰ Amazon Simple Queue Service (SQS) is a fully managed message queuing service that makes it easy to decouple and scale microservices, distributed systems, and serverless applications. ▰ Nearly unlimited number of transactions per second ▻ 120,000 inflight messages in a queue ▰ Only 1 bad word => Limits: ▻ Activemq 8Gb ▻ RabitMQ 2Gb ▻ AWS SQS 256KB ▰ https://stackshare.io/stackups/amazon-sqs-vs-kafka-vs-rabbitmq
  • 24. Cloudwatch: The good parts ▰ Out of the box integration with AWS ▻ SNS/SQS ▻ Logging ▻ Lambda ▻ ... ▰ Monitoring tool ▰ Supports for multiple type of notifications
  • 27. CodePipeline: The good parts ▰ Super easy setup! ▰ Good integration in AWS ecosystem
  • 28. CodePipeline: The challenges ▰ Integration with 3rd party goes with custom lambda ▻ Lambda for sonar (community) ▻ Lambda for github (community) ▰ No parameterized builds ▰ Code Pipeline Monitoring
  • 29. The custom lambda problem ▰ If you need to tune the system to the way you want to work in AWS system easiest way is with Custom Lambda! ▰ Example: ▻ Integration of Sonar with CodePipeline ▻ Integration of Github builds in CodePipeline ▻ Sending logs from Cloudwatch to ElasticSearch https://forums.aws.amazon.com/thread.jspa?threadID=227681
  • 30. AWS ES: The good parts ▰ Managed service ▰ Easy setup ▰ Integration with AWS ecosystem ▻ IAM Roles ▻ Kinesis ▻ EC2 instances
  • 31. AWS ES: Challenges ▰ Transport protocol is disabled ▰ Only HTTP requests ▻ https://forums.aws.amazon.com/thread.jspa?messageID=784997 ▰ Sometimes returns 500 :) ▰ Out of the box automatic autoscaling is not supported
  • 32. Conclusion ▰ Consult/Research before choosing specific AWS service ▰ Managing whole infrastructure is easy with AWS ▰ If you don’t have very specific requirements go with AWS
  • 33. THANKS! Any questions? You can find me at gkopevski@gmail.com

Editor's Notes

  1. Few words about me Tech lead at Intertec, part of GSG, Responsible for the architecture and well being of the Travel domains
  2. All of the things i am going to say today are real scenarios that we encountered while using AWS. To mention explicitly this is not hating presentation but rather realistic objective summary about pros/cons of some of the AWS services
  3. Now what is the good part. The thing I have concluded while working with AWS is
  4. Big portfolio And if you are not able to find better workaround you are going to use their
  5. I promised that i will be fancy so lets go: https://aws.amazon.com/emr/
  6. I promised that i will be fancy so lets go: https://aws.amazon.com/emr/ The point here is some devops/architect comes and start ...
  7. First lets sepak about the service itself: Good (few good words)
  8. First lets sepak about the service itself: Good (few good words)
  9. Cor
  10. https://www.nordcloud.com/tech-blog/aws-dynamodb-design-considerations
  11. https://www.nordcloud.com/tech-blog/aws-dynamodb-design-considerations
  12. https://www.nordcloud.com/tech-blog/aws-dynamodb-design-considerations
  13. https://cloudonaut.io/cloudformation-vs-terraform/
  14. https://www.quora.com/What-is-the-advantages-and-disadvantages-of-using-AWS-Lambda-with-and-without-Serverless
  15. This is really intresting example of not thinking out of the box.
  16. https://aws.amazon.com/cloudwatch/
  17. Filebeat is an open source file harvester, mostly used to fetch logs files and feed them into logstash. Logstash is a log pipeline tool that accepts inputs from various sources, executes different transformations, and exports the data to various targets. Elasticsearch is a distributed, RESTful search and analytics engine based on the Lucene search engine. Kibana is a visualization layer that works on top of Elasticsearch
  18. If you go under the hood and inspect some of the lambdas you will notice https://aws.amazon.com/kinesis/data-firehose/