EFS as an alternative to S3 or DynamoDB with VPC endpoint

0

I have a need to store and retrieve json objects using only a single primary key.

  • Average object size is 4.5 Kilobytes.
  • The workload is write-once, read-many. (There is an open design decision as to whether files could ever be rewritten)
  • All writers and readers will live within the same VPC.
  • I want the solution to be able to scale to zero, pay only for storage.
  • I need single-digit-millisecond latency on retrieval, so S3 is out.
  • Dynamodb costs $0.25 per million 4k reads, $0.25 per GB of storage, uncompressed and bloated.
  • EFS Elastic Throughput is $0.12 per million 4k reads, $0.30 per GB of storage, but I can compress the json for 80% savings.
  • The requirements will not change in the future, or if they do, a whole new solution will be built instead.
  • Writing to and reading from a file is much simpler than the DynamoDB API, so the code will be simpler, less to maintain.

Is there any reason not to choose EFS for this over DynamoDB?

AlexR
asked a year ago434 views
1 Answer
1
Accepted Answer

Your reasoning is sound. Some other things to consider:

  • If you're not leveraging DynamoDB's json document handling then you can also compress the json there as you propose for EFS.
  • Although not an immediate issue, the DynamoDB solution is likely more flexible should your requirements expand.
  • You're talking about scaling to zero so I'm guessing your volumes are low, but if you do end up having high volumes then DAX could be worth enabling with DynamoDB.
EXPERT
answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions