aws-samples / aws-cdk-examples

Example projects using the AWS CDK
Apache License 2.0
5.15k stars 2.16k forks source link

Please add a serverless graph stack #222

Open bionicles opened 4 years ago

bionicles commented 4 years ago

:rocket: Feature Request

General Information

Description

I think a full stack React + CDK + Neptune Serverless example would be valuable for many startups because graphs enable a whole range of new queries that are mostly impossible in SQL. Serverless would help to focus on customers instead of servers and capacity guessing

Proposed Solution

Host a react front end with S3, Cloudfront, and Route53. (Easy)

Make a serverless graph API with API Gateway v2 HTTP API to a NodeJS Lambda function which handles fine grained access control and graph db CRUD (Need support for v2 API Gateway constructs)

Add a Serverless option for Neptune (not sure how hard this is) and optionally support Cypher out of the box (Gremlin is fine for me but I’d rather use Cypher)

Environment

Other information

It’s a big project. Would require help from the Neptune team to enable Serverless mode.

Please help @eladb !

richardhboyd commented 4 years ago

Currently, Neptune doesn't have a serverless capability so this feature would be blocked until such a feature is developed by the Neptune service team.

NGL321 commented 4 years ago

@bionicles This seems like an excellent idea! If you think it would be valuable this could be developed with a substitute for Neptune, or developed with server-based Neptune and adapted for serverless Neptune later.

Let me know what you think!

😸

namedgraph commented 4 years ago

Any progress on this?

NGL321 commented 4 years ago

@namedgraph I don't think anyone is presently working on this (contributions are super appreciated!). Neptune still doesn't have serverless capability, so it remains blocked on that front.

bionicles commented 4 years ago

Alas, there are 50 billion graph databases but none serverless

dekoza commented 4 years ago

Any example of Neptune CDK config set to interact with other services like S3 would be great.

vinodabh commented 3 years ago

To make some progress on this, I can add a CDK example for setting up a Neptune cluster and SageMaker Notebook workbench to interact with the graph. And it can be further evolved to have the APIs and UI on top of it.