SlideShare a Scribd company logo
1 of 64
Download to read offline
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
How Fannie Mae Processes over a Quarter
Million Loans per Day with Amazon S3
W P S 3 0 5
Harsha Nippani
Solutions Architect
Amazon
Oliver Mathias
Senior Architect
Fannie Mae
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
About Us
Oliver Mathias
• Senior Architect, Fannie Mae
• Enthusiastic about advanced
technology
• 𝐹516+ years solving complex
technical problems
Harsha Nippani
• Solutions Architect, AWS
• Help customers deploy
successfully on AWS
• 18+ years in IT systems
engineering and Ops
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What You’ll Get Out of this Session
• Amazon Simple Storage Session (Amazon S3)
best practices to build low latency apps
• Front row seat to our journey at Fannie Mae
• Practical takeaways you can try at home
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
The AWS Storage Portfolio
Data Transfer
3rd Party
Connectors
S3 Transfer
Acceleration
File
Amazon EFS
Object
Amazon GlacierAmazon S3
Block
Amazon EBS
(persistent)
Amazon EC2
Instance Store
(ephemeral)
AWS
Snow Family
AWS Storage
Gateway
AWS Direct
Connect
Amazon
Kinesis
EFS
File Sync
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon S3 by the Numbers
44 Availability Zones
(16 more coming in 2018)
16 Regions
(5 more coming
in 2018)
Trillions of
objects
Millions of
requests per
second
One of first
three AWS
services (2006)
99.999999999
% Durability
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Benefits of Amazon S3 & Glacier
Durable, Available, & Scalable Security & Compliance
Flexible Management Ecosystem
Low-Cost
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon S3 Architecture
Internet
End
User
PUT
GET
DELETE
Load
Balancers
Metadata
Storage
API Servers
Blob Storage
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon S3 Security, Encryption, & Compliance
Security
• AWS Identity Access
and Management (IAM)
and bucket policies
• Access control lists
• Audit logging with
AWS CloudTrail &
alerts with Amazon
CloudWatch
• Secure AWS
CloudFormation
templates
• Amazon Macie
• Amazon S3 Console
permission checks
Encryption
• Encryption in transit with
TLS
• SSE-S3 – Amazon S3
manages data & keys
• SSE-C – Customer
managed keys
• SSE-KMS – Master keys in
AWS Key Management
Service (AWS KMS)
• CSE – 100% Customer
managed
• Default bucket encryption
• Encryption status in
inventory
Compliance
• PCI-DSS
• HIPAA/HITECH
• FedRAMP
• FISMA
• EU Data
Protection
Directive
One of the broadest set of tools in the industry
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Storage Customers
Enterprise Partner Integration (Storage)
Backup and Restore Primary Storage
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
High Request Rates
• S3 automatically scales to high request/sec (RPS) rates
• 3,500 RPS for PUT/POST/DELETE (Per Bucket Prefix)
• 5,500 RPS for GETS (Per Bucket Prefix)
• Add prefixes to increase read and write performance exponentially
• SSE-KMS encryption
• 5,500 – 10,000 RPS for KMS Encrypt/Decrypt actions
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Using a Three or Four Character Hash (Entropy)
examplebucket/232a-2017-26-05-15-00-00/cust1234234/photo1.jpg
examplebucket/7b54-2017-26-05-15-00-00/cust3857422/photo2.jpg
examplebucket/921c-2017-26-05-15-00-00/cust1248473/photo2.jpg
examplebucket/animations/232a-2017-26-05-15-00-00/cust1234234/animation1.obj
examplebucket/videos/ba65-2017-26-05-15-00-00/cust8474937/video2.mpg
examplebucket/photos/8761-2017-26-05-15-00-00/cust1248473/photo3.jpg
A bit more LIST friendly:
Random hash should come before patterns such as dates and sequential IDs
Always first ensure that your application can accommodate
Due to recent Amazon S3 performance enhancements, most customers
no longer need to worry about introducing entropy in key names
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Parallelizing GETs
GET /example-object HTTP/1.1
Host: example-bucket.s3.amazonaws.com
x-amz-date: Fri, 28 Jan 2016 21:32:02 GMT
Range: bytes=0-9
Authorization: AWS
AKIAIOSFODNN7EXAMPLE:Yxg83MZaEgh3OZ3l0rLo5RTX11o=
For large objects, use range-based GETs - align your get ranges with your parts
For content distribution and edge caching, enable Amazon CloudFront
• Caches objects from S3 at the edge
• Low latency data transfer to end user
• Multiple endpoints globally
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
• Multi part upload for large objects
• Increase aggregate throughput
by parallelizing PUTs on high-
bandwidth networks
• Move the bottleneck to the
network, where it belongs
• Increase resiliency to network
errors; fewer large restarts on
error-prone networks
Parallelizing PUTs
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Key Amazon S3 best practices – Performance
Faster upload over long
distances with S3 Transfer
Acceleration
Faster upload for large objects
with S3 multipart upload
Optimize GET performance with
Range GET and Amazon
CloudFront
SQL Query on S3 with Amazon
Athena
Distribute key name for high
TPS workload
TCP Window Scaling for long, fat
networks
TCP SACK for fast, lossy
connections like mobile
How do you successfully modernize your
important customer’s highly visible, high
throughput customer-facing application?
And live to talk about it?
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon S3
Store any file, any size, any volume
For any amount of time
With stellar durability
Fast, reliable access to data
All for a cost that does not break the bank?
And predictable scalability
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“Usual” List
Static web site hosting
File sync and storage solutions
Image, video, & multimedia sharing
Data store for big data workloads
Data lake & AI storage
Social web and SaaS use cases
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
“Unconventional” Thinking
High frequency requests
Blocking transactions
Quick response times
Guaranteed delivery
Atomicity and consistency
Amazon S3 as blazing fast storage system for high throughput transactional apps?
Age-old solutioning
Traditional solution
 Build out DC
 Upfront high
CapEx
Costly, unmaintainable, and inflexible.
Upgrade treadmill
Cloud 1.0 strategy
Cloud 1.0 solution
 Lift and shift
 Custom cloud
storage
Slightly better, cloud-enabled
solution. Checks off “Migrate to the
cloud”
!
Cloud 2.0 Thinking : Get a little innovative, let’s see how Fannie Mae did it!
 High Complexity
 Peg to peak capacity
 Poor resiliency
 Peg to peak storage
