building serverless applications...@model top-level entity; creates dynamodb table, resolvers, and...

35

Upload: others

Post on 12-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection
Page 2: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Building serverless applications with AWS Amplify

Derek Bingham

B U I 0 7

Senior Partner Solutions Architect

Amazon Web Services

Page 3: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Page 4: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify – a development platform

Open Source

Framework

AWS Managed

Developer

Services

Components

Page 5: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify recap: CLI

Page 6: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify recap: Client

Page 7: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify recap: Categories

Page 8: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify recap: Category adoption

Page 9: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify recap: Amplify Console

Git-based full-stack

Page 10: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

Jumpstart building serverless apps

Page 11: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Page 12: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

What's new: Native SDK’s

Amplify Clients

Use-case centric

Declarative abstractions

for example : Storage.put()

AWS Mobile SDKs

AWS Service centric

Low level generated

For example : AWSS3TransferUtilityUploadExpression

Page 13: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

What's new: Native categories

Page 14: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

Example: Predictions in IOS

Amazon

Comprehend

Amazon Polly

Amazon

Rekognition

Amazon Transcribe Amazon

Translate

Amazon

Textract

Pre-trained models

Custom models

Amazon

SageMaker

CoreML models

Page 15: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

Escape hatch

For when convention isn't enough

Currently available categories:

• Analytics

• Authentication

• Predictions

• Storage

Page 16: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Page 17: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Page 18: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

What’s new: Amplify DataStore

Multi-platform (iOS/Android/React Native/Web) on-device persistent storage engine that automatically synchronises data between mobile/web apps and the cloud using GraphQL.

Page 19: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

What’s new: Amplify DataStore

Page 20: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

What’s new: Amplify DataStore

Page 21: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection
Page 22: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

$ amplify add api

# schema.graphql

type Post @model {

id: ID!

title: String!

}

What's new: Transformers

Page 23: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type

@connection Enables relationships between @model types

@auth Enables set of authorisation rules

@searchable Handles streaming the data of an @model object type to Amazon Elasticsearch Service and configures search resolvers

@versioned Enables versioning

@function Enables adding a Lambda function as a data source

@key Enables configuring custom indexes for @model types

@predictionsAccess an orchestration of AI/ML services such as Amazon Rekognition, Amazon Translate, and/or Amazon Polly

What's new: Transformers

Page 24: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Page 25: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Page 26: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Page 27: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify tips and best practices (1)

@auth

Page 28: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify tips and best practices (2)

Page 29: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify tips and best practices (3)

Page 30: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify tips and best practices (4)

Page 31: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify tips and best practices (5)

Page 32: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

AWS Amplify tips and best practices (6)

@key

Page 33: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

Go build serverless apps(with AWS Amplify)

Page 34: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

Links and Resources

https://amplify.aws/community/

https://awsappsync.dev/

https://aws-amplify.github.io/

https://github.com/aws-amplify

Page 35: Building serverless applications...@model Top-level entity; creates DynamoDB table, resolvers, and additional schema (queries, mutations, and subscriptions) for base type @connection

Thank you!

© 2020, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Derek Bingham