Upgrade to Pro — share decks privately, control downloads, hide ads and more …

From Web Services to Quantum Computing: The Power of Building on the Cloud

Danilo Poccia
September 17, 2020

From Web Services to Quantum Computing: The Power of Building on the Cloud

AWS Community Day Sri Lanka, September 17th, 2020

Adding new features for your customers, or creating something new from scratch, it’s much easier when you can focus on what you want to build, and not the nuts & bolts of the underlying infrastructure. With AWS, you can start with foundational services for compute, storage, and databases. From there, it’s up to you whether you want to add analytics, leverage machine learning, or understand what is coming next with quantum computing.

Danilo Poccia

September 17, 2020
Tweet

More Decks by Danilo Poccia

Other Decks in Programming

Transcript

  1. © 2020, Amazon Web Services, Inc. or its Affiliates. Danilo

    Poccia Chief Evangelist (EMEA) @danilop From Web Services to Quantum Computing: The Power of Building on the Cloud
  2. © 2020, Amazon Web Services, Inc. or its Affiliates. IT

    often starts with a single server… Single Server
  3. © 2020, Amazon Web Services, Inc. or its Affiliates. Your

    customers are happy… Single Server Customers
  4. © 2020, Amazon Web Services, Inc. or its Affiliates. Your

    customers are happy… until they are not Single Server Customers
  5. © 2020, Amazon Web Services, Inc. or its Affiliates. Separate

    business logic from data Application Server Database Server Customers
  6. © 2020, Amazon Web Services, Inc. or its Affiliates. Scalability

    & availability 2 x Application Servers Database Server Customers
  7. © 2020, Amazon Web Services, Inc. or its Affiliates. Balancing

    traffic across multiple application server 2 x Application Servers Database Server Load Balancer Customers
  8. © 2020, Amazon Web Services, Inc. or its Affiliates. Managing

    failover across multiple application server 2 x Application Servers Database Server Load Balancer Customers
  9. © 2020, Amazon Web Services, Inc. or its Affiliates. Availability

    for the database 2 x Application Servers Active / Standby Database Load Balancer Customers
  10. © 2020, Amazon Web Services, Inc. or its Affiliates. Availability

    for the database 2 x Application Servers Active / Standby Database Load Balancer Customers
  11. © 2020, Amazon Web Services, Inc. or its Affiliates. Deploying

    on AWS... 2 x Amazon EC2 Instances Amazon RDS Database Application Load Balancer Customers
  12. © 2020, Amazon Web Services, Inc. or its Affiliates. 3

    it’s better than 2, elasticity is better than any number Amazon EC2 Auto Scaling Amazon RDS Database Application Load Balancer Customers Amazon Aurora RDS for MySQL RDS for PostgreSQL RDS for MariaDB RDS for Oracle RDS for SQL Server
  13. © 2020, Amazon Web Services, Inc. or its Affiliates. Scaling

    the database is more difficult Amazon EC2 Auto Scaling Amazon Aurora Database Application Load Balancer Customers Amazon Aurora MySQL or PostgreSQL compatible
  14. © 2020, Amazon Web Services, Inc. or its Affiliates. Which

    database to use? Amazon EC2 Auto Scaling Amazon Aurora Database Application Load Balancer Customers
  15. © 2020, Amazon Web Services, Inc. or its Affiliates. Database

    freedom Amazon Aurora MySQL or PostgreSQL compatible Amazon DynamoDB Amazon DocumentDB with MongoDB compatibility Amazon Neptune (Graph) Amazon QLDB (Ledger) Amazon Keyspaces (for Apache Cassandra)
  16. © 2020, Amazon Web Services, Inc. or its Affiliates. Using

    containers Amazon Aurora MySQL or PostgreSQL compatible Amazon DynamoDB Amazon DocumentDB with MongoDB compatibility Amazon Neptune (Graph) Amazon QLDB (Ledger) Amazon Keyspaces (for Apache Cassandra) Amazon Elastic Container Service Amazon Elastic Kubernetes Service Container Container Container Container Container
  17. © 2020, Amazon Web Services, Inc. or its Affiliates. Tasks,

    Pods, and Services Amazon Aurora MySQL or PostgreSQL compatible Amazon DynamoDB Amazon DocumentDB with MongoDB compatibility Amazon Neptune (Graph) Amazon QLDB (Ledger) Amazon Keyspaces (for Apache Cassandra) Amazon ECS Amazon EKS Task Pod Service
  18. © 2020, Amazon Web Services, Inc. or its Affiliates. Managing

    containers, not clusters Amazon Aurora MySQL or PostgreSQL compatible Amazon DynamoDB Amazon DocumentDB with MongoDB compatibility Amazon Neptune (Graph) Amazon QLDB (Ledger) Amazon Keyspaces (for Apache Cassandra) Amazon ECS Amazon EKS Task Pod Service AWS Fargate
  19. © 2020, Amazon Web Services, Inc. or its Affiliates. AWS

    Lambda Function Function Function What about functions? Something happens! Event Any public or private resource
  20. © 2020, Amazon Web Services, Inc. or its Affiliates. Using

    functions for web applications AWS Lambda Function Function Function Amazon API Gateway Application Load Balancer AWS SDK Lambda Invoke API sync/async
  21. © 2020, Amazon Web Services, Inc. or its Affiliates. Adding

    storage… AWS Lambda Function Function Function Amazon API Gateway Application Load Balancer AWS SDK Lambda Invoke API sync/async Amazon S3 Bucket HTML, CSS, JS Images
  22. © 2020, Amazon Web Services, Inc. or its Affiliates. Adding

    storage and authentication AWS Lambda Function Function Function Amazon API Gateway Application Load Balancer AWS SDK Lambda Invoke API sync/async Amazon S3 Bucket Amazon Cognito User Auth HTML, CSS, JS Images
  23. © 2020, Amazon Web Services, Inc. or its Affiliates. Availability

    and scalability – AWS Global Infrastructure
  24. © 2020, Amazon Web Services, Inc. or its Affiliates. Availability

    and scalability – Availability Zones Region Availability Zone Availability Zone Availability Zone
  25. © 2020, Amazon Web Services, Inc. or its Affiliates. Availability

    and scalability – EC2 instances Region Availability Zone Availability Zone Availability Zone
  26. © 2020, Amazon Web Services, Inc. or its Affiliates. Availability

    and scalability – EC2 Auto Scaling Region Availability Zone Availability Zone Availability Zone Auto Scaling group Auto Scaling group
  27. © 2020, Amazon Web Services, Inc. or its Affiliates. Availability

    and scalability – Containers Region Availability Zone Availability Zone Availability Zone
  28. © 2020, Amazon Web Services, Inc. or its Affiliates. Availability

    and scalability – Elastic Load Balancer Region Availability Zone Availability Zone Availability Zone
  29. © 2020, Amazon Web Services, Inc. or its Affiliates. Availability

    and scalability – Fully managed services Region Availability Zone Availability Zone Availability Zone API Gateway Lambda Function DynamoDB Table S3 Bucket
  30. © 2020, Amazon Web Services, Inc. or its Affiliates. AWS

    operational responsibility models On-Premises Cloud Less More Compute Virtual Machine EC2 Elastic Beanstalk AWS Lambda Fargate Databases MySQL MySQL on EC2 RDS MySQL RDS Aurora Aurora Serverless DynamoDB Storage Storage S3 Messaging ESBs Amazon MQ Kinesis SQS / SNS Analytics Hadoop Hadoop on EC2 EMR Elasticsearch Service Athena
  31. © 2020, Amazon Web Services, Inc. or its Affiliates. Applications

    produce data, microservices even more… Applications
  32. © 2020, Amazon Web Services, Inc. or its Affiliates. ?

    How to store structured and unstructured data? Applications
  33. © 2020, Amazon Web Services, Inc. or its Affiliates. Object

    storage is much easier to manage and use Amazon S3 Applications
  34. © 2020, Amazon Web Services, Inc. or its Affiliates. But

    this is often raw data, not easy to understand Raw Data Applications ?
  35. © 2020, Amazon Web Services, Inc. or its Affiliates. Preparing

    the data… Raw Data AWS Glue Glue Crawler Glue Data Catalog Glue Job Prepared Data Extract, Transform, and Load (ETL) Applications
  36. © 2020, Amazon Web Services, Inc. or its Affiliates. Preparing

    the data to be analyzed Raw Data AWS Glue Glue Crawler Glue Data Catalog Glue Job Prepared Data Amazon Athena Amazon Redshift Load / Query Query Extract, Transform, and Load (ETL) Analytics Applications
  37. © 2020, Amazon Web Services, Inc. or its Affiliates. Building

    a Data Lake Amazon Athena Amazon Redshift Load / Query Query AWS Lake Formation
  38. © 2020, Amazon Web Services, Inc. or its Affiliates. What

    can I do with a Data Lake? Data Lake ?
  39. © 2020, Amazon Web Services, Inc. or its Affiliates. Visualizations

    & business alerts Data Lake Amazon QuickSight Visualize Alerts
  40. © 2020, Amazon Web Services, Inc. or its Affiliates. Finding

    hidden patterns and creating preditions Data Lake Amazon QuickSight Amazon SageMaker Visualize Alerts Hidden Patterns Predictions
  41. © 2020, Amazon Web Services, Inc. or its Affiliates. Supervised

    / Unsupervised Learning Data Notebook Model Train Amazon SageMaker Predictions
  42. © 2020, Amazon Web Services, Inc. or its Affiliates. Supervised

    / Unsupervised Learning Data Notebook Model Train Amazon SageMaker Ground Truth Labeled Data Amazon SageMaker Predictions
  43. © 2020, Amazon Web Services, Inc. or its Affiliates. Supervised

    / Unsupervised Learning Data Notebook Model Train Amazon SageMaker Ground Truth Labeled Data Amazon SageMaker Predictions Amazon SageMaker Autopilot Amazon SageMaker Experiments Amazon SageMaker Debugger Amazon SageMaker Model Monitor Amazon SageMaker Studio
  44. © 2020, Amazon Web Services, Inc. or its Affiliates. Supervised

    / Unsupervised Learning Data Notebook Model Train Amazon SageMaker Ground Truth Labeled Data Amazon SageMaker Predictions Amazon SageMaker Autopilot Amazon SageMaker Experiments Amazon SageMaker Debugger Amazon SageMaker Model Monitor Amazon SageMaker Neo Amazon SageMaker Studio
  45. © 2020, Amazon Web Services, Inc. or its Affiliates. Adding

    human feedback to the loop Data Notebook Model Train Amazon SageMaker Ground Truth Labeled Data Amazon SageMaker Predictions Amazon SageMaker Autopilot Amazon SageMaker Experiments Amazon SageMaker Debugger Amazon SageMaker Model Monitor Amazon SageMaker Neo Amazon Augmented AI Human Feedback Amazon SageMaker Studio
  46. © 2020, Amazon Web Services, Inc. or its Affiliates. We

    are used to store data in “bits” that can be 0 or 1… Bit #1 Value It’s 0 ! 0 1
  47. © 2020, Amazon Web Services, Inc. or its Affiliates. We

    are used to store data in “bits” that can be 0 or 1… Bit #1 Bit #2 0 1 Value Bit #3 It’s 0 ! It’s 1 ! It’s 1 again !
  48. © 2020, Amazon Web Services, Inc. or its Affiliates. “Qubits”

    can still have 2 different states… Qubit #1 Qubit #2 | ⟩ | ⟩ Value It’s | ⟩ 0 It’s | ⟩ 1
  49. © 2020, Amazon Web Services, Inc. or its Affiliates. “Qubits”

    can still have 2 different states, but they can be in superposition Qubit #1 Qubit #2 Value Qubit #3 Qubit #4 It’s | ⟩ 0 50% of the time, | ⟩ 1 the other 50% It’s | ⟩ 0 90% of the time, | ⟩ 1 the other 10% | ⟩ | ⟩ It’s | ⟩ 0 It’s | ⟩ 1
  50. © 2020, Amazon Web Services, Inc. or its Affiliates. Qubits

    also have a relative “phase”… Qubit #1 Qubit #2 Value Qubit #3 Qubit #4 | ⟩ | ⟩
  51. © 2020, Amazon Web Services, Inc. or its Affiliates. Qubits

    also have a relative “phase” that we can use when interacting with more than one qubit… Qubit #1 Qubit #2 Value Qubit #3 Qubit #4 | ⟩ | ⟩
  52. © 2020, Amazon Web Services, Inc. or its Affiliates. Qubits

    can be entangled, so that actions performed on one affect the other Qubit #1 Qubit #2 Value Qubit #3 Qubit #4 | ⟩ | ⟩
  53. © 2020, Amazon Web Services, Inc. or its Affiliates. Why

    are qubits useful? • Qubit express perfect randomness • Some problems can be solved exponentially faster • New algorithms are possible! For example, • Grover’s search algorithm – O( ) instead of O() • Shor’s factoring algorithm – runs in polynomial time • Possible applications are: • Molecular simulation • Optimization • Quantum Machine Learning
  54. © 2020, Amazon Web Services, Inc. or its Affiliates. To

    extend the power of a CPU, you can add a GPU… CPU GPU Tensorflow PyTorch . . .
  55. © 2020, Amazon Web Services, Inc. or its Affiliates. Similarly,

    you can add a Quantum Computing Unit (QPU) CPU
  56. © 2020, Amazon Web Services, Inc. or its Affiliates. Similarly,

    you can add a Quantum Computing Unit (QPU), and use high-level frameworks and libraries CPU QPU Higher-level Frameworks and Libraries
  57. © 2020, Amazon Web Services, Inc. or its Affiliates. Explore

    and experiment with quantum computing using Amazon Braket, it’s easier than what you may think! Amazon Braket Gate-based superconducting qubits Gate-based ion traps Quantum annealing AWS Simulator Notebook
  58. © 2020, Amazon Web Services, Inc. or its Affiliates. Quantum

    Demo J Grover’s search algorithm – O( ) instead of O() For simplicity, let’s search between 8 different values: 111 000 001 010 011 100 101 110 111
  59. © 2020, Amazon Web Services, Inc. or its Affiliates. ©

    2020, Amazon Web Services, Inc. or its Affiliates. Your time is a limited resource, look for tools that let you focus on what you want to build
  60. © 2020, Amazon Web Services, Inc. or its Affiliates. Thank

    you! @danilop Please give me your feedback! J