发明名称 System and method for partitioning and indexing table data using a composite primary key
摘要 A system that implements a scaleable data storage service may maintain tables in a non-relational data store on behalf of service clients. Each table may include multiple items. Each item may include one or more attributes, each containing a name-value pair. The system may provide an API through which clients can query tables maintained by the service. Items may be partitioned and indexed in a table according to a simple or composite primary key contained in all items in the table. A composite primary key may include a hash key attribute, and a range key attribute. The range key attribute may be usable to order items having the same hash key attribute value, and to partition them dependent on a range of range key attribute values. A query request may specify a logical or mathematical expression dependent on range key attribute values and may be directed to multiple partitions.
申请公布号 US8819027(B1) 申请公布日期 2014.08.26
申请号 US201314064943 申请日期 2013.10.28
申请人 Amazon Technologies, Inc. 发明人 Sivasubramanian Swaminathan;Stefani Stefano;Buragohain Chiranjeeb;Blackman Rande A.;Rath Timothy Andrew;McAlister Grant A. M.;Kulesza Jakub;Xiao Wei;Bradford Raymond S.
分类号 G06F17/30 主分类号 G06F17/30
代理机构 Meyertons, Hood, Kivlin, Kowert & Goetzel, P.C. 代理人 Kowert Robert C.;Meyertons, Hood, Kivlin, Kowert & Goetzel, P.C.
主权项 1. A system, comprising: a plurality of computing nodes, each comprising at least one processor and memory, wherein the plurality of computing nodes is configured to implement a data storage service; wherein the data storage service provides a web services interface through which service requests are received; wherein the data storage service maintains a plurality of tables in a non-relational data store on behalf of one or more storage service clients, wherein each table is configured to store a plurality of items; wherein each of the plurality of tables is partitioned and indexed according to a respective primary key that comprises a hash key component and a range key component; wherein in maintaining a given table, the data storage service is configured to partition the given table; wherein the data storage service determines or a service request specifies a maximum number of items whose attribute values can be returned in response to a single request; wherein in response to receiving a service request to query the given table, the data storage service is configured to: determine whether any items that are stored in the given table match a query condition that is specified in the request; andreturn information indicating whether any items that are stored in the given table match the specified query condition, wherein said return information comprises return an identifier of a last item in the given table whose attribute values are returned in response to the request;wherein the identifier of thelast item is usable to specify a point in the given table for a subsequent request to begin evaluating additional items in the given table in order to apply the query condition to any remaining items in the given table; andwherein the query condition specifies a value for a hash key component of the items targeted by the query and a range key component condition.
地址 Reno NV US