发明名称 Sub-containment concurrency for hierarchical data containers
摘要 A sub-container concurrency component of a tiered middleware framework ensures optimistic concurrency for transactions on hierarchical data containers. The component identifies an uppermost container level of a data read for performing a requested data modification to one or more data containers. The component further reads one or more of a parent version value or a child version value of the data container in the uppermost container level at a first time and a second time. Thus, the component writes data to the one or more data containers when each version value, such as the parent version value or the child version value, read at the first time matches its corresponding read version value read at the second time.
申请公布号 US8856089(B1) 申请公布日期 2014.10.07
申请号 US201012870405 申请日期 2010.08.27
申请人 Amazon Technologies, Inc. 发明人 Briggs Gregory J.;Rohr Vincent M.
分类号 G06F17/30;G06F15/16 主分类号 G06F17/30
代理机构 Lee & Hayes, PLLC 代理人 Lee & Hayes, PLLC
主权项 1. A computer-implemented method, comprising: identifying, via one or more computing devices, an uppermost container level of a data read for performing a requested data modification to one or more data containers; reading, via at least one of the one or more computing devices, at least one of a parent version value or a child version value of a data container in the uppermost container level for a first time; determining, via at least one of the one or more computing devices, data to write to the one or more data containers based at least in part on the requested data modification; reading, via at least one of the one or more computing devices, the at least one of the parent version value or the child version value of the data container in the uppermost container level for a second time; and performing, via at least one of the one or more computing devices, a plurality of activities when individual version values from the first read match the version value from the second read, the plurality of activities including: writing the data to the one or more data containers;changing the parent version value and the child version value for individual ones of the one or more data containers, the parent version value being distinct from the child version value;changing the parent version value of individual data containers that are an ancestor to individual ones of the one or more data containers following the writing of the data to the one or more data containers; andchanging the child version value of individual data containers that are a descendent to individual ones of the one or more data containers following the writing of the data to the one or more data containers; wherein the reading for the first time and the reading for the second time individually include reading both the parent version value and the child version value in response to the data container in the uppermost container level being a sub-container, and wherein the changing the at least one of the parent version value or child version value includes updating both the parent version value and the child version value for the data container that is the sub-container.
地址 Reno NV US