Latch-free concurrent searching

US10360206B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10360206-B2
Application numberUS-201415107392-A
CountryUS
Kind codeB2
Filing dateJan 16, 2014
Priority dateJan 16, 2014
Publication dateJul 23, 2019
Grant dateJul 23, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems and methods associated with latch-free searching are disclosed. One example method includes receiving a key identifying data to be retrieved from a tree-based data structure. The method also includes performing a concurrent, latch-free search of the tree-based data structure until a leaf node is reached. The method also includes validating the leaf node. The method also includes retreading a portion of the search if the leaf node fails validation.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method, comprising: receiving a key identifying data to be retrieved from a tree-based data structure; performing a concurrent, latch-free search of the tree-based data structure until a leaf node is reached; validating the leaf node, wherein validating the leaf node comprises determining whether the leaf node passes validation, and determining whether the leaf node passes validation comprises determining at least one of whether the leaf node has a type that matches a type associated with the tree-based data structure or determining whether the leaf node is associated with the tree-based data structure; and retreading a portion of the search if the leaf node fails validation. 2. The computer-implemented method of claim 1 , further comprising one or more of providing the data if a determination is made that the leaf node passes validation or modifying the data if a determination is made that the leaf node passes validation. 3. The computer-implemented method of claim 2 , further comprising acquiring a latch associated with the leaf node in a read mode, performing a binary search on the contents of the leaf node based on the key to find the data, and releasing the latch associated with the leaf node. 4. The computer-implemented method of claim 1 , where retreading the portion of the search comprises returning to a traversed node that was previously reached during the search and continuing the search from the traversed node. 5. The computer-implemented method of claim 4 , where the traversed node is a root node of the tree-based data structure and where latches are acquired in read mode when continuing the search. 6. The computer-implemented method of claim 1 , further comprising retreading a portion of the search upon detecting an intermediate node fails a validation test. 7. The computer-implemented method of claim 6 , where a test for validity of the intermediate node is more thorough than a test for validity of a parent of the intermediate node. 8. The computer-implemented method of claim 1 , where the tree-based data structure is organized according to a B-Tree data structure. 9. A non-transitory computer-readable medium storing computer-executable instructions that when executed by a computer cause the computer to: concurrently search a tree-based data structure for a leaf node based on a key, where latches are disregarded during the search; validate the leaf node, wherein validating the leaf node comprises determining whether the leaf node passes validation, and determining whether the leaf node passes validation comprises determining at least one of whether has a type that matches a type associated with the tree-based data structure or determining whether the leaf node is associated with the tree-based data structure; and re-perform a portion of the search when the leaf node fails validation. 10. The computer-readable medium of claim 9 , wherein the instructions, when executed by the computer, further cause the computer to perform at least one of providing the data if a determination is made that the leaf node passes validation or modifying the data if a determination is made that the leaf node passes validation. 11. The computer-readable medium of claim 9 , wherein the instructions, when executed by the computer, further cause the computer to acquire a latch associated with the leaf node in a read mode, perform a binary search on the contents of the leaf node based on the key to find the data, and release the latch associated with the leaf node. 12. The computer-readable medium of claim 9 , wherein the instructions, when executed by the computer, further cause the computer to, in response to the leaf node failing validation, return to a traversed node that was previously reached during the search and continue the search from the traversed node. 13. The computer-readable medium of claim 12 , wherein the traversed node comprises a root node of the tree-based data structure, and the instructions, when executed by the computer, further cause the computer to acquire latches in a read mode when continuing the search. 14. The computer-readable medium of claim 9 , whereing the tree-based data structure comprises a B-Tree data structure.

Assignees

Inventors

Classifications

  • Locking methods, e.g. distributed locking or locking implementation details · CPC title

  • Optimistic concurrency control · CPC title

  • Query execution · CPC title

  • Trees · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10360206B2 cover?
Systems and methods associated with latch-free searching are disclosed. One example method includes receiving a key identifying data to be retrieved from a tree-based data structure. The method also includes performing a concurrent, latch-free search of the tree-based data structure until a leaf node is reached. The method also includes validating the leaf node. The method also includes retread…
Who is the assignee on this patent?
Hewlett Packard Entpr Dev Lp
What technology area does this patent fall under?
Primary CPC classification G06F16/2343. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 23 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).