Patent ID: 8880502
Filing Date: 2014-11-04
Classification: G06F,H04L

Abstract:
1. A search method comprising steps of: searching a range of user defined search attributes from a search query in a set of values in a distributed hash table database to determine at least one database node of a distributed database wherein the search will be performed, wherein each of the at least one database nodes stores a subset of a searched value in one or more distributed storage entities, said searched value comprising: at least one file or other data stored, said searched value representing a data attribute stored in the distributed storage network, wherein the step of searching comprises the following steps: splitting said range of user defined search attributes into a set of subranges, wherein each subrange of said user defined search attributes comprises a subset of the values of said user defined search attribute, by: associating each subrange of data attribute values with a database node of the hierarchical tree structure, wherein said hierarchical tree structure comprises nodes on different levels; wherein each subrange represents a maximum value range which can be accessed from the node; generating an encoded query packet combining each subrange, for the set of subranges by generating a subquery for each subrange of said set of subranges; combining the subqueries with set operators, wherein: a value represents data characterized by said value, and said hierarchical structure comprises a tree structure, and the set of subranges in total covers the searched range, and a node of said hierarchical structure comprises a list which list indicates data characterized by a value which value belongs to a subrange associated to said node; said range is split up into said set of subranges, said set comprising a minimum number of subranges; said range is split up into said set of subranges which set in total covers the range; said range is split up into said set of subranges in such a way that data to be transferred in response to the query is minimized; transmitting the encoded query packet to one or more of said distributed storage entities for performing a query; wherein the transmitting step comprises transmitting the encoded query packet sequentially from one of distributed storage entities to another one of the distributed storage entities, wherein each of such storage entities performs a subquery from the encoded query packet, combines the result of said subquery with a query result provided by a previous distributed storage entity by applying the corresponding set operator, and forwards a result of this combination; and returning documents within the searched range of data attribute values.