https://github.com/morzhanov/neptune-example
AWS Neptune Go application example
https://github.com/morzhanov/neptune-example
Last synced: 4 months ago
JSON representation
AWS Neptune Go application example
- Host: GitHub
- URL: https://github.com/morzhanov/neptune-example
- Owner: morzhanov
- Created: 2021-11-18T19:46:42.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2021-11-22T14:28:20.000Z (over 3 years ago)
- Last Synced: 2024-12-30T04:19:01.230Z (6 months ago)
- Language: Go
- Size: 36.1 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# neptune-example
AWS Neptune Go application example.
## Graph Data Schema
### Vertexes
| Vertex | Description |
|----------|:---------------------:|
| Reader | User Reader |
| Book | A Book |
| Author | User Writer |### Edges
| Edge | Source | Target |
|----------|:--------:|:--------:|
| read | Reader | Book |
| authored | Author | Book |### Example
## How it works
Simple application which uses AWS Neptune database as persistent storage. Authors create Books, Readers read Books.
Application uses Gremlin language which is supported by grammes package. For more info about Gremlin language refer to the TinkerPop docs.
For this application we are using AWS Neptune publicity available WebSockets endpoint. For more information about setup refer to the AWS Docs.
## Structure
- `/cmd` - application setup
- `/config` - .env file with environment variables
- `/internal`
- `/config` - config module based on viper package
- `/logger` - application logger, creates file transport (for filebeat) and console transport
- `/db` - Neptune database connection
- `/service` - main app service