capacity
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Fannie Mae is at the Heart
of the Housing Industry
Investors
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Fannie Mae, America’s Most Valued Housing Partner
1 in 3Homes in the country are
financed by Fannie Mae
$570 BMortgage Financing in 2017
1.2M 1 M 7 7 0 K
New Homes Refinancing Multifamily Units
76%Of Americans seeking a first
lien mortgage chose
30-Year fixed rate mortgage
In 2017
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Really Simple View of Loan Processing
Three
very important goals
Millisecond responses
Near zero downtime
Near zero data loss
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Key Architecture Challenges
Maximizing performance, availability
and durability all at the same time
Incredibly low latency
Billions of objects/year
Work with current platform
Reduce Operating Expenses(OpEx)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Create Guardrails Early
Managed
Services,
Cloud as
Platform
Target
DIY On
premises
Infrastructure
Degree of Infrastructure Control
Cloud
Native,
AWS
Native
Target
Distributed
patterns,
custom
built
Importance of Native Solutions
All
Dependent
Services
on Cloud
Target
Cloud as
extended
Data Center
Degree of Chattiness
Share
nothing
Share
everything
Degree of Service Dependence & Autonomy
Target
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
1: 400
Load
factor
Incredibly steep
ramp
Object PUTs/GETs over one week
Mon Tue Wed Thu Fri
Process, rinse, and repeat. Predictable, steep daily peaks
Just Another Week
Incredibly steep ramp
800/1600+ TPS at peak volume
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Simplified Architecture View
API servers Backend
Client
applications
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Initial Observations – GET Latency
Amazon S3 read file (GETs)
goes as high as 1 sec
800 TPS
<100 KB file size
250
Best practices, key first steps
Second phase, shaving off
milliseconds
Key architecture challenges
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Standard Best Practices
+ Entropy (randomness)
+ Parallelizing PUTs &
GETs
+ For troubleshooting use
Request ID, S3 Extended
Request ID & Host ID
+ Externalizing markers
+ RDS as an indexing
mechanism for
markers
try {
ClientConfiguration configuration = new ClientConfiguration();
configuration.setMaxConnections(….);
configuration.setRetryPolicy(…);
configuration.setClientExecutionTimeout(….);
AmazonS3 s3Client = AmazonS3ClientBuilder.defaultClient();
S3Object object = s3Client.getObject(new GetObjectRequest(….);
} catch (ClientExecutionTimeoutException ce)
log.error(….);
throw ce;
}
// the caller of this method, may retry to get the object
successfully
Pay attention to client
execution timeout
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Working Around Amazon S3 Eventual Consistency
Version mismatch Update only one object GET before PUT
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Consistently reproducible response time spikes every 15 min
Unpredictable, could add several seconds to customer response times
PUT Latency
Second phase, shaving off
milliseconds
Best practices, key first steps
Third phase, pushing the
limits, literally. Improving
resiliency
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Caching In
read first
read on cache miss
write always
write always
Compensation for write
failures
Uncoupling Amazon S3 stores to improve PUT latency
Needs compensation to ensure continued high durability
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Cached Reads
Saves 100-150ms per transaction
Over 200,000 seconds of processing time/latency saved every day
Get Borrower
Package id 100
1
2
“100” not in cache
Get (a1, b2, c1)
Select Object id, version
id from Package
where borrower=‘John”
and Package id =100
push(“100”, serialized package)
Add package to cache on first read
3
GET Thread Pool
GET (“a1”)
GET (“b2”)
GET (”c1”)
4
5
Get(“100”)
Get Borrower
Package id 100
1
2
3
Select Object id, version
id from Package
where borrower=‘John”
and Package id =100
Read from cache for subsequent requests
4
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Uncoupling Writes
Cache writes are blazing fast, saves 250-300ms per transaction
Over 400,000 seconds of processing time/latency saved every day
Get Borrower
Package id 100
1
2
2
Async write to Amazon S3
Uncoupling transactions with compensation for failures
PUT Thread Pool
PUT (“a1”)
PUT (“b2”)
PUT (”c1”)
4
Sync write to Cache
ADD (“Failed_100-c1, c1)
PUT (“c1”)
Insert into Package object
id=‘a1’, version id =‘v1’
Where package id =‘100’
3
5
6
7 8
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Encrypting Data at Rest
Switching to CSE can save 15-25ms per transaction
Over 100,000 seconds of processing time/latency saved every day
Get Data
Key
Local CMM
Data key cache
SDK
Encrypt
PUT
1
2
3
Get Data
Key
Local CMM
Data key cache
SDK
Decrypt
2
3
GET
1
 SSE-KMS provides many
operational advantages, so you
might want to stick to it
 AWS KMS observed availability
is pretty high, 99.999%
 For high variable workloads
