G06F2212/163

PRESERVING DATA INTEGRITY DURING CONTROLLER FAILURE

Systems and processes are disclosed to preserve data integrity during a storage controller failure. In some examples, a storage controller of an active-active controller configuration can back-up data and corresponding cache elements to allow a surviving controller to construct a correct state of a failed controller's write cache. To accomplish this, the systems and processes can implement a relative time stamp for the cache elements that allow the backed-up data to be merged on a block-by-block basis.

MEMORY SHARING FOR WORKING DATA USING RDMA
20170277655 · 2017-09-28 ·

A server system may include a cluster of multiple computers that are networked for high-speed data communications. Each of the computers has a remote direct memory access (RDMA) network interface to allow high-speed memory sharing between computers. A relational database engine of each computer is configured to utilize a hierarchy of memory for temporary storage of working data, including in order of decreasing access speed (a) local main memory, (b) remote memory accessed via RDMS, and (c) mass storage. The database engine uses the local main memory for working data, and additionally uses the RDMA accessible memory for working data when the local main memory becomes depleted. The server system may include a memory broker to which individual computers report their available or unused memory, and which leases shared memory to requesting computers.

Efficient storage and retrieval of sparse arrays of identifier-value pairs
09747363 · 2017-08-29 · ·

Some computer applications, such as database applications, generate sparse arrays that map identifiers to field values. To reduce memory usage, only those blocks of the array with non-empty entries are stored, and only the entries between and including the first non-empty entry and the last non-empty entry are stored. The offset and length of this range of non-empty entries is stored. To retrieve a value for an entry of the array, it is determined whether the entry is in an empty block or a non-empty block. If the entry is in an empty block, a null value is returned for the entry. If the entry is not in the stored range of entries for a non-empty block, a null value is returned for the entry. Otherwise, the value stored in the block for that entry is returned.

CACHE OPTIMIZATION FOR MISSING DATA

Cache optimization for missing data is provided. A database system receives a first request for a database record. The database system determines whether the database record is stored in a cache. The database system determines whether the database record is stored in a data store in response to a determination that the database record is not stored in the cache. The database system stores a dummy entry for the database record in the cache in response to a determination that the database record is not stored in the data store. The database system receives a second request for the database record. The database system determines whether the database record is stored in the cache. The database system outputs an indication that the database record is unavailable in response to a determination that the dummy entry stored for the database record is in the cache.

System performance logging of complex remote query processor query operations

Described are methods, systems and computer readable media for performance logging of complex query operations.

Client voting-inclusive in-memory data grid (IMDG) cache management

A client application cache access profile is created that documents accesses over time to data cached within an in-memory data grid (IMDG) cache by each of a set of client applications that utilize the IMDG. A new data request is received from one of the set of client applications that includes a client-application data caching vote that specifies whether the requesting client application wants the newly-requested data cached. In response to an IMDG cache data miss related to the new data request, a determination is made as to whether to cache the newly-requested data based upon analysis of the client application cache access profile of the client application from which the new data request was received, IMDG system performance cache costs of caching the newly-requested data, and the client-application data caching vote. The newly-requested data is cached within the IMDG cache in response to determining to cache the newly-requested data.

Common file caching for virtual private servers

A host runs an operating system kernel. A plurality of virtual private servers (containers) is supported within the kernel. The containers use the same files. A template cache has pre-calculated file checksums. The checksum is calculated each time the file is created and/or modified. Each file has an inode containing an attribute indicating whether the checksum is calculated and stored along with the file. If the checksum is present, the process is redirected to access the file with the same inode in the shared disk cache.

REDUCED PAGE LOAD TIME UTILIZING CACHE STORAGE

A cache that can be stored in a user partitioned region of storage and utilized to reduce the amount of time required to present content responsive to content requests is described. A request for content associated with a region of a user interface can be received and data corresponding to a list item in a cache can be accessed. Content associated with the data can be presented in the region of the user interface via a same presentation as a most recent presentation of the content. At a time subsequent to when the content is initially presented in the region, new data associated with the list item can be retrieved. In examples where the new data corresponds to updated data, the presentation can be modified based partly on the updated data and the new data can be written to the cache in a location corresponding to the list item.

Just-in-time data provision based on predicted cache policies

Systems, and methods are provided for predicting a cache policy based on application input data. Inputs provided to an application and corresponding to a usage pattern of the application can be received. The inputs can be used with a predictive model to determine a cache policy corresponding to a datastore. The cache policy can include output data to be provided via in the datastore and subsequently provided to a computing device in a just-in-time manner. The predictive model can be trained to output the cache policy based on input data received from a usage point, a provider point, or a datastore configuration.

Expanding variable sub-column widths as needed to store data in memory
09766808 · 2017-09-19 · ·

A set of data storage values is received. It is determined that a data storage value in the set will not fit in an available memory segment including variable data column widths based at least in part on data sizes specified in a plurality of segment layout maps. A memory segment is selected for which a column width of a column will be expanded. A column width of the selected memory segment is expanded. A segment layout map corresponding to the selected memory segment is updated. The set of data storage values is stored in the selected memory segment.