Caching Patents (Class 711/113)
  • Patent number: 11068162
    Abstract: Storage management within a cloud-based data store, including: receiving one or more data objects for storage; selecting, based at least upon a storage policy and upon one or more characteristics of storage data, one or more storage classes from among a plurality of storage classes of one or more data storage services; and storing the one or more data objects to the selected one or more storage classes of the one or more data storage services.
    Type: Grant
    Filed: July 2, 2019
    Date of Patent: July 20, 2021
    Assignee: Pure Storage, Inc.
    Inventors: Dirk Meister, Subramaniam Periyagaram, Reese Robertson, Prudhvi Lokireddy
  • Patent number: 11061826
    Abstract: A minimum retention time in cache is indicated for a first plurality of tracks, where no minimum retention time is indicated for a second plurality of tracks. A cache management application demotes a track of the first plurality of tracks from the cache, in response to determining that the track is a least recently used (LRU) track in a LRU list of tracks in the cache and the track has been in the cache for a time that exceeds the minimum retention time.
    Type: Grant
    Filed: June 26, 2018
    Date of Patent: July 13, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Lokesh M. Gupta, Kyler A. Anderson, Joseph Hayward, Matthew G. Borlick
  • Patent number: 11048631
    Abstract: Provided are a computer program product, system, and method for maintaining cache hit ratios for insertion points into a cache list to optimize memory allocation to a cache. A plurality of insertion points to a cache list for the cache each identify a track in the cache list. Insertion points to tracks in the cache list are used to determine locations in the cache list at which to indicate tracks in the cache in the cache list that are to be indicated at the MRU end of the cache list. Indication is made of cache hits for each of the insertion points used to indicate locations in the cache list for tracks accessed while indicated in the cache list. The cache hits indicated for the insertion points are to indicate whether to increase or decrease a size of the cache.
    Type: Grant
    Filed: August 7, 2019
    Date of Patent: June 29, 2021
    Assignee: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Kyler A. Anderson, Kevin J. Ash, Matthew J. Kalos
  • Patent number: 11042383
    Abstract: A system and method for boot speed optimization is discussed. Uncompressed copies of UEFI firmware volumes and OS boot loader files stored on a portion of an NVDIMM are used during a boot sequence in a computing platform. The cached copies on the NVDIMM are used during the boot sequence after a successful validation check is performed to provide faster boots of the computing platform.
    Type: Grant
    Filed: February 3, 2019
    Date of Patent: June 22, 2021
    Assignee: Insyde Software Corp.
    Inventors: Timothy Andrew Lewis, Trevor Western
  • Patent number: 11037269
    Abstract: Described herein are devices, systems and methods to utilize non-volatile memory to save and retrieve data that is used to accelerate the load and resume of GPU accelerated applications. Non-volatile memory and GPU logic are configured to enable the GPU to directly access the non-volatile memory to enable data to be read without requiring the data to traverse the CPU and CPU memory. This data access path creates a faster method for loading data into GPU local memory.
    Type: Grant
    Filed: March 27, 2020
    Date of Patent: June 15, 2021
    Assignee: Intel Corporation
    Inventors: Travis Schluessler, Zack Waters, Charles Moidel, Michael Apodaca, Murali Ramadoss
  • Patent number: 11036405
    Abstract: Example methods and systems are provided for a computer system to transfer runtime information between a first kernel module and a second kernel module. In one example, the method may comprise assigning ownership of a memory pool to the first kernel module; and the first kernel module accessing the memory pool to store runtime information associated with one or more operations performed by the first kernel module. The method may also comprise releasing ownership of the memory pool from the first kernel module while maintaining the runtime information in the memory pool; and assigning ownership of the memory pool to the second kernel module. The second kernel module may then access the memory pool to obtain the runtime information stored by the first kernel module.
    Type: Grant
    Filed: September 7, 2018
    Date of Patent: June 15, 2021
    Assignee: VMWARE, INC.
    Inventors: Jingmin Zhou, Subrahmanyam Manuguri, Anirban Sengupta
  • Patent number: 11036509
    Abstract: In one embodiment, a processor includes a fetch logic to fetch instructions, a decode logic to decode the fetched instructions, and an execution logic to execute at least some of the instructions. The decode logic may determine whether a flag portion of a first instruction to be folded is to be performed, and if not, accumulate a first immediate value of the first instruction with a folded immediate value obtained from an entry of an immediate buffer. Other embodiments are described and claimed.
    Type: Grant
    Filed: November 3, 2015
    Date of Patent: June 15, 2021
    Assignee: INTEL CORPORATION
    Inventors: Zeev Sperber, Tomer Weiner, Amit Gradstein, Simon Rubanovich, Alex Gerber, Itai Ravid
  • Patent number: 11036397
    Abstract: According to one general aspect, an apparatus may include a processor, a heterogeneous memory system, and a memory interconnect. The processor may be configured to perform a data access on data stored in a memory system. The heterogeneous memory system may include a plurality of types of storage mediums. Each type of storage medium may be based upon a respective memory technology and may be associated with one or more performance characteristics. The heterogeneous memory system may include both volatile and non-volatile storage mediums. The memory interconnect may be configured to route the data access from the processor to at least one of the storage mediums based, at least in part, upon the one or more performance characteristic associated with the respective memory technologies of the storage media.
    Type: Grant
    Filed: August 16, 2019
    Date of Patent: June 15, 2021
    Inventors: Siamack Haghighi, Robert Brennan
  • Patent number: 11036644
    Abstract: When a data processing operation requires data that is stored in a first cache and the fetching of the data into the first cache is dependent upon data stored in another cache, and an attempt to read the data from the first cache “misses”, the data processing operation is added to a record of data processing operations that have missed in the first cache and the data that is required for the data processing operation is fetched into the first cache by reading the data that is required to fetch the data into the first cache from the another cache and then using that data from the another cache to fetch the required data into the first cache. When the data that is required for the data processing operation has been fetched into the first cache, the data processing operation is performed using the fetched data.
    Type: Grant
    Filed: February 2, 2017
    Date of Patent: June 15, 2021
    Assignee: Arm Limited
    Inventors: Andreas Due Engh-Halstvedt, Edvard Fielding
  • Patent number: 11029862
    Abstract: A system and method for metadata storage includes use of a storage controller to receive a write operation from a host, create a metadata entry for storing metadata associated with data written by the write operation, and store the metadata entry into a metadata store. The metadata store includes a plurality of active partitions, a plurality of inactive partitions, and a queue identifying locations in the active partitions where the metadata entry may be stored. The metadata store is further used to access data written to one or more storage devices. Storing the metadata entry into the metadata store includes popping a first location from the queue, identifying a first active partition from the active partitions based on the first location, and storing the metadata entry in the first active partition. In some embodiments, each of the active partitions may be organized into two or more tiers.
    Type: Grant
    Filed: April 25, 2017
    Date of Patent: June 8, 2021
    Assignee: NETAPP, INC.
    Inventor: Joseph Blount
  • Patent number: 11030159
    Abstract: Setting up and supporting the computer infrastructure for a remote satellite office is a difficult task for any information technology department. To simplify the task, an integrated server system with a hierarchical storage system is proposed. The hierarchical storage system includes the ability to store data at an off-site cloud storage service. The server system is remotely configurable and thus allows the server to be configured and populated with data from a remote location.
    Type: Grant
    Filed: April 24, 2019
    Date of Patent: June 8, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Maurilio Cometto, Gururaj Pangal, Ady Degany
  • Patent number: 11030114
    Abstract: Methods, computer program products, and systems are presented. The method computer program products, and systems can include, for instance: collecting logging data generated by operation of a distributed computing system that is used by a plurality of tenants; storing the logging data as a plurality of files stored in a multi tier, shared volume storage system, with the storage of the logging data as a plurality of files including: dividing the plurality of files among and between a plurality of shared volume data structures, and organizing each shared volume data structure of the plurality of shared volume data structures according to a plurality of tiers; for each given file of the plurality of files; and mapping, by a domain agent and in a mapping table data structure, an association between the given file and the shared volume data structure in which the given file is stored.
    Type: Grant
    Filed: April 17, 2019
    Date of Patent: June 8, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Zi Lian Ji, Lin Juan Xia, Xian Dong Meng, Shi Xin Ruan
  • Patent number: 11023381
    Abstract: An object is to suppress a process of evicting cached data so as to improve a throughput of an entire system. A storage controller includes an access request section and an operation management section. The access request section requests access to a first storage and to a second storage that is higher in response speed than the first storage, the second storage storing part of data stored in the first storage. The operation management section manages, based on a usage state of the second storage, whether or not to transfer from the first storage to the second storage data targeted for access but not stored in the second storage.
    Type: Grant
    Filed: February 5, 2018
    Date of Patent: June 1, 2021
    Assignee: SONY SEMICONDUCTOR SOLUTIONS CORPORATION
    Inventors: Teruya Kaneda, Kenichi Nakanishi, Hideaki Okubo
  • Patent number: 11016918
    Abstract: In certain embodiments, a memory module includes a printed circuit board (PCB) having an interface that couples it to a host system for provision of power, data, address and control signals. First, second, and third buck converters receive a pre-regulated input voltage and produce first, second and third regulated voltages. A converter circuit reduces the pre-regulated input voltage to provide a fourth regulated voltage. Synchronous dynamic random access memory (SDRAM) devices are coupled to one or more regulated voltages of the first, second, third and fourth regulated voltages, and a voltage monitor circuit monitors an input voltage and produces a signal in response to the input voltage having a voltage amplitude that is greater than a threshold voltage.
    Type: Grant
    Filed: December 30, 2020
    Date of Patent: May 25, 2021
    Assignee: Netlist, Inc.
    Inventors: Chi-She Chen, Jeffrey C. Solomon, Scott H. Milton, Jayesh Bhakta
  • Patent number: 11016848
    Abstract: In a data storage system with distributed data storage units, initialization-less parity can be practiced with a storage controller connected to a storage memory and multiple data storage units. Data locations of data storage devices of the respective data storage units can be arranged as distributed data storage groups as directed by the storage controller prior to receiving a write request to a distributed data storage group. Unwritten data locations of the distributed data storage group are identified by consulting the storage memory and each unwritten data storage location may be assumed to have a zero value when computing parity data for the distributed data storage group.
    Type: Grant
    Filed: November 2, 2017
    Date of Patent: May 25, 2021
    Assignee: Seagate Technology LLC
    Inventor: Chetan Bendakaluru Lingarajappa
  • Patent number: 10997263
    Abstract: Disclosed embodiments relate to systems and methods for reducing lag time for progressive consumption of data content. Techniques include receiving an indication of requested data, the indication comprising: a data chunk size, and a number of data chunks, accessing a data cache, and performing a fetching operation comprising at least one of: if the data cache is empty, obtaining a first portion of the requested data from a database, or if the data cache is not empty, determining whether at least the first portion of the requested data is available in the data cache. Further techniques include providing for consumption the first portion of the data, identifying that a threshold has been reached, receiving updated values for the data chunk size and the number of data chunks, performing the fetching operation again based on the updated values, and providing for consumption a second portion of the requested data.
    Type: Grant
    Filed: October 14, 2020
    Date of Patent: May 4, 2021
    Assignee: Cyber Ark Software Lid.
    Inventor: Niv Rabin
  • Patent number: 10983870
    Abstract: The systems and methods herein permit storage systems to correctly perform data recovery, such as direct access recovery, of Network Data Management Protocol (“NDMP”) backup data that was modified prior to being stored in secondary storage media, such as tape. The systems and methods permit NDMP backup data to be encrypted, compressed, deduplicated, and/or otherwise modified prior to storage. The systems and methods herein also permit a user to perform a precautionary snapshot of the current state of data (e.g., primary data) prior to reverting data to a previous state using point-in-time data.
    Type: Grant
    Filed: March 8, 2019
    Date of Patent: April 20, 2021
    Assignee: Commvault Systems, Inc.
    Inventors: Duncan Alden Littlefield, Vimal Kumar Nallathambi, Girish Chanchlani
  • Patent number: 10983792
    Abstract: A memory device performing an internal copy operation is provided. The memory device may receive a source address, a destination address, and page size information together with an internal copy command, compares the source address with the destination address, and performs an internal copy operation. The internal copy operation may be an internal block copy operation, an inter-bank copy operation, or an internal bank copy operation. The internal copy operation may be performed with respect to one-page data, half-page data, or quarter-page data, based on the page size information. The memory device may output as a flag signal a copy-done signal indicating that the internal copy operation has been completed.
    Type: Grant
    Filed: November 13, 2018
    Date of Patent: April 20, 2021
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Young-soo Sohn, Sei-jin Kim, Kwang-il Park, Tae-young Kim, Chul-woo Park
  • Patent number: 10977379
    Abstract: This disclosure describes techniques implemented partly by a service provider to monitor a cloud-based service by generating and placing canary records in storage locations along with real records to identify improper access events of the records or other data. The service provider may detect an access event where records in a storage location were accessed, and determine whether a canary record was accessed. If a canary record was accessed, the service provider may determine that the access event was potentially performed by a malicious entity because authorized users generally may not have reason to access a canary record when utilizing their cloud-based service. The service provider may generate canary records that are difficult to identify by a malicious entity, and may position canary records in the storage locations to help ensure that the canary records are accessed by a malicious entity during an improper access event.
    Type: Grant
    Filed: June 13, 2018
    Date of Patent: April 13, 2021
    Assignee: Amazon Technologies, Inc.
    Inventors: Bryan Williams, Khai Tran
  • Patent number: 10977215
    Abstract: A data de-duplication system includes a storage device that includes multiple data sets, a fixed read-only storage area, and a processing device configured to perform certain functions. The system determines whether each of the multiple data sets has met a common pattern criteria, and if so, identifies the data set as a candidate data set for de-duplication. The common pattern criteria is indicative of whether a chunk data is frequently accessed among multiple users on a cloud. The system stores data in at least one candidate data sets in the fixed storage area. For each of the at least candidate data sets, the system generates a unique pointer that corresponds to a location of the at least one candidate data sets in the fixed storage area. The system further uses the pointers to de-duplicate the at least one candidate data sets.
    Type: Grant
    Filed: August 8, 2017
    Date of Patent: April 13, 2021
    Assignee: International Business Machines Corporation
    Inventors: Ezra Hartz, Heiko Schloesser
  • Patent number: 10963189
    Abstract: Coalescing write operations in a cloud-based storage system including receiving, from a storage controller application of the cloud-based storage system, a first plurality of write operations, wherein each of the first plurality of write operations comprises a respective write to a storage volume; coalescing the first plurality of write operations into a plurality of coalesced write operations, wherein each of the coalesced write operations are configured to effect two or more of the first plurality of write operations; and performing the plurality of coalesced write operations on the storage volume.
    Type: Grant
    Filed: July 23, 2019
    Date of Patent: March 30, 2021
    Assignee: Pure Storage, Inc.
    Inventors: Naveen Neelakantam, Joshua Freilich
  • Patent number: 10956322
    Abstract: In one embodiment, storage drive dependent track removal processing logic performs destage tasks for tracks cached in a cache as a function of whether the storage drive is classified as a fast class or as slow class of storage drives, for example. In one embodiment, a destage task configured for a slow class storage drive, transfers an entry for a track selected for destaging from a main cache list to a wait cache list to await destaging to the slow class drive. A destage task configured for a fast class storage drive allows the cache list entry for the selected track to remain on the main cache list while the selected track is being destaged to the fast class storage drive, thereby bypassing the transfer of the entry to a wait cache list. Other features and aspects may be realized, depending upon the particular application.
    Type: Grant
    Filed: June 2, 2016
    Date of Patent: March 23, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kevin J. Ash, Matthew G. Borlick, Lokesh M. Gupta, Trung N. Nguyen
  • Patent number: 10942683
    Abstract: Technical solutions are described for reducing page invalidation broadcasts in a computer system. An example method includes pre-allocating a pool of large memory frames by a real storage manager. The method also includes receiving, by a virtual storage manager, an instruction from an application to allocate a memory buffer, where the instruction includes a request to back the memory buffer using large pages. The virtual storage manager, in response to the instruction, allocates the memory buffer from the pre-allocated pool of large memory frames.
    Type: Grant
    Filed: October 28, 2015
    Date of Patent: March 9, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David Hom, James H. Mulder, Paula M. Spens, Elpida Tzortzatos
  • Patent number: 10936451
    Abstract: In a data storage system in which a first storage array and a second storage array maintain first and second replicas of a production volume, the first storage array is responsive to a write command from a host to send a notification to the second storage array indicating that the replicated production volume will be updated. The notification has information that enables the second storage array to implement pre-processing steps to prepare for subsequent receipt of data associated with the write command. Both storage arrays implement the pre-processing steps at least partly concurrently. When the data associated with the write command is subsequently received, the first storage array writes the data to cache and then sends a copy of the data to the second storage array, i.e. in series. The second storage array then writes the data to cache. Elapsed time between receipt of the write command and returning an acknowledgment to the host may be improved by concurrent pre-processing.
    Type: Grant
    Filed: October 24, 2018
    Date of Patent: March 2, 2021
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Toufic Tannous, Bhaskar Bora, Deepak Vokaliga
  • Patent number: 10936412
    Abstract: According to some embodiments, a backup storage system receives a request from a client to access a data segment. The system looks up an in-memory index for a first entry based on a fingerprint of the data segment, such that the in-memory index includes a number of entries, each entry mapping a fingerprint to a storage location of a solid state device (SSD) storing a corresponding data segment. In the event a first entry is found, the system retrieves the data segment from the SSD device based on the first entry. In the event of a read failure while accessing the SSD device, the system determines failed data blocks of the SSD device associated with the failure event and invalidates the failed data blocks of the SSD device such that subsequent access to the failed data blocks are denied without having to access a corresponding SSD device.
    Type: Grant
    Filed: April 17, 2017
    Date of Patent: March 2, 2021
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Satish Visvanathan, Rahul B. Ugale
  • Patent number: 10929051
    Abstract: A method includes obtaining, by a computing entity of a multi-cloud dispersed storage network (DSN) system, a multi-cloud storage request to write a data object to the multi-cloud DSN system from a requester. The method further includes sending, by the computing entity, the multi-cloud storage request to a data director module. The method further includes determining a multi-cloud storage scheme to execute the multi-cloud storage request, executing the multi-cloud storage scheme to store the data object in a set of two or more cloud storage systems, generating an index regarding the storage of the data object, and notifying the requester of an estimated response time of the set of two or more cloud storage systems. The method further includes monitoring the performance information of the set of two or more cloud storage systems and data object usage information of the data object to determine a multi-cloud storage performance level.
    Type: Grant
    Filed: May 31, 2019
    Date of Patent: February 23, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Gregory R. Hintermeister
  • Patent number: 10922228
    Abstract: Systems and methods for accessing data stored in multiple locations. A cache and a storage system are associated with an index. Entries in the index identify locations of data in both the cache and the storage system. When an index lookup occurs and an entry in the index identifies at least two locations for the data, the locations are ordered based on at least one factor and the data stored in the optimal location as determined from the at least one factor is returned.
    Type: Grant
    Filed: March 31, 2015
    Date of Patent: February 16, 2021
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Grant R. Wallace, Philip N. Shilane, Mahesh Kamat
  • Patent number: 10915262
    Abstract: A hybrid storage device includes a first storage medium configured to store data at a first speed and a second storage medium configured to store data at a second speed. The first storage medium may be a NAND flash storage medium, and the second storage medium may be disc storage medium. Partitions of the first storage medium are associated with partitions of the second storage medium to form at least two storage tiers. Each of the storage tiers may include different NAND partition capacities. The storage device further includes a peer to peer communication channel between the first storage medium and the second storage medium for moving data between a NAND partition and HDD partition. The storage device is accessible via a dual port SAS or PCIe interface.
    Type: Grant
    Filed: March 13, 2018
    Date of Patent: February 9, 2021
    Assignee: SEAGATE TECHNOLOGY LLC
    Inventors: Rajesh Maruti Bhagwat, Nitin S. Kabra, Nilesh Govande, Manish Sharma, Joe Paul Moolanmoozha, Alexander Carl Worrall
  • Patent number: 10909118
    Abstract: 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.
    Type: Grant
    Filed: February 4, 2016
    Date of Patent: February 2, 2021
    Assignee: salesforce.com, inc.
    Inventors: Pallavi Savla, Gurdeep Singh Sandle, George Vitchev, Prabhjot Singh, Steven Marshall Cohen
  • Patent number: 10902126
    Abstract: Provided are a computer program product, system, and method for verification of a boot loader program at a control unit to be provided to a host system to load an operating system. A stored value is generated from a cryptographic function applied to portions of a boot loader program stored in the storage. The boot loader program is read from the storage in response to execution of a boot loader request from the host system. The cryptographic function is applied to at least a portion of the read boot loader program to produce a calculated value. The host system is provided access to the boot loader program to use to load the operating system from the storage into the host system in response to the calculated value matching the stored value.
    Type: Grant
    Filed: March 10, 2017
    Date of Patent: January 26, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Peter G. Sutton, Harry M. Yudenfriend
  • Patent number: 10896162
    Abstract: Systems and methods to manage database data are provided. A particular method includes automatically identifying a plurality of storage devices. The storage devices include a first device of a first type and a second device of a second type. The first type includes a solid state memory device. The method may further identify a high priority data set of the database. A rebalancing operation is conducted that includes moving the high priority data set to the solid state memory device and substantially evening distribution of other data of the database among the storage devices.
    Type: Grant
    Filed: December 22, 2017
    Date of Patent: January 19, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Harshwardhan S. Mulay, Abhinay R. Nagpal, Sandeep Ramesh Patil, Yan Wang Stein
  • Patent number: 10891233
    Abstract: Systems, apparatuses and methods may provide for technology to automatically identify a plurality of non-volatile memory locations associated with a file in response to a close operation with respect to the file and automatically conduct a prefetch from one or more of the plurality of non-volatile memory locations that have been most recently accessed and do not reference cached file segments. The prefetch may be conducted in response to an open operation with respect to the file and on a per-file segment basis.
    Type: Grant
    Filed: June 28, 2018
    Date of Patent: January 12, 2021
    Assignee: Intel Corporation
    Inventors: Scott Burridge, William Chiu, Jawad Khan, Sanjeev Trika
  • Patent number: 10891145
    Abstract: Systems and methods are described for transforming a data set within a data source into a series of task calls to an on-demand code execution environment or other distributed code execution environment. Such environments utilize pre-initialized virtual machine instances to enable execution of user-specified code in a rapid manner, without delays typically caused by initialization of the virtual machine instances, and are often used to process data in near-real time, as it is created. However, limitations in computing resources may inhibit a user from utilizing an on-demand code execution environment to simultaneously process a large, existing data set. The present application provides a task generation system that can iteratively retrieve data items from an existing data set and generate corresponding task calls to the on-demand computing environment, while ensuring that at least one task call for each data item within the existing data set is made.
    Type: Grant
    Filed: March 30, 2016
    Date of Patent: January 12, 2021
    Assignee: Amazon Technologies, Inc.
    Inventors: Timothy Allen Wagner, Marc John Brooker, Ajay Nair
  • Patent number: 10884820
    Abstract: Various systems and methods are provided for receiving replication data at a recovery site from a replication process initiated on a primary site, where the recovery site includes at least a first gateway appliance and a second gateway appliance that can be used to process the replication data. The systems and methods further involve evaluating a replication load of the first gateway appliance, which includes analyzing at least a first evaluation factor and a second evaluation factor related to the replication process, and in response to evaluating the evaluation factors, determining whether the first gateway appliance is overloaded. In response to determining that the first gateway appliance is overloaded, rebalancing a replication workload between the first gateway appliance and the second gateway appliance.
    Type: Grant
    Filed: August 31, 2018
    Date of Patent: January 5, 2021
    Assignee: Veritas Technologies LLC
    Inventors: Pramila Dhaka, Parikshit Hooda
  • Patent number: 10873462
    Abstract: A method of performing a computation by an untrusted entity includes: storing a state of the computation at a plurality of points of the computation; generating a plurality of hashes based on the state of the computation at points of the computation; generating a hash tree including a plurality of leaf nodes corresponding to the plurality of hashes of states of the computation and further wherein internal tree nodes are derived as the hash of at least two child nodes; creating at least one pair of paths from a root of the hash tree to the leaf nodes corresponding to the plurality of hashes of states of the computation, selecting the point in the computation corresponding to the leaf node of a created path, along with a succeeding point in the computation; and transmitting a proof of the computation comprising the at one path of the hash tree and siblings of the path to one or more third party entities for verification.
    Type: Grant
    Filed: June 21, 2018
    Date of Patent: December 22, 2020
    Inventors: Volkmar Frinken, Guha Jayachandran
  • Patent number: 10860255
    Abstract: A system, method and apparatus directed to fast data storage on a block storage device. New data is written to an empty write block. If the new data is compressible, a compressed version of the new is written into the meta data. A location of the new data is tracked. Meta data associated with the new data is written. A lookup table may be updated based in part on the meta data. The new data may be read based the lookup table configured to map a logical address to a physical address. Disk operations may use state data associated with the meta data to determine the empty write block. A write speed-limit may also be determined based on a lifetime period, a number of life cycles and a device-erase-sector-count for the device. A write speed for the device may be slowed based on the determined write speed-limit.
    Type: Grant
    Filed: April 1, 2019
    Date of Patent: December 8, 2020
    Inventors: Douglas Dumitru, Samuel J. Anderson
  • Patent number: 10860493
    Abstract: A method and an apparatus for data storage system are provided. The method comprises: receiving an I/O request from an upper layer, the I/O request including an I/O type identifier; determining an I/O type of the I/O request based on the I/O type identifier; and processing the I/O request based on the determined I/O type. The present disclosure also provides a corresponding apparatus. The method and the apparatus according to the present disclosure can determine a storage policy of corresponding data based on different I/O types to improve the overall system performance.
    Type: Grant
    Filed: September 19, 2016
    Date of Patent: December 8, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Xinlei Xu, Liam Xiongcheng Li, Jian Gao, Lifeng Yang, Ruiyong Jia
  • Patent number: 10852965
    Abstract: A storage system comprising a plurality of storage devices and an associated storage controller. The plurality of storage devices are configured to store data blocks distributed across the plurality of storage devices in a plurality of data stripes. The plurality of data stripes comprise a first set of data stripes and a second set of data stripes. The storage controller is configured to receive data associated with at least one input-output request and to store the received data sequentially in at least one data stripe of the first set of data stripes. The controller is further configured to determine whether or not an amount of data stored in the first set of data stripes is greater than a threshold amount of data and in response to determining that the amount of data stored in the first set of data stripes is greater than the threshold amount of data, to destage the at least one data stripe of the first set of data stripes to the second set of data stripes.
    Type: Grant
    Filed: October 30, 2018
    Date of Patent: December 1, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Boris Glimcher, Zvi Schneider, Amitai Alkalay, Kirill Shoikhet
  • Patent number: 10853254
    Abstract: There are provided a memory controller and a memory system having the same. A memory controller includes: a command queue for queuing commands and outputting command information including Information of a previous command and a subsequent command; a command detector for outputting a detection signal according to the command information; and a command generator for generating the command and outputting a management command for managing a last command immediately following the previous command in response to the detection signal.
    Type: Grant
    Filed: August 21, 2018
    Date of Patent: December 1, 2020
    Assignee: SK hynix Inc.
    Inventor: Jeen Park
  • Patent number: 10853252
    Abstract: In a hybrid storage array that implements hierarchical storage tiering the eviction of host application data from cache is coordinated with promotion and demotion of host application data between hierarchical storage tiers. Optimal distribution of read cache size per different storage objects may be determined based on cache miss cost. The cost or benefit of promotion and demotion may be determined based on read cache hits and misses.
    Type: Grant
    Filed: January 30, 2019
    Date of Patent: December 1, 2020
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventor: Nickolay Dalmatov
  • Patent number: 10853339
    Abstract: A method of negotiating memory record ownership between network nodes, comprising: storing in a memory of a first network node a subset of a plurality of memory records and one of a plurality of file system segments of a file system mapping the memory records; receiving a request from a second network node to access a memory record of the memory records subset; identifying the memory record by using the file system segment; deciding, by a placement algorithm, whether to relocate the memory record, from the memory records subset to a second subset of the plurality of memory records stored in a memory of the second network node; when a relocation is not decided, providing remote access of the memory record via a network to the second network node; and when a relocation is decided, relocating the memory record via the network for management by the second network node.
    Type: Grant
    Filed: September 27, 2019
    Date of Patent: December 1, 2020
    Assignee: NetApp Inc.
    Inventor: Amit Golander
  • Patent number: 10838763
    Abstract: A network interface device has an input configured to receive data from a network. The data is for one of a plurality of different applications. The network interface device also has at least one processor configured to determine which of a plurality of available different caches in a host system the data is to be injected by accessing to a receive queue comprising at least one descriptor indicating a cache location in one of said plurality of caches to which data is to be injected, wherein said at least one descriptor, which indicates the cache location, has an effect on subsequent descriptors of said receive queue until a next descriptor indicates another cache location. The at least one processor is also configured to cause the data to be injected to the cache location in the host system.
    Type: Grant
    Filed: July 12, 2019
    Date of Patent: November 17, 2020
    Assignee: Xilinx, Inc.
    Inventors: Steven Leslie Pope, David James Riddoch
  • Patent number: 10824555
    Abstract: A method for flash-aware heap memory management includes reserving a contiguous virtual space in a memory space of at least one process with a size equivalent to a size of a flash-based byte addressable device. The method also includes partitioning by a host device the memory space of the flash-based byte addressable device into multiple chunks. Each chunk includes multiple logical segments. The host device receives a memory allocation request from a thread associated with an application. The host device determines at least one chunk from the multiple chunks, including a least free logical segment compared to the other chunks from the multiple chunks. The host device allocates to the thread at least one chunk that includes the least free logical segment.
    Type: Grant
    Filed: May 16, 2018
    Date of Patent: November 3, 2020
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Vishak Guddekoppa, Arun George, Mitesh Sanjay Mutha, Rakesh Nadig
  • Patent number: 10826992
    Abstract: A content management system for collecting files from one or more submitters in a collection folder. A collector, who generates the collection folder, can invite one or more submitters to submit one or more files to the collection folder via a customizable file request. The one or more submitters have limited rights to the collection folder. The limited rights can include uploading rights and prohibiting a submitter from viewing files that other submitters associated with the collection folder submitted. Thus, the collection folder is able to store files from the one or more submitters, but prevent them from viewing other's submissions.
    Type: Grant
    Filed: May 29, 2019
    Date of Patent: November 3, 2020
    Assignee: DROPBOX, INC.
    Inventors: Mindy Zhang, Pranav Piyush
  • Patent number: 10824673
    Abstract: A system includes a non-volatile random access memory storing a column store main fragment of a column of a database table, and a processing unit to read the column store main fragment from the non-volatile random access memory. A volatile random access memory storing a column store delta fragment of the column of the database table may also be included, in which the processing unit is to write to the column store delta fragment. According to some systems, the stored column store main fragment is byte-addressable, and is copied from the volatile random access memory to the non-volatile random access memory without using a filesystem cache.
    Type: Grant
    Filed: September 5, 2017
    Date of Patent: November 3, 2020
    Assignee: SAP SE
    Inventors: Oliver Rebholz, Ivan Schreter, Abdelkader Sellami, Daniel Booss, Gunter Radestock, Peter Bumbulis, Alexander Boehm, Frank Renkes, Werner Thesing, Thomas Willhalm
  • Patent number: 10817429
    Abstract: A method, computer program product, and computing system for freeing up cache space includes identifying a portion of cache space for removal from a cache system, thus defining a cache portion to be removed, and ceasing to promote the cache portion to be removed. Data that needs to be relocated within the cache portion to be removed is identified, thus identifying flushable data. The flushable data is relocated to a backend storage system associated with the cache portion to be removed.
    Type: Grant
    Filed: September 30, 2015
    Date of Patent: October 27, 2020
    Assignee: EMC IP Holding Company, LLC
    Inventors: Xinlei Xu, Xiongcheng Li, John V. Harvey, Lifeng Yang, Jian Gao
  • Patent number: 10817224
    Abstract: Systems, methods, and computer programs are disclosed for scheduling decompression of an application from flash storage. One embodiment of a system comprises a flash memory device and a preemptive decompression scheduler component. The preemptive decompression scheduler component comprises logic configured to generate and store metadata defining one or more dependent objects associated with the compressed application in response to an application installer component installing a compressed application to the flash memory device. In response to a launch of the compressed application by an application launcher component, the preemptive decompression scheduler component determines from the stored metadata the one or more dependent objects associated with the compressed application to be launched. The preemptive decompression scheduler component preemptively schedules decompression of the one or more dependent objects based on the stored metadata.
    Type: Grant
    Filed: June 23, 2016
    Date of Patent: October 27, 2020
    Assignee: QUALCOMM Incorporated
    Inventors: Subrato Kumar De, Dexter Chun, Yanru Li
  • Patent number: 10810127
    Abstract: Solid-state drives (SSD) and a data access method for SSD are provided. The method includes the following. Cache acquired data-to-be-written to a preset write cache module. Rank the data-to-be-written in the write cache module according to a least recently used page (LRU) algorithm. When data storage amount of the write cache module reaches a preset value, determine a preset number of replacement data among the infrequently used data-to-be-written according to a preset cache replacement algorithm. Write the replacement data into a flash memory of the SSD. Implementations of the present disclosure can decrease effectively the number of times of rewriting on a flash memory of the SSD, thereby reducing effectively a write amplifying problem of the SSD during data access.
    Type: Grant
    Filed: January 18, 2019
    Date of Patent: October 20, 2020
    Assignee: SHENZHEN DAPU MICROELECTRONICS CO., LTD.
    Inventors: Haibo He, Qing Yang
  • Patent number: 10810130
    Abstract: A cache memory device includes: data memory that stores cache data corresponding to data in main memory; tag memory that stores tag information to identify the cache data; an address estimation unit that estimates a look-ahead address to be accessed next; a cache hit determination unit that performs cache hit determination on the look-ahead address, based on the stored tag information; and an access controller that accesses the data memory or the main memory based on the retained cache hit determination result in response to a next access.
    Type: Grant
    Filed: November 16, 2017
    Date of Patent: October 20, 2020
    Assignee: RENESAS ELECTRONICS CORPORATION
    Inventor: Tatsuhiro Tachibana
  • Patent number: 10812111
    Abstract: A semiconductor apparatus includes a storage unit, an ECC decoder, and a selection unit. The storage unit stores data. The ECC decoder can detect and correct an error of a predetermined number of bits in data outputted from the storage unit, and can detect an error equal to or larger than bits larger than the predetermined number of bits in the data. The selection unit selects and outputs one of the data outputted from the ECC decoder and a preset fixed value, in accordance with a detection signal indicating whether or not the error equal to or larger than the bits larger than the predetermined number of bits is detected by the ECC decoder.
    Type: Grant
    Filed: September 4, 2018
    Date of Patent: October 20, 2020
    Assignees: Kabushiki Kaisha Toshiba, Toshiba Electronic Devices & Storage Corporation
    Inventor: Keisyun Lin