from 1000s to millions, SSE-S3
might be a better fit
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What’s our percentile?
Goal : Delivering Incredibly low latency - 99.9% within 200-300
What’s our percentile?
Goal : Delivering Incredibly low latency - 99% within 200-300ms
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Significant reduction in
Improve Store response
time by over 100% with
uncoupled cache
< 300ms PUT latency for
97% of transactions (not quite,
but not relevant due to uncoupling)
< 300ms GET latency for
97% of transactions
0.1
0.2
Optimized Response Times
Second phase, shaving off
milliseconds
Third phase, pushing the limits,
literally. Improving resiliency
More key challenges
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Slightly Less Simple View of the Architecture
API Servers BackendClients
Markers
Amazon S3
Cache Amazon
CloudWatch
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Retries for Occasional GET Latency Spikes
Distributed nature of Amazon S3 = some GETs take over several seconds
Retry resolves time outs, may take 2-3 attempts
GET
1
3
5
5 Attempts
GET
GET
2
4
Time out in 2s
Time out in 2s
Time out in 2s
Time out in 2s
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Rightsizing Instances
0 10 20 30 40 50 60 70 80 90 100
ResponseTimes
Percentile
m4.4xlarge (x10) Fleet
0 10 20 30 40 50 60 70 80 90 100
ResponseTimes
Percentile
m4.10xlarge (x4) Fleet
Smaller instances have similar, may be even better performance
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What’s our percentile?
Goal : Delivering Incredibly low latency - 99.9% within 200-300
What’s our percentile?
Goal : Delivering incredibly low latency - 99% within 200-300ms
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Results
100
200
99% of stores and reads within 275 milliseconds
50
150
250
100
200
50
150
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
More Key Challenges
High(er) availability
Region failure immunity
Minute scale recovery point
objective (RPO) & recovery
time objective (RTO)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Achieving Resiliency
Assume everything in the app could fail
Dependencies could fail
Network & connectivity could fail
Availability Zones and Regions could fail
Assume everything will fail all the time
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
App & Dependent Service Resiliency, Briefly
DEFENSIVE CODING
SCRIPT, CODE AUTOMATION
Application
resiliency
Dependent
service
resiliency
Operational
& network
resiliency
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Resiliency in a Region
Availability Zone 1 Availability Zone 2 Availability Zone 3
App
90%
99%99%
99%
App Availability = 90%
App
90%
99%99%
99%
App Availability with Redundancy = ~ 99%+
Dark
Capacity
30
%
AZ 1 AZ 2 AZ 3
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Multi-region Options
Pilot light Active / Standby Active / Active
Region 1 Region 2 Region 1 Region 2 Region 1 Region 2
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
RPO vs. Cost & Complexity
360 90 45 15 0
RPO vs Cost & Complexity
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Typical Multi-region Options
All native Custom DB Custom Amazon S3 Custom DB &
Custom Amazon S3
Native
Active / Active
Native
Active / Active
Native
Active / Active
Native
Active / Active
Native
Active / Standby
Custom
Active / Standby
Native
Active / Standby
Custom
Active / Active
Native
Active / Standby
Native
Active / Standby
Custom
Active / Active
Custom
Active / Active
High Medium Low Very Low
Sync
Sync
None Network & lag dependent None Slowest due to sync n/w & lag
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Our Simple High Availability Plan
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Uncoupled Multi-Region Writes
Write to both regions, build redundant compensation for failures
Get Borrower
Package id 100
1
2
2
Async write to Amazon S3
PUT thread pool
US East 2
4
Sync write to Cache
Insert into Package object
id=‘a1’, version =‘v1’
Where package id =‘100’
3
6
7 8
PUT (“b2)
5
PUT (“b2)
5
ADD
(“Failed_both_regions_10
0-b2, b2)
8
7
9Insert into region_failures
id=100, object=b1, region=“1”
US East 1
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Multi-region Reads
Eliminates sporadic S3 latency spikes, region failure immunity
Get(“100”)
Get Borrower
Package id 100
1
2
3 “100” not in cache
Get (a1, b2, c1)
Select Object id, version
id from Package
where borrower=‘John”
and Package id =100
push(“100”, serialized package)
4
GET thread pool
GET (“b2”)
4
5
US East 2
US East 1
Read both regions simultaneouslyGET (“b2”)
Subsequent reads are from cache
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Key Takeaways
+ 1000’s of TPS is possible
+ Parallelize GETs & PUTS, add retries
+ Last 1% will take significant effort
+ SSE KMS good for almost every use
case, < 20ms overhead
+ Remember: Bigger instances are not
always better !
+ Objects and metadata can’t stand
each other
+ Cache in for predictable low latency
+ 4-9s+, write and read from both
regions
Be a little unconventional with Amazon S3, serious benefits are in store
99.9% of transactions < 300 milliseconds
Better availability Better TCO
Thank you!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Oliver Mathias
Oliver_mathias@fanniemae.com
Harsha Nippani
nippanih@amazon.com
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.

More Related Content

What's hot

AWS IoT: servizi costruiti per migliorare le performance di business
AWS IoT: servizi costruiti per migliorare le performance di businessAWS IoT: servizi costruiti per migliorare le performance di business
AWS IoT: servizi costruiti per migliorare le performance di businessAmazon Web Services
 
Fraud Prevention and Detection on AWS
Fraud Prevention and Detection on AWSFraud Prevention and Detection on AWS
Fraud Prevention and Detection on AWSAmazon Web Services
 
High Performance Computing Grid on AWS
High Performance Computing Grid on AWSHigh Performance Computing Grid on AWS
High Performance Computing Grid on AWSAmazon Web Services
 
Creazione del business case per l'adozione del cloud nella tua azienda
Creazione del business case per l'adozione del cloud nella tua aziendaCreazione del business case per l'adozione del cloud nella tua azienda
Creazione del business case per l'adozione del cloud nella tua aziendaAmazon Web Services
 
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)Amazon Web Services
 
Artificial Intelligence nella realtà di oggi: come utilizzarla al meglio
Artificial Intelligence nella realtà di oggi: come utilizzarla al meglioArtificial Intelligence nella realtà di oggi: come utilizzarla al meglio
Artificial Intelligence nella realtà di oggi: come utilizzarla al meglioAmazon Web Services
 
AWS Webinar Series - Innovating the Customer Experience with Cloud and AI
AWS Webinar Series - Innovating the Customer Experience with Cloud and AIAWS Webinar Series - Innovating the Customer Experience with Cloud and AI
AWS Webinar Series - Innovating the Customer Experience with Cloud and AIAmazon Web Services
 
Build Smarter Enterprise Apps with AI, AR & VR on AWS
Build Smarter Enterprise Apps with AI, AR & VR on AWSBuild Smarter Enterprise Apps with AI, AR & VR on AWS
Build Smarter Enterprise Apps with AI, AR & VR on AWSAmazon Web Services
 
BI & Analytics - A Datalake on AWS
BI & Analytics - A Datalake on AWSBI & Analytics - A Datalake on AWS
BI & Analytics - A Datalake on AWSAmazon Web Services
 
Amazon Cloud Directory Deep Dive (DAT364) - AWS re:Invent 2018
Amazon Cloud Directory Deep Dive (DAT364) - AWS re:Invent 2018Amazon Cloud Directory Deep Dive (DAT364) - AWS re:Invent 2018
Amazon Cloud Directory Deep Dive (DAT364) - AWS re:Invent 2018Amazon Web Services
 
Come estendere gli ambienti VMware sul Cloud AWS
Come estendere gli ambienti VMware sul Cloud AWSCome estendere gli ambienti VMware sul Cloud AWS
Come estendere gli ambienti VMware sul Cloud AWSAmazon Web Services
 
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...Leadership Session: Using AWS End User Computing Services for Your Modern Wor...
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...Amazon Web Services
 
