×

Large string access and storage

  • US 9,977,802 B2
  • Filed: 10/27/2014
  • Issued: 05/22/2018
  • Est. Priority Date: 11/21/2013
  • Status: Active Grant
First Claim
Patent Images

1. A method, implemented by a computing system comprising one or more processors coupled to one or more memories, comprising:

  • receiving a request to access a large string value, the request comprising a value ID;

    with a value ID directory loaded into a memory of the one or more memories, determining a dictionary block ID of a dictionary block associated with the value ID, the dictionary storing string values for dictionary compression;

    from a determined dictionary block, loaded into a memory of the one or more memories, having the determined dictionary block ID and comprising one or more value blocks having value block IDs, accessing a value block having a value block ID corresponding to the value ID, the accessed value block comprising a first portion of the requested large string value and one or more logical pointers to one or more large string pages containing a remainder of the large string value;

    loading, with a processor of the one or more processors, the first portion of the large string value from the accessed value block, and loading the remainder of the large string value by dereferencing the one or more logical pointers to load from at least corresponding referenced large string pages the remainder of the large string value, providing the large string value;

    storing, with a processor of the one or more processors, the loaded large string value into a contiguous memory location of the one or more memories, the contiguous memory location comprising a plurality of sequential, addressable memory locations, the contiguous memory location further comprising an addressable starting memory location having an address;

    creating, with a processor of the one or more processors, a pointer to the starting memory address of the stored large string value;

    storing, with a processor of the one or more processors, the pointer to the large string value; and

    returning a pointer that can be dereferenced to access the stored large string value in response to the request.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×