5

What's your preferred strategy for dealing with DAX's maintenance windows?

DynamoDB itself has no MWs and is very highly available. When DAX is introduced into the mix, if it's the sole access point of clients to DDB then it becomes a SPOF. How do you then handle degradation gracefully during DAX scheduled downtimes?

My thinking was to not use the DAX Client directly but introduce some abstraction layer that allows it to fall back to direct DDB access when DAX is down. Is that a good approach?

halfer
  • 19,824
  • 17
  • 99
  • 186
Assaf Lavie
  • 73,079
  • 34
  • 148
  • 203

1 Answers1

6

DAX maintenance window doesn't take the cluster offline, unless it is a one-node cluster. DAX provides availability through multiple nodes in the cluster. For a multi-node cluster, each node in the cluster goes through maintenance in a specific order in order for the cluster to remain available. With retries configured on the DAX client, your worload shouldn't see an impact during maintenance windows.

Other than maintenance window, cluster nodes need to be divided across multiple AZs, for availability in case an AZ goes down.

An abstraction layer to fall back to DDB is not a bad idea. But you need to make sure you have the provisioned capacity configured to handle the load spike.

  • Good stuff! Is the maintenance window reboot order thing documented somewhere, or is this based on your experience? – Assaf Lavie Nov 05 '18 at 20:04
  • The maintenance window activities are considered implementation details and subject to change, so they're not currently documented. However, since this particular one has come up before, I'll see about whether something should be added to clarify the availability. – Jeff Hardy Nov 06 '18 at 16:19
  • True, I did a test with a 2-node (t2.medium) DAX cluster. From the test (actually ECS logs because I ran my test program on it) I saw that in the defined maintenance window, the 2 nodes went offline one by one with a 5 mins interval, and each node took around 2 mins to complete the maintenance. – Z.Wei Aug 05 '20 at 14:21