-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Introduce Dynamo model #69
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome! Love the idea of the "managed" instance/drive to skip simulation.
Just a few pieces of feedback and some nitpicks.
AccessConsistency.best_effort, | ||
AccessConsistency.eventual, | ||
AccessConsistency.read_your_writes, | ||
AccessConsistency.never, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe DDB can do up to serializable
(essentially all consistency levels) in the same region
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
let me update this
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You could probably determine the default strong/weak via this as well (if someone asks for eventual, you don't need to bill for strong reads)
@@ -325,6 +325,92 @@ def models(self) -> Dict[str, CapacityModel]: | |||
def hardware_shapes(self) -> HardwareShapes: | |||
return self._shapes | |||
|
|||
def _plan_percentiles( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Introduced this method to address the following issue.
Previously the steps to generate percentile plan was
- generate percentile desires
- plan_certain using the generated desires
Issue in the above is, when percentile desires are generated the attributes that are not supplied by user are replaced with defaults declared in CapacityDesires interface. This results inparent_desires.merge_with
not merging the defaults i.e. not merging the model defaults for attributes that are not supplied by user.
To mitigate the above issue, we first generate desires by merging with model defaults and then generate the percentile desires using the merged desires.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice find
3f2041e
to
4fb594f
Compare
4fb594f
to
0f4e682
Compare
No description provided.