Leadership Session: Cloud Adoption and the Future of Financial Services (FSV2...
Leadership Session: Cloud Adoption and the Future of Financial Services (FSV2...Leadership Session: Cloud Adoption and the Future of Financial Services (FSV2...
Leadership Session: Cloud Adoption and the Future of Financial Services (FSV2...Amazon Web Services
 
BDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMaker
BDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMakerBDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMaker
BDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMakerAmazon Web Services
 
Database Freedom. Database migration approaches to get to the Cloud - Marcus ...
Database Freedom. Database migration approaches to get to the Cloud - Marcus ...Database Freedom. Database migration approaches to get to the Cloud - Marcus ...
Database Freedom. Database migration approaches to get to the Cloud - Marcus ...Amazon Web Services
 
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...Amazon Web Services
 
Internet of Things e Machine Learning: i principali casi d'uso
Internet of Things e Machine Learning: i principali casi d'usoInternet of Things e Machine Learning: i principali casi d'uso
Internet of Things e Machine Learning: i principali casi d'usoAmazon Web Services
 
Introducing the New Features of AWS Greengrass (IOT365) - AWS re:Invent 2018
Introducing the New Features of AWS Greengrass (IOT365) - AWS re:Invent 2018Introducing the New Features of AWS Greengrass (IOT365) - AWS re:Invent 2018
Introducing the New Features of AWS Greengrass (IOT365) - AWS re:Invent 2018Amazon Web Services
 
Effectively Engage Millions of Users in Seconds (MOB321-R1) - AWS re:Invent 2018
Effectively Engage Millions of Users in Seconds (MOB321-R1) - AWS re:Invent 2018Effectively Engage Millions of Users in Seconds (MOB321-R1) - AWS re:Invent 2018
Effectively Engage Millions of Users in Seconds (MOB321-R1) - AWS re:Invent 2018Amazon Web Services
 

What's hot (20)

AWS IoT: servizi costruiti per migliorare le performance di business
AWS IoT: servizi costruiti per migliorare le performance di businessAWS IoT: servizi costruiti per migliorare le performance di business
AWS IoT: servizi costruiti per migliorare le performance di business
 
Fraud Prevention and Detection on AWS
Fraud Prevention and Detection on AWSFraud Prevention and Detection on AWS
Fraud Prevention and Detection on AWS
 
High Performance Computing Grid on AWS
High Performance Computing Grid on AWSHigh Performance Computing Grid on AWS
High Performance Computing Grid on AWS
 
Creazione del business case per l'adozione del cloud nella tua azienda
Creazione del business case per l'adozione del cloud nella tua aziendaCreazione del business case per l'adozione del cloud nella tua azienda
Creazione del business case per l'adozione del cloud nella tua azienda
 
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)
產業轉型:如何利用AWS構建SaaS服務平台,新思維拓展新商機 (Level: 200)
 
Artificial Intelligence nella realtà di oggi: come utilizzarla al meglio
Artificial Intelligence nella realtà di oggi: come utilizzarla al meglioArtificial Intelligence nella realtà di oggi: come utilizzarla al meglio
Artificial Intelligence nella realtà di oggi: come utilizzarla al meglio
 
AWS Webinar Series - Innovating the Customer Experience with Cloud and AI
AWS Webinar Series - Innovating the Customer Experience with Cloud and AIAWS Webinar Series - Innovating the Customer Experience with Cloud and AI
AWS Webinar Series - Innovating the Customer Experience with Cloud and AI
 
Build Smarter Enterprise Apps with AI, AR & VR on AWS
Build Smarter Enterprise Apps with AI, AR & VR on AWSBuild Smarter Enterprise Apps with AI, AR & VR on AWS
Build Smarter Enterprise Apps with AI, AR & VR on AWS
 
BI & Analytics - A Datalake on AWS
BI & Analytics - A Datalake on AWSBI & Analytics - A Datalake on AWS
BI & Analytics - A Datalake on AWS
 
Amazon Cloud Directory Deep Dive (DAT364) - AWS re:Invent 2018
Amazon Cloud Directory Deep Dive (DAT364) - AWS re:Invent 2018Amazon Cloud Directory Deep Dive (DAT364) - AWS re:Invent 2018
Amazon Cloud Directory Deep Dive (DAT364) - AWS re:Invent 2018
 
Come estendere gli ambienti VMware sul Cloud AWS
Come estendere gli ambienti VMware sul Cloud AWSCome estendere gli ambienti VMware sul Cloud AWS
Come estendere gli ambienti VMware sul Cloud AWS
 
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...Leadership Session: Using AWS End User Computing Services for Your Modern Wor...
Leadership Session: Using AWS End User Computing Services for Your Modern Wor...
 
Cloud Journey & Lessons Learnt
Cloud Journey & Lessons LearntCloud Journey & Lessons Learnt
Cloud Journey & Lessons Learnt
 
Leadership Session: Cloud Adoption and the Future of Financial Services (FSV2...
Leadership Session: Cloud Adoption and the Future of Financial Services (FSV2...Leadership Session: Cloud Adoption and the Future of Financial Services (FSV2...
Leadership Session: Cloud Adoption and the Future of Financial Services (FSV2...
 
BDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMaker
BDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMakerBDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMaker
BDA304 Build Deep Learning Applications with TensorFlow and Amazon SageMaker
 
Database Freedom. Database migration approaches to get to the Cloud - Marcus ...
Database Freedom. Database migration approaches to get to the Cloud - Marcus ...Database Freedom. Database migration approaches to get to the Cloud - Marcus ...
Database Freedom. Database migration approaches to get to the Cloud - Marcus ...
 
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...
Connecting the dots - How Amazon Neptune and Graph Databases can transform yo...
 
Internet of Things e Machine Learning: i principali casi d'uso
Internet of Things e Machine Learning: i principali casi d'usoInternet of Things e Machine Learning: i principali casi d'uso
Internet of Things e Machine Learning: i principali casi d'uso
 
Introducing the New Features of AWS Greengrass (IOT365) - AWS re:Invent 2018
Introducing the New Features of AWS Greengrass (IOT365) - AWS re:Invent 2018Introducing the New Features of AWS Greengrass (IOT365) - AWS re:Invent 2018
Introducing the New Features of AWS Greengrass (IOT365) - AWS re:Invent 2018
 
Effectively Engage Millions of Users in Seconds (MOB321-R1) - AWS re:Invent 2018
Effectively Engage Millions of Users in Seconds (MOB321-R1) - AWS re:Invent 2018Effectively Engage Millions of Users in Seconds (MOB321-R1) - AWS re:Invent 2018
Effectively Engage Millions of Users in Seconds (MOB321-R1) - AWS re:Invent 2018
 

Similar to Fannie Mae Processes 250K Loans Daily with AWS S3

How a Biotech Firm Streamlined Data Protection on AWS
 How a Biotech Firm Streamlined Data Protection on AWS How a Biotech Firm Streamlined Data Protection on AWS
How a Biotech Firm Streamlined Data Protection on AWSAmazon Web Services
 
Scaling from zero to millions of users
Scaling from zero to millions of usersScaling from zero to millions of users
Scaling from zero to millions of usersAmazon Web Services
 
Running Lean Architectures: How to Optimize for Cost Efficiency (ARC202-R2) -...
Running Lean Architectures: How to Optimize for Cost Efficiency (ARC202-R2) -...Running Lean Architectures: How to Optimize for Cost Efficiency (ARC202-R2) -...
Running Lean Architectures: How to Optimize for Cost Efficiency (ARC202-R2) -...Amazon Web Services
 
Building a Hybrid Architecture: Enterprise Backup & Recovery (ENT212-S) - AWS...
Building a Hybrid Architecture: Enterprise Backup & Recovery (ENT212-S) - AWS...Building a Hybrid Architecture: Enterprise Backup & Recovery (ENT212-S) - AWS...
Building a Hybrid Architecture: Enterprise Backup & Recovery (ENT212-S) - AWS...Amazon Web Services
 
Optimizing Storage for Enterprise Workloads and Migrations (STG202) - AWS re:...
Optimizing Storage for Enterprise Workloads and Migrations (STG202) - AWS re:...Optimizing Storage for Enterprise Workloads and Migrations (STG202) - AWS re:...
Optimizing Storage for Enterprise Workloads and Migrations (STG202) - AWS re:...Amazon Web Services
 
Building Data Lakes and Analytics on AWS. IPExpo Manchester.
Building Data Lakes and Analytics on AWS. IPExpo Manchester.Building Data Lakes and Analytics on AWS. IPExpo Manchester.
Building Data Lakes and Analytics on AWS. IPExpo Manchester.javier ramirez
 
NetApp Cloud Data Services & AWS Empower Your Cloud Champions
NetApp Cloud Data Services & AWS Empower Your Cloud ChampionsNetApp Cloud Data Services & AWS Empower Your Cloud Champions
NetApp Cloud Data Services & AWS Empower Your Cloud ChampionsAmazon Web Services
 
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018Amazon Web Services
 
AWS Data Transfer Services Deep Dive
AWS Data Transfer Services Deep Dive AWS Data Transfer Services Deep Dive
AWS Data Transfer Services Deep Dive Amazon Web Services
 
Using Search with a Database - Peter Dachnowicz
Using Search with a Database - Peter DachnowiczUsing Search with a Database - Peter Dachnowicz
Using Search with a Database - Peter DachnowiczAmazon Web Services
 
Building Hybrid Cloud Storage Architectures with AWS @scale
Building Hybrid Cloud Storage Architectures with AWS @scaleBuilding Hybrid Cloud Storage Architectures with AWS @scale
Building Hybrid Cloud Storage Architectures with AWS @scaleAmazon Web Services
 
Introducing AWS DataSync - Simplify, automate, and accelerate online data tra...
Introducing AWS DataSync - Simplify, automate, and accelerate online data tra...Introducing AWS DataSync - Simplify, automate, and accelerate online data tra...
Introducing AWS DataSync - Simplify, automate, and accelerate online data tra...Amazon Web Services
 
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...AWS Riyadh User Group
 
Serverless Architectural Patterns
Serverless Architectural PatternsServerless Architectural Patterns
Serverless Architectural PatternsAmazon Web Services
 
Come scalare da zero ai tuoi primi 10 milioni di utenti.pdf
Come scalare da zero ai tuoi primi 10 milioni di utenti.pdfCome scalare da zero ai tuoi primi 10 milioni di utenti.pdf
Come scalare da zero ai tuoi primi 10 milioni di utenti.pdfAmazon Web Services
 
How UCSD Simplified Data Protection with Rubrik and AWS (STG207-S) - AWS re:I...
How UCSD Simplified Data Protection with Rubrik and AWS (STG207-S) - AWS re:I...How UCSD Simplified Data Protection with Rubrik and AWS (STG207-S) - AWS re:I...
How UCSD Simplified Data Protection with Rubrik and AWS (STG207-S) - AWS re:I...Amazon Web Services
 
Migrating Data to the Cloud: Exploring Your Options from AWS (STG205-R1) - AW...
Migrating Data to the Cloud: Exploring Your Options from AWS (STG205-R1) - AW...Migrating Data to the Cloud: Exploring Your Options from AWS (STG205-R1) - AW...
Migrating Data to the Cloud: Exploring Your Options from AWS (STG205-R1) - AW...Amazon Web Services
 
AWS Data Transfer Services: Deep Dive - SRV302 - Chicago AWS Summit
AWS Data Transfer Services: Deep Dive - SRV302 - Chicago AWS SummitAWS Data Transfer Services: Deep Dive - SRV302 - Chicago AWS Summit
AWS Data Transfer Services: Deep Dive - SRV302 - Chicago AWS SummitAmazon Web Services
 
Building a Data Lake in Amazon S3 & Amazon Glacier (STG401-R1) - AWS re:Inven...
Building a Data Lake in Amazon S3 & Amazon Glacier (STG401-R1) - AWS re:Inven...Building a Data Lake in Amazon S3 & Amazon Glacier (STG401-R1) - AWS re:Inven...
Building a Data Lake in Amazon S3 & Amazon Glacier (STG401-R1) - AWS re:Inven...Amazon Web Services
 
Architecting Digital Media Archive Migrations with AWS (STG357) - AWS re:Inve...
Architecting Digital Media Archive Migrations with AWS (STG357) - AWS re:Inve...Architecting Digital Media Archive Migrations with AWS (STG357) - AWS re:Inve...
Architecting Digital Media Archive Migrations with AWS (STG357) - AWS re:Inve...Amazon Web Services
 

Similar to Fannie Mae Processes 250K Loans Daily with AWS S3 (20)

How a Biotech Firm Streamlined Data Protection on AWS
 How a Biotech Firm Streamlined Data Protection on AWS How a Biotech Firm Streamlined Data Protection on AWS
How a Biotech Firm Streamlined Data Protection on AWS
 
Scaling from zero to millions of users
Scaling from zero to millions of usersScaling from zero to millions of users
Scaling from zero to millions of users
 
Running Lean Architectures: How to Optimize for Cost Efficiency (ARC202-R2) -...
Running Lean Architectures: How to Optimize for Cost Efficiency (ARC202-R2) -...Running Lean Architectures: How to Optimize for Cost Efficiency (ARC202-R2) -...
Running Lean Architectures: How to Optimize for Cost Efficiency (ARC202-R2) -...
 
Building a Hybrid Architecture: Enterprise Backup & Recovery (ENT212-S) - AWS...
Building a Hybrid Architecture: Enterprise Backup & Recovery (ENT212-S) - AWS...Building a Hybrid Architecture: Enterprise Backup & Recovery (ENT212-S) - AWS...
Building a Hybrid Architecture: Enterprise Backup & Recovery (ENT212-S) - AWS...
 
Optimizing Storage for Enterprise Workloads and Migrations (STG202) - AWS re:...
Optimizing Storage for Enterprise Workloads and Migrations (STG202) - AWS re:...Optimizing Storage for Enterprise Workloads and Migrations (STG202) - AWS re:...
Optimizing Storage for Enterprise Workloads and Migrations (STG202) - AWS re:...
 
Building Data Lakes and Analytics on AWS. IPExpo Manchester.
Building Data Lakes and Analytics on AWS. IPExpo Manchester.Building Data Lakes and Analytics on AWS. IPExpo Manchester.
Building Data Lakes and Analytics on AWS. IPExpo Manchester.
 
NetApp Cloud Data Services & AWS Empower Your Cloud Champions
NetApp Cloud Data Services & AWS Empower Your Cloud ChampionsNetApp Cloud Data Services & AWS Empower Your Cloud Champions
NetApp Cloud Data Services & AWS Empower Your Cloud Champions
 
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018
Build Your Own Log Analytics Solutions on AWS (ANT323-R) - AWS re:Invent 2018
 
AWS Data Transfer Services Deep Dive
AWS Data Transfer Services Deep Dive AWS Data Transfer Services Deep Dive
AWS Data Transfer Services Deep Dive
 
Using Search with a Database - Peter Dachnowicz
Using Search with a Database - Peter DachnowiczUsing Search with a Database - Peter Dachnowicz
Using Search with a Database - Peter Dachnowicz
 
Building Hybrid Cloud Storage Architectures with AWS @scale
Building Hybrid Cloud Storage Architectures with AWS @scaleBuilding Hybrid Cloud Storage Architectures with AWS @scale
Building Hybrid Cloud Storage Architectures with AWS @scale
 
Introducing AWS DataSync - Simplify, automate, and accelerate online data tra...
Introducing AWS DataSync - Simplify, automate, and accelerate online data tra...Introducing AWS DataSync - Simplify, automate, and accelerate online data tra...
Introducing AWS DataSync - Simplify, automate, and accelerate online data tra...
 
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...
Cutting to the chase for Machine Learning Analytics Ecosystem & AWS Lake Form...
 
Serverless Architectural Patterns
Serverless Architectural PatternsServerless Architectural Patterns
Serverless Architectural Patterns
 
Come scalare da zero ai tuoi primi 10 milioni di utenti.pdf
Come scalare da zero ai tuoi primi 10 milioni di utenti.pdfCome scalare da zero ai tuoi primi 10 milioni di utenti.pdf
Come scalare da zero ai tuoi primi 10 milioni di utenti.pdf
 
How UCSD Simplified Data Protection with Rubrik and AWS (STG207-S) - AWS re:I...
How UCSD Simplified Data Protection with Rubrik and AWS (STG207-S) - AWS re:I...How UCSD Simplified Data Protection with Rubrik and AWS (STG207-S) - AWS re:I...
How UCSD Simplified Data Protection with Rubrik and AWS (STG207-S) - AWS re:I...
 
Migrating Data to the Cloud: Exploring Your Options from AWS (STG205-R1) - AW...
Migrating Data to the Cloud: Exploring Your Options from AWS (STG205-R1) - AW...Migrating Data to the Cloud: Exploring Your Options from AWS (STG205-R1) - AW...
Migrating Data to the Cloud: Exploring Your Options from AWS (STG205-R1) - AW...
 
AWS Data Transfer Services: Deep Dive - SRV302 - Chicago AWS Summit
AWS Data Transfer Services: Deep Dive - SRV302 - Chicago AWS SummitAWS Data Transfer Services: Deep Dive - SRV302 - Chicago AWS Summit
AWS Data Transfer Services: Deep Dive - SRV302 - Chicago AWS Summit
 
Building a Data Lake in Amazon S3 & Amazon Glacier (STG401-R1) - AWS re:Inven...
Building a Data Lake in Amazon S3 & Amazon Glacier (STG401-R1) - AWS re:Inven...Building a Data Lake in Amazon S3 & Amazon Glacier (STG401-R1) - AWS re:Inven...
Building a Data Lake in Amazon S3 & Amazon Glacier (STG401-R1) - AWS re:Inven...
 
Architecting Digital Media Archive Migrations with AWS (STG357) - AWS re:Inve...
Architecting Digital Media Archive Migrations with AWS (STG357) - AWS re:Inve...Architecting Digital Media Archive Migrations with AWS (STG357) - AWS re:Inve...
Architecting Digital Media Archive Migrations with AWS (STG357) - AWS re:Inve...
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Fannie Mae Processes 250K Loans Daily with AWS S3

  • 1.
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. How Fannie Mae Processes over a Quarter Million Loans per Day with Amazon S3 W P S 3 0 5 Harsha Nippani Solutions Architect Amazon Oliver Mathias Senior Architect Fannie Mae
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. About Us Oliver Mathias • Senior Architect, Fannie Mae • Enthusiastic about advanced technology • 𝐹516+ years solving complex technical problems Harsha Nippani • Solutions Architect, AWS • Help customers deploy successfully on AWS • 18+ years in IT systems engineering and Ops
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What You’ll Get Out of this Session • Amazon Simple Storage Session (Amazon S3) best practices to build low latency apps • Front row seat to our journey at Fannie Mae • Practical takeaways you can try at home
  • 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. The AWS Storage Portfolio Data Transfer 3rd Party Connectors S3 Transfer Acceleration File Amazon EFS Object Amazon GlacierAmazon S3 Block Amazon EBS (persistent) Amazon EC2 Instance Store (ephemeral) AWS Snow Family AWS Storage Gateway AWS Direct Connect Amazon Kinesis EFS File Sync
  • 7. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon S3 by the Numbers 44 Availability Zones (16 more coming in 2018) 16 Regions (5 more coming in 2018) Trillions of objects Millions of requests per second One of first three AWS services (2006) 99.999999999 % Durability
  • 8. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Benefits of Amazon S3 & Glacier Durable, Available, & Scalable Security & Compliance Flexible Management Ecosystem Low-Cost
  • 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon S3 Architecture Internet End User PUT GET DELETE Load Balancers Metadata Storage API Servers Blob Storage
  • 10. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon S3 Security, Encryption, & Compliance Security • AWS Identity Access and Management (IAM) and bucket policies • Access control lists • Audit logging with AWS CloudTrail & alerts with Amazon CloudWatch • Secure AWS CloudFormation templates • Amazon Macie • Amazon S3 Console permission checks Encryption • Encryption in transit with TLS • SSE-S3 – Amazon S3 manages data & keys • SSE-C – Customer managed keys • SSE-KMS – Master keys in AWS Key Management Service (AWS KMS) • CSE – 100% Customer managed • Default bucket encryption • Encryption status in inventory Compliance • PCI-DSS • HIPAA/HITECH • FedRAMP • FISMA • EU Data Protection Directive One of the broadest set of tools in the industry
  • 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS Storage Customers Enterprise Partner Integration (Storage) Backup and Restore Primary Storage
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. High Request Rates • S3 automatically scales to high request/sec (RPS) rates • 3,500 RPS for PUT/POST/DELETE (Per Bucket Prefix) • 5,500 RPS for GETS (Per Bucket Prefix) • Add prefixes to increase read and write performance exponentially • SSE-KMS encryption • 5,500 – 10,000 RPS for KMS Encrypt/Decrypt actions
  • 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Using a Three or Four Character Hash (Entropy) examplebucket/232a-2017-26-05-15-00-00/cust1234234/photo1.jpg examplebucket/7b54-2017-26-05-15-00-00/cust3857422/photo2.jpg examplebucket/921c-2017-26-05-15-00-00/cust1248473/photo2.jpg examplebucket/animations/232a-2017-26-05-15-00-00/cust1234234/animation1.obj examplebucket/videos/ba65-2017-26-05-15-00-00/cust8474937/video2.mpg examplebucket/photos/8761-2017-26-05-15-00-00/cust1248473/photo3.jpg A bit more LIST friendly: Random hash should come before patterns such as dates and sequential IDs Always first ensure that your application can accommodate Due to recent Amazon S3 performance enhancements, most customers no longer need to worry about introducing entropy in key names
  • 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Parallelizing GETs GET /example-object HTTP/1.1 Host: example-bucket.s3.amazonaws.com x-amz-date: Fri, 28 Jan 2016 21:32:02 GMT Range: bytes=0-9 Authorization: AWS AKIAIOSFODNN7EXAMPLE:Yxg83MZaEgh3OZ3l0rLo5RTX11o= For large objects, use range-based GETs - align your get ranges with your parts For content distribution and edge caching, enable Amazon CloudFront • Caches objects from S3 at the edge • Low latency data transfer to end user • Multiple endpoints globally
  • 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. • Multi part upload for large objects • Increase aggregate throughput by parallelizing PUTs on high- bandwidth networks • Move the bottleneck to the network, where it belongs • Increase resiliency to network errors; fewer large restarts on error-prone networks Parallelizing PUTs
  • 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Key Amazon S3 best practices – Performance Faster upload over long distances with S3 Transfer Acceleration Faster upload for large objects with S3 multipart upload Optimize GET performance with Range GET and Amazon CloudFront SQL Query on S3 with Amazon Athena Distribute key name for high TPS workload TCP Window Scaling for long, fat networks TCP SACK for fast, lossy connections like mobile
  • 17. How do you successfully modernize your important customer’s highly visible, high throughput customer-facing application? And live to talk about it?
  • 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon S3 Store any file, any size, any volume For any amount of time With stellar durability Fast, reliable access to data All for a cost that does not break the bank? And predictable scalability
  • 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. “Usual” List Static web site hosting File sync and storage solutions Image, video, & multimedia sharing Data store for big data workloads Data lake & AI storage Social web and SaaS use cases
  • 21. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. “Unconventional” Thinking High frequency requests Blocking transactions Quick response times Guaranteed delivery Atomicity and consistency Amazon S3 as blazing fast storage system for high throughput transactional apps?
  • 22. Age-old solutioning Traditional solution  Build out DC  Upfront high CapEx Costly, unmaintainable, and inflexible. Upgrade treadmill Cloud 1.0 strategy Cloud 1.0 solution  Lift and shift  Custom cloud storage Slightly better, cloud-enabled solution. Checks off “Migrate to the cloud” ! Cloud 2.0 Thinking : Get a little innovative, let’s see how Fannie Mae did it!  High Complexity  Peg to peak capacity  Poor resiliency  Peg to peak storage capacity
  • 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Fannie Mae is at the Heart of the Housing Industry Investors
  • 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Fannie Mae, America’s Most Valued Housing Partner 1 in 3Homes in the country are financed by Fannie Mae $570 BMortgage Financing in 2017 1.2M 1 M 7 7 0 K New Homes Refinancing Multifamily Units 76%Of Americans seeking a first lien mortgage chose 30-Year fixed rate mortgage In 2017
  • 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Really Simple View of Loan Processing
  • 27. Three very important goals Millisecond responses Near zero downtime Near zero data loss
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Key Architecture Challenges Maximizing performance, availability and durability all at the same time Incredibly low latency Billions of objects/year Work with current platform Reduce Operating Expenses(OpEx)
  • 29. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Create Guardrails Early Managed Services, Cloud as Platform Target DIY On premises Infrastructure Degree of Infrastructure Control Cloud Native, AWS Native Target Distributed patterns, custom built Importance of Native Solutions All Dependent Services on Cloud Target Cloud as extended Data Center Degree of Chattiness Share nothing Share everything Degree of Service Dependence & Autonomy Target
  • 30. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. 1: 400 Load factor Incredibly steep ramp Object PUTs/GETs over one week Mon Tue Wed Thu Fri Process, rinse, and repeat. Predictable, steep daily peaks Just Another Week Incredibly steep ramp 800/1600+ TPS at peak volume
  • 32. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Simplified Architecture View API servers Backend Client applications
  • 33. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Initial Observations – GET Latency Amazon S3 read file (GETs) goes as high as 1 sec 800 TPS <100 KB file size 250
  • 34. Best practices, key first steps Second phase, shaving off milliseconds Key architecture challenges
  • 35. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Standard Best Practices + Entropy (randomness) + Parallelizing PUTs & GETs + For troubleshooting use Request ID, S3 Extended Request ID & Host ID + Externalizing markers + RDS as an indexing mechanism for markers try { ClientConfiguration configuration = new ClientConfiguration(); configuration.setMaxConnections(….); configuration.setRetryPolicy(…); configuration.setClientExecutionTimeout(….); AmazonS3 s3Client = AmazonS3ClientBuilder.defaultClient(); S3Object object = s3Client.getObject(new GetObjectRequest(….); } catch (ClientExecutionTimeoutException ce) log.error(….); throw ce; } // the caller of this method, may retry to get the object successfully Pay attention to client execution timeout
  • 36. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Working Around Amazon S3 Eventual Consistency Version mismatch Update only one object GET before PUT
  • 37. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Consistently reproducible response time spikes every 15 min Unpredictable, could add several seconds to customer response times PUT Latency
  • 38. Second phase, shaving off milliseconds Best practices, key first steps Third phase, pushing the limits, literally. Improving resiliency
  • 39. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Caching In read first read on cache miss write always write always Compensation for write failures Uncoupling Amazon S3 stores to improve PUT latency Needs compensation to ensure continued high durability
  • 40. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Cached Reads Saves 100-150ms per transaction Over 200,000 seconds of processing time/latency saved every day Get Borrower Package id 100 1 2 “100” not in cache Get (a1, b2, c1) Select Object id, version id from Package where borrower=‘John” and Package id =100 push(“100”, serialized package) Add package to cache on first read 3 GET Thread Pool GET (“a1”) GET (“b2”) GET (”c1”) 4 5 Get(“100”) Get Borrower Package id 100 1 2 3 Select Object id, version id from Package where borrower=‘John” and Package id =100 Read from cache for subsequent requests 4
  • 41. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Uncoupling Writes Cache writes are blazing fast, saves 250-300ms per transaction Over 400,000 seconds of processing time/latency saved every day Get Borrower Package id 100 1 2 2 Async write to Amazon S3 Uncoupling transactions with compensation for failures PUT Thread Pool PUT (“a1”) PUT (“b2”) PUT (”c1”) 4 Sync write to Cache ADD (“Failed_100-c1, c1) PUT (“c1”) Insert into Package object id=‘a1’, version id =‘v1’ Where package id =‘100’ 3 5 6 7 8
  • 42. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Encrypting Data at Rest Switching to CSE can save 15-25ms per transaction Over 100,000 seconds of processing time/latency saved every day Get Data Key Local CMM Data key cache SDK Encrypt PUT 1 2 3 Get Data Key Local CMM Data key cache SDK Decrypt 2 3 GET 1  SSE-KMS provides many operational advantages, so you might want to stick to it  AWS KMS observed availability is pretty high, 99.999%  For high variable workloads from 1000s to millions, SSE-S3 might be a better fit
  • 43. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What’s our percentile? Goal : Delivering Incredibly low latency - 99.9% within 200-300 What’s our percentile? Goal : Delivering Incredibly low latency - 99% within 200-300ms
  • 44. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Significant reduction in Improve Store response time by over 100% with uncoupled cache < 300ms PUT latency for 97% of transactions (not quite, but not relevant due to uncoupling) < 300ms GET latency for 97% of transactions 0.1 0.2 Optimized Response Times
  • 45. Second phase, shaving off milliseconds Third phase, pushing the limits, literally. Improving resiliency More key challenges
  • 46. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Slightly Less Simple View of the Architecture API Servers BackendClients Markers Amazon S3 Cache Amazon CloudWatch
  • 47. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Retries for Occasional GET Latency Spikes Distributed nature of Amazon S3 = some GETs take over several seconds Retry resolves time outs, may take 2-3 attempts GET 1 3 5 5 Attempts GET GET 2 4 Time out in 2s Time out in 2s Time out in 2s Time out in 2s
  • 48. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Rightsizing Instances 0 10 20 30 40 50 60 70 80 90 100 ResponseTimes Percentile m4.4xlarge (x10) Fleet 0 10 20 30 40 50 60 70 80 90 100 ResponseTimes Percentile m4.10xlarge (x4) Fleet Smaller instances have similar, may be even better performance
  • 49. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What’s our percentile? Goal : Delivering Incredibly low latency - 99.9% within 200-300 What’s our percentile? Goal : Delivering incredibly low latency - 99% within 200-300ms
  • 50. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Results 100 200 99% of stores and reads within 275 milliseconds 50 150 250 100 200 50 150
  • 51. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. More Key Challenges High(er) availability Region failure immunity Minute scale recovery point objective (RPO) & recovery time objective (RTO)
  • 52. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Achieving Resiliency Assume everything in the app could fail Dependencies could fail Network & connectivity could fail Availability Zones and Regions could fail Assume everything will fail all the time
  • 53. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. App & Dependent Service Resiliency, Briefly DEFENSIVE CODING SCRIPT, CODE AUTOMATION Application resiliency Dependent service resiliency Operational & network resiliency
  • 54. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Resiliency in a Region Availability Zone 1 Availability Zone 2 Availability Zone 3 App 90% 99%99% 99% App Availability = 90% App 90% 99%99% 99% App Availability with Redundancy = ~ 99%+ Dark Capacity 30 % AZ 1 AZ 2 AZ 3
  • 55. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Multi-region Options Pilot light Active / Standby Active / Active Region 1 Region 2 Region 1 Region 2 Region 1 Region 2
  • 56. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. RPO vs. Cost & Complexity 360 90 45 15 0 RPO vs Cost & Complexity
  • 57. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Typical Multi-region Options All native Custom DB Custom Amazon S3 Custom DB & Custom Amazon S3 Native Active / Active Native Active / Active Native Active / Active Native Active / Active Native Active / Standby Custom Active / Standby Native Active / Standby Custom Active / Active Native Active / Standby Native Active / Standby Custom Active / Active Custom Active / Active High Medium Low Very Low Sync Sync None Network & lag dependent None Slowest due to sync n/w & lag
  • 58. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Our Simple High Availability Plan
  • 59. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Uncoupled Multi-Region Writes Write to both regions, build redundant compensation for failures Get Borrower Package id 100 1 2 2 Async write to Amazon S3 PUT thread pool US East 2 4 Sync write to Cache Insert into Package object id=‘a1’, version =‘v1’ Where package id =‘100’ 3 6 7 8 PUT (“b2) 5 PUT (“b2) 5 ADD (“Failed_both_regions_10 0-b2, b2) 8 7 9Insert into region_failures id=100, object=b1, region=“1” US East 1
  • 60. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Multi-region Reads Eliminates sporadic S3 latency spikes, region failure immunity Get(“100”) Get Borrower Package id 100 1 2 3 “100” not in cache Get (a1, b2, c1) Select Object id, version id from Package where borrower=‘John” and Package id =100 push(“100”, serialized package) 4 GET thread pool GET (“b2”) 4 5 US East 2 US East 1 Read both regions simultaneouslyGET (“b2”) Subsequent reads are from cache
  • 61. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Key Takeaways + 1000’s of TPS is possible + Parallelize GETs & PUTS, add retries + Last 1% will take significant effort + SSE KMS good for almost every use case, < 20ms overhead + Remember: Bigger instances are not always better ! + Objects and metadata can’t stand each other + Cache in for predictable low latency + 4-9s+, write and read from both regions Be a little unconventional with Amazon S3, serious benefits are in store
  • 62. 99.9% of transactions < 300 milliseconds Better availability Better TCO
  • 63. Thank you! © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Oliver Mathias Oliver_mathias@fanniemae.com Harsha Nippani nippanih@amazon.com
  • 64. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.