Caching Patents (Class 711/113)
  • Patent number: 10698826
    Abstract: The disclosure is related to storage devices employing file-aware drivers. In one example, a device may comprise a driver configured to retrieve file system information related to an input/output (I/O) command, determine storage attributes based on the file system information, and store selected data in a preferred region of a data storage medium based on the storage attributes. Another embodiment may be a method comprising inspecting characteristics of an I/O request for a file, setting storage attributes for the file based on if the file is preferred, and storing the file on a data storage medium based on the storage attributes.
    Type: Grant
    Filed: April 5, 2012
    Date of Patent: June 30, 2020
    Assignee: SEAGATE TECHNOLOGY LLC
    Inventors: Daniel Robert McLeran, Steven Scott Williams
  • Patent number: 10698831
    Abstract: Embodiments of the present disclosure relates to a method and device of data access. The method comprises determining whether target data stored in a non-volatile storage device is cached in a memory. The target data is organized in a first level of a multi-way tree in the storage device. The method further comprises, in response to determining that the target data is missing in the memory, moving the target data from the storage device into the memory. Besides, the method comprises, in response to the target data being accessed from the memory, adding a reference to the target data to a first list, the first list recording a sequence for accessing data in the first level.
    Type: Grant
    Filed: December 20, 2017
    Date of Patent: June 30, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Qiaosheng Zhou, Junping Zhao, Xinlei Xu, Wilson Hu, Jun Wu
  • Patent number: 10701177
    Abstract: Techniques for recovering from session failures between clients and database servers are described herein. A session may be established between a client and a first database server to handle a database query for the client. A command of the session may be received by the first database server from the client. Data requested by the command may be retrieved. Prior to responding to the command, the data is spooled to a session state stored in a repository of the first database server, and the session state is replicated to one or more additional database servers. The session state stored in the repository of the first database server enables the first database server and client to recover from a failure of the session. The replicated session state enables the additional database server(s) to reestablish the session and respond to the command, instead of the first database server, if the session fails.
    Type: Grant
    Filed: September 20, 2017
    Date of Patent: June 30, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Matthew Alban Neerincx, Luiz Fernando Federico Dos Santos, Oleg Ignat, David Bruce Lomet, Quetzalcoatl Bradley, Raghu Ram, Chadwin James Mumford, Peter Gvozdjak, Balendran Mugundan
  • Patent number: 10698629
    Abstract: Systems, methods, and non-transitory computer readable media are configured to determine a request corresponding to a portion of data. A placement configuration associated with the portion of data can be determined. The placement configuration can belong to a set of placement configurations. A datacenter identified by the placement configuration can be selected. Subsequently, the portion of data can be accessed at the selected datacenter.
    Type: Grant
    Filed: November 28, 2017
    Date of Patent: June 30, 2020
    Assignee: Facebook, Inc.
    Inventors: Muthukaruppan Annamalai, Harish Srinivas, Kaushik Ravichandran, Igor A. Zinkovsky, Luning Pan
  • Patent number: 10691615
    Abstract: A system includes reception of a first request to synchronize content from the persistent memory system to the volatile memory system, and, in response to the first request, retrieval of the content from the persistent memory system and store the content in the volatile memory system. A create, read, update or delete operation is performed on the content stored in the volatile memory system to generate modified content in the volatile memory system, a second request to synchronize content is received from the volatile memory system to the persistent memory system, and, in response to the second request, the modified content is retrieved from the volatile memory system and the modified content is stored in the persistent memory system.
    Type: Grant
    Filed: October 10, 2017
    Date of Patent: June 23, 2020
    Assignee: SAP SE
    Inventor: Johnson Wong
  • Patent number: 10691622
    Abstract: A computing device requests access to an application object from a remote storage system in order to locally execute application functionality without hosting application resources. An accessed object is associated with an intent in the storage system and locked. Locking an object in combination with an intent prevents computing devices that are not performing the intent from accessing the object. An intent defines one or more operations to be performed with the requested object, which are serialized as intent steps and stored in the storage system. Upon executing an intent step, the computing device stores a log entry at the storage system signifying the step's completion. A locked object remains locked until the log entries indicate every intent step as complete. Different computing devices can unlock a locked object by executing any incomplete steps of an intent associated with the locked object.
    Type: Grant
    Filed: September 19, 2017
    Date of Patent: June 23, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Lidong Zhou, Jacob R. Lorch, Jinglei Ren, Parveen Kumar Patel, Srinath Setty
  • Patent number: 10684996
    Abstract: A distributed storage system maintains multiple logically independent file systems. Each file system includes a data set stored by a storage device of the distributed storage system. During operation, access pattern levels for the multiple logically independent file systems are determined. Thereafter, the data sets included in the multiple logically independent file systems are redistributed across multiple storage devices of the distributed storage. Redistribution of a particular data set is based at least in part on the particular file system including the particular data set and on the determined access pattern levels for the multiple logically independent file systems. In addition, each disk of a plurality of disks in the distributed storage includes a physically separated partition dedicated to storing the data of the file system that is most frequently accessed. The distribution of data is based at least in part on the presence of the physically separated partition.
    Type: Grant
    Filed: September 12, 2017
    Date of Patent: June 16, 2020
    Assignee: Quantcast Corporation
    Inventor: Silvius V. Rus
  • Patent number: 10671526
    Abstract: An electronic computing device, a method for adjusting the trigger mechanism of a garbage collection function, and a non-transitory computer readable storage medium thereof are provided. A storage unit of the electronic computing device stores a whitelist. The whitelist records a plurality of data sets, wherein each of the data sets has a name of an application and an offset value of the application. A processor of the electronic computing device executes a system program. The system program loads the whitelist into a memory during a initialization procedure. The system program detects that a specific application is triggered and retrieves the offset value of the specific application from the whitelist in the memory according to the name of the specific application. The system program forks a process to the specific application and updates a threshold of a garbage collection function according to the offset value.
    Type: Grant
    Filed: October 26, 2017
    Date of Patent: June 2, 2020
    Assignee: HTC CORPORATION
    Inventors: Wen-Yuan Ho, Yi-Fan Zhang, Xiao-Ting Hong
  • Patent number: 10664189
    Abstract: A method for improving I/O performance in synchronous data replication environments is disclosed. In one embodiment, such a method includes receiving write data into a primary write cache of a primary storage system. The method synchronously mirrors the write data from the primary write cache to a secondary write cache of a secondary storage system. The method is further configured to detect when the primary write cache is full. When the primary write cache is full, the method temporarily uses primary read cache of the primary storage system to store incoming write data. This incoming write data is mirrored from the primary read cache to the secondary write cache of the secondary storage system. A corresponding system and computer program product are also disclosed herein.
    Type: Grant
    Filed: August 27, 2018
    Date of Patent: May 26, 2020
    Assignee: International Business Machines Corporation
    Inventor: Xue Qiang Zhou
  • Patent number: 10656852
    Abstract: A location of a log file is determined, wherein data corresponding to writes is written sequentially starting from a starting block of the log file. A determination is made in the log file of a range of blocks in which data corresponding to a next write is anticipated to be written. Preprocessing operations are performed corresponding to the range of blocks of the log file in which the data corresponding to the next write is anticipated to be written.
    Type: Grant
    Filed: April 30, 2019
    Date of Patent: May 19, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kevin J. Ash, Lokesh M. Gupta, Matthew J. Kalos
  • Patent number: 10656849
    Abstract: With omission of a duplication process of compressed data, a cache access frequency is reduced to improve throughput. A storage system includes first and second control units and a storage drive. Upon receiving a data write command, the first control unit stores data to be subjected to the write command in a first cache area of the first control unit, and stores the data in a second cache area of the second control unit to perform duplication, and upon completion of the duplication, the first control unit transmits a response indicating an end of write, performs a predetermined process on the data to be subjected to the write command, stores the data in a buffer area, reads the data stored in the buffer area, and transmits the read data to the storage drive.
    Type: Grant
    Filed: August 30, 2018
    Date of Patent: May 19, 2020
    Assignee: Hitachi, Ltd.
    Inventors: Kazuki Matsugami, Yoshihiro Yoshii, Nobumitsu Takaoka, Tomohiro Kawaguchi
  • Patent number: 10656848
    Abstract: A method for avoiding data loss in a storage system is disclosed. In one embodiment, such a method includes monitoring a degradation level associated with a battery. The battery provides backup power to a storage system in the event of a primary power outage. The storage system includes volatile storage media storing modified data to destage to more persistent storage media, such as an array of storage drives. In the event the degradation level crosses a designated threshold, the method automatically takes steps to alter a time period needed to completely copy the modified data off of the volatile storage media. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: June 17, 2018
    Date of Patent: May 19, 2020
    Assignee: International Business Machines Corporation
    Inventors: Matthew G. Borlick, Micah Robison, John C. Elliott, Kevin J. Ash, Lokesh M. Gupta, Brian A. Rinaldi
  • Patent number: 10650027
    Abstract: In a method for improving performance of a database, create, in a memory, an instance of a segment of data corresponding to a segment of data in a database on a persistent file system. The segment of data in the database on the persistent file system is expected to experience a high plurality of reads and writes during a certain time period. Receive a request to modify the segment of data in the database on the persistent file system. Modify the instance of the segment of data in the memory.
    Type: Grant
    Filed: November 5, 2014
    Date of Patent: May 12, 2020
    Assignee: International Business Machines Corporation
    Inventor: Francis N. Parr
  • Patent number: 10649807
    Abstract: In an embodiment, a method for validating data integrity of a seeding process is described. The seeding process for migrating data from a source tier to a target tier persists a perfect hash vector (PHV) to a disk when the seeding process is suspended for various reasons. The PHV includes bits for fingerprints for data segments corresponding to the data, and can be reloaded into memory upon resumption of the seeding process. One or more bits corresponding to fingerprints for copied data segments are reset prior to starting the copy phase in the resumed run. A checksum of the PHV is calculated after the seeding process completes copying data segments in the containers. A non-zero checksum of the PHV indicates that one or more data segments are missing on the source tier or the data segments are not successfully copied to the target tier. The missing data segments and/or one or more related files are reported to a user via a user interface.
    Type: Grant
    Filed: October 24, 2018
    Date of Patent: May 12, 2020
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Ramprasad Chinthekindi, Abhinav Duggal, Srikanth Srinivasan, Lan Bai
  • Patent number: 10642918
    Abstract: A publish/subscribe system is described that can adjust to provide high performance for diverse application environments through an attribute structure based on predicates of a subscription, each attribute structure with one or more buckets to which attribute values of a subscription may be stored. Various data structures can be used in the attribute structure to locate the buckets containing the subscriptions. The data structures selected for each subscription are based on the attribute type and predicate operators of the subscription.
    Type: Grant
    Filed: March 14, 2014
    Date of Patent: May 5, 2020
    Assignee: University of Florida Research Foundation, Incorporated
    Inventors: Sartaj K. Sahni, Tania Banerjee
  • Patent number: 10642502
    Abstract: Systems and methods for predicting read commands and pre-fetching data when a memory device is receiving random read commands to non-sequentially addressed data locations are disclosed. A limited length sequence of prior read commands is generated and that search sequence is then converted into an index value in a predetermined set of index values. A history pattern match table having entries indexed to that predetermined set of index values contains prior read commands that have previously followed the search sequence represented by the index value. The index value is obtained via application of a many-to-one algorithm to the search sequence. The index value obtained from the search sequence may be used to find, and pre-fetch data for, a next read command in the table that previously followed a search sequence having that index.
    Type: Grant
    Filed: June 29, 2018
    Date of Patent: May 5, 2020
    Assignee: Western Digital Technologies, Inc.
    Inventors: Eran Sharon, Ariel Navon, Idan Alrod
  • Patent number: 10642674
    Abstract: When a power failure of a volatile first storage occurs, an apparatus detects the power failure, and writes backup target data in a non-volatile second storage. When an abnormality of the first storage occurs, the apparatus detects the abnormality, acquires second information including a hardware state at a time when the abnormality is detected, and writes the first information and the second information in the second storage. When an abnormality occurs during the writing the backup target data, the apparatus suspends the writing the backup target data, acquires the second information, and writes backup data and the second information in the second storage, where the backup data is the backup target data that has not been written to the second storage.
    Type: Grant
    Filed: February 1, 2018
    Date of Patent: May 5, 2020
    Assignee: FUJITSU LIMITED
    Inventor: Yuusuke Oota
  • Patent number: 10643707
    Abstract: An apparatus includes a non-volatile memory and a controller coupled to the non-volatile memory. The controller is configured to receive a command from a device to perform a write operation at the non-volatile memory. The command indicates a plurality of logical addresses, data associated with the plurality of logical addresses, and a number of write operations associated with the command.
    Type: Grant
    Filed: July 25, 2017
    Date of Patent: May 5, 2020
    Assignee: Western Digital Technologies, Inc.
    Inventors: Thibash Rajamani, Ramesh Chander, Manavalan Krishnan, Brian O'Krafka, Nagi Reddy Chodem
  • Patent number: 10642791
    Abstract: A computerized method and apparatus for distinguishing between false positive read events and true positive events of reading a file, comprising determining an amount of date read from the file, in case the amount of data exceeds a threshold generating a true positive read event, otherwise generating a false positive read event in case a decision condition is met, and an apparatus to carry out the same.
    Type: Grant
    Filed: March 26, 2017
    Date of Patent: May 5, 2020
    Assignee: VARONIS SYSTEMS, INC.
    Inventors: Yakov Faitelson, Ohad Korkus, David Bass, Yzhar Kaysar, Doron Goldstein, Oren David
  • Patent number: 10642788
    Abstract: A method is disclosed comprising: generating a first snapshot of a first storage subsystem; detecting, by a management node, that all in-flight data storage requests recorded in drain tables of storage nodes in the first storage subsystem have been completed, the in-flight data storage requests recorded in the drain tables of the storage nodes being replicated in a second storage subsystem; causing, by the management node, each of the storage nodes to flip the respective designations of the tracking tables in the node's respective pair of tracking tables; and transmitting, from the management node to the second storage subsystem, an instruction which when received by the second storage subsystem causes the second storage subsystem to generate a second snapshot of the second storage subsystem.
    Type: Grant
    Filed: October 17, 2018
    Date of Patent: May 5, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Ying Hu, Xiangping Chen
  • Patent number: 10635332
    Abstract: Data storage federation equipment manages data storage arrays on behalf of host computers. In particular, the data storage federation equipment provides media type queries to the data storage arrays, each media type query requesting media type identification for a particular logical unit of storage (LUN) on a particular data storage array. The data storage federation equipment further receives, in response to the media type queries, media type responses from the data storage arrays, each media type response identifying media type for a particular LUN on a particular data storage array. The data storage federation equipment further performs, based on the media type responses, memory management operations that adjust operation of LUNs on the data storage arrays on behalf of the host computers. The memory management operations are performed while the data storage federation equipment remains interconnected between the host computers and the data storage arrays.
    Type: Grant
    Filed: October 30, 2017
    Date of Patent: April 28, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Bo Wu, Guangliang Lei, Cynthia Burns
  • Patent number: 10635688
    Abstract: Systems, methods, and articles of manufacture provide for simplified and partially-automated data operation services, such as data transfer, storage, management, and analysis operations. Non-IT data consumers may, for example, initiate such data operations by providing only a subset of the required parameters for the operation, with the specially-coded system automatically fetching any missing parameters or values from one or more metadata stores and initiating the requested operation.
    Type: Grant
    Filed: September 28, 2017
    Date of Patent: April 28, 2020
    Assignee: The Travelers Indemnity Company
    Inventors: Venu Challagolla, Venkatraman Raman
  • Patent number: 10635633
    Abstract: The invention provides systems, methods, and devices related to writing and reading a file. A block area having a plurality of idle storage blocks is provided. Each idle block of said plurality of idle storage blocks is associated with a block identifier of a plurality of block identifiers. Additionally, each block identifier of the plurality of block identifiers is listed in a block index. Each block identifier has content that stores a unique block identifier of the plurality of block identifiers that links the block identifier with the unique block identifier, thereby linking the plurality of block identifiers.
    Type: Grant
    Filed: October 20, 2016
    Date of Patent: April 28, 2020
    Assignee: SZ DJI TECHNOLOGY CO., LTD.
    Inventors: Ke Wang, Qiang Zhang, Wei Tuo, Taiwen Liang
  • Patent number: 10635587
    Abstract: According to one embodiment, a memory controller includes a nonvolatile cache memory and a controller. The nonvolatile cache memory is configured to store a piece of data stored in a nonvolatile main memory connected to the memory controller. The controller is configured to control writing of data to the nonvolatile cache memory. The memory controller is connected to a processor via an interconnect that ensures a protocol indicating a procedure for preventing data inconsistency in a plurality of cache memories. The controller causes, after detecting that the processor has updated data corresponding to any area of the nonvolatile main memory using the protocol, the updated data to be transmitted to the memory controller and writes the updated data to the nonvolatile cache memory.
    Type: Grant
    Filed: January 12, 2018
    Date of Patent: April 28, 2020
    Assignee: TOSHIBA MEMORY CORPORATION
    Inventors: Yusuke Shirota, Tatsunori Kanai, Masaya Tarui
  • Patent number: 10628331
    Abstract: Provided are a computer program product, system, and method demote scan processing to demote tracks from cache. Tracks in the storage stored in the cache are indicated in a cache list. The cache list is scanned to determine unmodified tracks to initiate to demote. In response to processing an indicated modified track in the cache list while scanning the cache list, a destage is initiated for the processed indicated modified track and continuing to scan the cache list to determine unmodified tracks. In response to processing a number of modified tracks indicted in the cache list, a determination is made of an unmodified track in the cache list and continuing to scan, from the determined unmodified track, for unmodified tracks to initiate to demote.
    Type: Grant
    Filed: June 1, 2016
    Date of Patent: April 21, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kevin J. Ash, Lokesh M. Gupta, Sonny E. Williams
  • Patent number: 10628407
    Abstract: A computing resource service provider implements a verification engine for hierarchical data structures. The verification engine uses a work item queue, a node allocation counter list, and a memory deallocation list to increase parallelism and thread utilization during verification operations involving ordered, nominally sorted data structures.
    Type: Grant
    Filed: February 27, 2017
    Date of Patent: April 21, 2020
    Assignee: Amazon Technologies, Inc.
    Inventors: Sroaj Sosothikul, Yonatan Reuven Fogel, Dumanshu Goyal, Erben Mo
  • Patent number: 10620845
    Abstract: Handling I/O operations between a plurality of virtual machines and a plurality of data storage volumes containing data for the virtual machines includes the virtual machines accessing a virtual data storage cluster engine that transfers I/O data between the virtual machines and the data storage volumes and caches at least some of the I/O data, where the virtual data storage cluster appears as a data storage volume to the virtual machines and includes drivers of at least some of the virtual machines routing at least some I/O operations directly to the volumes, where data for I/O operations that is directly routed does not pass through the virtual data storage cluster engine. Drivers for at least one of the virtual machines on a local site may communicate with drivers on a remote site in response to performing an I/O operation with at least one volume on the remote site.
    Type: Grant
    Filed: March 31, 2015
    Date of Patent: April 14, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Assaf Natanzon, Saar Cohen, Ronald C. Unrau, Brian Lake, Qinghua Ye
  • Patent number: 10613982
    Abstract: The disclosure is related to file-aware caching for data storage devices. In one example, a device may comprise a data storage medium, an interface circuit to communicate with a host, and a driver configured to retrieve file system information related to a structured input/output (I/O) command from the host, and select caching attributes based on the file system information. Further, a system may include a host and at least one driver operating on the host; the driver configured to intercept a I/O request initiated at the host, obtain operating system information from the host about the I/O request, and store the operating system information that it is accessible to a data storage device to allow the data storage device to implement caching attributes based on the operating system information.
    Type: Grant
    Filed: April 5, 2012
    Date of Patent: April 7, 2020
    Assignee: SEAGATE TECHNOLOGY LLC
    Inventors: Daniel Robert McLeran, Joe David Marley, Scott J Noone, Peter G Viscarola
  • Patent number: 10614105
    Abstract: A search tool is used to execute a method of designating documents to associate with a search session. The search tool opens a search session in response to a request received from a client computer. The search tool receives from the client computer an indication of documents. Then, the search tool uses storage to find information in storage that links the documents to other documents found in the storage. At that point, the search tool sends a suggestion to the client computer to associate the newly-found documents to the search session.
    Type: Grant
    Filed: September 17, 2015
    Date of Patent: April 7, 2020
    Assignee: BYCITE SOFTWARE LTD.
    Inventor: Israel Twito
  • Patent number: 10606601
    Abstract: A method performed by a computer for analyzing access to a storage device, the method includes: executing a calculating process that includes calculating, for each of a plurality of ranges obtained by dividing a storage area of the storage device, an access number or a variation of the access number in each of a plurality of periods, wherein the access number indicates the number of times of access to each of the plurality of ranges; and executing a determining process that includes determining a correlation between any two of the plurality of ranges in accordance with the access number or the variation of the access number for each period in each of the plurality of ranges.
    Type: Grant
    Filed: January 25, 2018
    Date of Patent: March 31, 2020
    Assignee: FUJITSU LIMITED
    Inventor: Tatsuo Kumano
  • Patent number: 10601916
    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: June 26, 2017
    Date of Patent: March 24, 2020
    Assignee: Dropbox, Inc.
    Inventors: Mindy Zhang, Pranav Piyush
  • Patent number: 10592127
    Abstract: A method and a system for managing memories in a storage system. In one embodiment of the present invention, there is provided a method for managing memories in a storage system comprising a first controller and a second controller. The method comprising: receiving an allocation request from a second controller in the storage system, where the allocation request requires to allocate available storage spaces from a first memory in the storage system to a second memory in the storage system for use by the second controller; and determining a candidate number of available storage spaces to be allocated from the first memory to the second memory based on first use status of the first memory, wherein the first memory and the second memory are associated with the first controller and the second controller respectively, and the first memory and the second memory are mirrored memories.
    Type: Grant
    Filed: June 15, 2017
    Date of Patent: March 17, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Ruiyong Jia, Jian Gao, Lifeng Yang, Xinlei Xu, Yousheng Liu
  • Patent number: 10585881
    Abstract: A method and apparatus is provided for dynamically generating data to dataset mappings and dataset to logical instance mappings and distributing these mappings to subscribers for the purpose of routing work. An advisory engine updates the mappings of data to data sets based at least in part on changing demands and patterns of access to data, and updates the mappings of datasets to logical instances based at least in part on anticipated capacity and change in conditions of the database servers. The subscribers receive and store the mapping information that maps the data to dataset identifiers, and dataset identifiers to logical database instances. The subscribers may also receive information that describes the current availability conditions of database instances, which are used to override the mapping of logical database instances to physical database instances. Subscribers may use the data to dataset mapping to map data identified from in an incoming database request to a dataset.
    Type: Grant
    Filed: January 7, 2016
    Date of Patent: March 10, 2020
    Assignee: Oracle International Corporation
    Inventors: Carol Lyndall Colrain, Michael Ullrich Zoll, Vladimir Begun, Rajkumar Arockia Irudayaraj, Logan O'Sullivan Bruns
  • Patent number: 10585749
    Abstract: A system and method for distributed erasure coding. A plurality of storage devices is directly connected to one or more host computers, without an intervening central controller distributing data to the storage devices and providing data protection. Parity codes are stored in one or more dedicated storage devices or distributed over a plurality of the storage devices. When a storage device receives a write command, it calculates a partial parity code, and, if the parity code for the data being written is on another storage device, sends the partial parity code to the other storage device, which updates the parity code using the partial parity code.
    Type: Grant
    Filed: October 20, 2017
    Date of Patent: March 10, 2020
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Ramdas P. Kachare, Fred Worley, Stephen Fischer, Oscar Pinto
  • Patent number: 10587473
    Abstract: A technique for determining a data window size allows a set of predicted blocks to be transmitted along with requested blocks. A stream enabled application executing in a virtual execution environment may use the blocks when needed.
    Type: Grant
    Filed: October 2, 2017
    Date of Patent: March 10, 2020
    Assignee: Numecent Holdings, Inc.
    Inventors: Jeffrey DeVries, Arthur S. Hitomi
  • Patent number: 10579282
    Abstract: In one embodiment, a method includes replicating a production volume on a plurality of replica volume portions. Each replica volume portion is stored on a respective storage array with a respective journal. The replicating includes distributing data from a write command to a production volume across the replica volume portions using a coding scheme. A subset of replica volume portions, less than a total number of replica volume portions, includes data for a full replica volume of the production volume.
    Type: Grant
    Filed: March 30, 2016
    Date of Patent: March 3, 2020
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Leehod Baruch, Assaf Natanzon, Jehuda Shemer, Amit Lieberman, Ron Bigman
  • Patent number: 10579317
    Abstract: A memory control method generates processing priority data that represents a priority of processing in controlling a memory, generates write control data including write data and the processing priority data, generates read control data including the processing priority data, stores the write control data and the read control data in an arbitration queue, executes an arbitration that determines a priority order of processing taking the write control data and the read control data that are stored in the arbitration queue as targets, and changes the processing priority data every time a predetermined time elapses. The arbitration raises a priority order taking the write control data or the read control data that includes the processing priority data as a timeout request when the processing priority data has passed a preliminarily set threshold by the change.
    Type: Grant
    Filed: December 31, 2018
    Date of Patent: March 3, 2020
    Assignee: Kyocera Document Solutions Inc.
    Inventors: Masayoshi Nakamura, Dongpei Su
  • Patent number: 10579515
    Abstract: Techniques for recycling segment pages while preserving integrity of memory addressing. Upon a request to delete a system object, an initial segment identifier is de-assigned from a segment of the system object, and each segment page of the system object is remapped to a new virtual address range. The segment is stored as a reusable segment in a reusable segment store. Upon a request to access the system object, an exception is raised that the system object does not exist. Upon a request to create a new system object, the reusable segment store is searched to identify the reusable segment as a match. The reusable segment is assigned as a segment of the new system object.
    Type: Grant
    Filed: September 10, 2018
    Date of Patent: March 3, 2020
    Assignee: International Business Machines Corporation
    Inventors: David G. Carlson, Kevin C. Griffin, William A. Brown, Thomas P. Giordano
  • Patent number: 10579296
    Abstract: Provided are a computer program product, system, and method for providing track format information when mirroring updated tracks from a primary storage system to a secondary storage system. The primary storage system determines a track to mirror to the secondary storage system and determines whether there is track format information for the track to mirror. The track format information indicates a format and layout of data in the track, indicated in track metadata for the track. The primary storage system sends the track format information to the secondary storage system, in response to determining there is the track format information and mirrors the track to mirror to the secondary storage system. The secondary storage system uses the track format information for the track in the secondary cache when processing a read or write request to the mirrored track.
    Type: Grant
    Filed: August 1, 2017
    Date of Patent: March 3, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kyler A. Anderson, Kevin J. Ash, Matthew G. Borlick, Lokesh M. Gupta
  • Patent number: 10564865
    Abstract: Method and apparatus for managing data in a distributed data storage system. In some embodiments, a plurality of storage devices define an overall available memory space. A control circuit stores a first copy of user data from a selected distributed data set in a working set of memory buffers, stores a duplicate, second copy of the user data in an alias set of memory buffers, generates parity data based on the second copy of the user data in the alias set of the memory buffers, and flushes the user data and the parity data from the alias set of memory buffers to the storage devices while the first copy of the user data remains in the working set of the memory buffers. In this way, subsequently received access commands can be serviced using the working set of the memory buffers.
    Type: Grant
    Filed: March 22, 2016
    Date of Patent: February 18, 2020
    Assignee: Seagate Technology LLC
    Inventors: Mark Ish, Anant Baderdinni, Balakrishnan Sundararaman, Shashank Nemawarkar
  • Patent number: 10567348
    Abstract: Described embodiments establish at least one secure connection for a session. An intermediary device may intercept a domain name service (DNS) request from a client. The device may determine, according to the intercepted DNS request and configuration data of the device, that the client is preparing to establish a session with a server. The device may send a client hello message of the device to the server for establishing a first secure connection between the device and the server for the session, prior to the client sending a client hello message of the client for establishing a second secure connection between the client and the device for the session. The second secure connection may be established between the client and the device using a specified value for a session identifier received from the server in response to the client hello message of the device.
    Type: Grant
    Filed: July 6, 2017
    Date of Patent: February 18, 2020
    Assignee: Citrix Systems, Inc.
    Inventors: Moorthi Subramaniyan, Praveen Raja Dhanabalan
  • Patent number: 10564856
    Abstract: One embodiment facilitates mitigating write amplification in a phase change memory-based storage device. During operation, the system receives, by a controller of the storage device, data to be stored in a phase change memory (PCM) of the storage device. The system writes, by the controller, the data to a sector of a volatile memory of the same storage device to obtain an updated portion of the sector. In response to detecting a predetermined condition, the system writes the updated portion to the PCM.
    Type: Grant
    Filed: July 6, 2017
    Date of Patent: February 18, 2020
    Assignee: Alibaba Group Holding Limited
    Inventors: Shu Li, Ping Zhou
  • Patent number: 10558369
    Abstract: Systems and methods are disclosed for ensuring a target lifetime of a memory device coupled to an SoC of a computing device, the SoC including a central processing unit (CPU) executing an operating system (O/S). A DRAM is coupled to the SoC, and the memory device is configured to receive page swaps from the DRAM. A swap lifetime controller (SLC) in communication with the O/S is configured to determine a number of page swaps for the memory device during a time interval. A learning prediction system (LPS) in communication with the SLC is configured to determine a target number of page swaps (target_swap) to the memory device and a remaining life of the memory device (remaining_life_of_device). The SLC determines the number of page swaps based on the target_swap and remaining_life_of_device.
    Type: Grant
    Filed: March 22, 2016
    Date of Patent: February 11, 2020
    Assignee: Qualcomm Incorporated
    Inventors: Valmick Guha, Narasimhan Agaram, Ranjith Kumar Narahari, Dexter Chun
  • Patent number: 10552071
    Abstract: A data path for each storage object may be customized for the particular services enabled for the storage object. Techniques for determining and using data paths may include: receiving an administrative command on a control path, wherein the administrative command is a request to perform any of enable, disable and modify a data service for a first storage object; determining, in accordance with the administrative command, a modification to be made to a current configuration of a data path for the first storage object in order to implement the administrative command, wherein the current configuration includes a plurality of components forming a call stack invoked in connection with I/O processing for I/Os directed to the first storage object; and modifying the data path in accordance with the modification determined.
    Type: Grant
    Filed: October 31, 2017
    Date of Patent: February 4, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Nagasimha G. Haravu, Alan L. Taylor
  • Patent number: 10555111
    Abstract: The present disclosure generally relates to geo-boundary services for mobile devices and related applications and, more particularly, to systems and processes for providing a refresh boundary encompassing a plurality of geo-boundaries which can be monitored and cached by mobile devices and related applications. The method includes: obtaining a plurality of geographic boundaries from a geographic location of a mobile device; generating a monitored boundary encompassing the plurality of geographic boundaries; and providing a refresh boundary within the monitored boundary to encompass at least one geographic boundary of the plurality of geographic boundaries.
    Type: Grant
    Filed: March 6, 2017
    Date of Patent: February 4, 2020
    Assignee: KONY, INC.
    Inventors: Matthew B. Trevathan, Matthew Terry, Muralidhar Seelam
  • Patent number: 10552385
    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: May 20, 2013
    Date of Patent: February 4, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Maurilio Cometto, Gururaj Pangal, Ady Degany
  • Patent number: 10552061
    Abstract: A metadata track stores metadata corresponding to both a first customer data track and a second customer data track. In response to receiving a first request to perform a write on the first customer data track from a two track write process, exclusive access to the first customer data track is provided to the first request, and shared access to the metadata track is provided to the first request. In response to receiving a second request to perform a write on the second customer data track from the two track write process, exclusive access to the second customer data track is provided to the second request, and shared access to the metadata track is provided to the second request prior to providing exclusive access to the metadata track to at least one process that is waiting for exclusive access to the metadata track.
    Type: Grant
    Filed: August 8, 2017
    Date of Patent: February 4, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kyler A. Anderson, Kevin J. Ash, Lokesh M. Gupta, Jared M. Minch, Beth A. Peterson
  • Patent number: 10552212
    Abstract: Data processing apparatus comprises a group of two or more processing elements configured to execute processing instructions of a program task; the processing elements being configured to provide context data relating to a program task following execution of that program task by that processing element; and to receive context data, provided by that processing element or another processing element, at resumption of execution of a program task; in which a next processing element of the group to execute a program task is configured to receive a first subset of the context data from a previous processing element to execute that program task and to start to execute the program task using the first subset of the context data; and in which the next processing element is configured to receive one or more items of a second, remaining, subset of the context data during execution of the program task by that processing element.
    Type: Grant
    Filed: November 28, 2016
    Date of Patent: February 4, 2020
    Assignee: ARM LIMITED
    Inventors: Curtis Glenn Dunham, Jonathan Curtis Beard, Roxana Rusitoru
  • Patent number: 10545675
    Abstract: A memory system includes: a nonvolatile memory device including first and second storage regions; and a controller including first and second interfaces, the first interface being suitable for exchanging data between the first storage region and a host, and the second interface being suitable for exchanging data between the second storage region and the host.
    Type: Grant
    Filed: March 31, 2017
    Date of Patent: January 28, 2020
    Assignee: SK hynix Inc.
    Inventor: Jun-Seo Lee
  • Patent number: 10545670
    Abstract: A system and method of de-duplication includes receiving a first page, scanning a first structure, identifying a first match, determining a quantity of mappings to the first match is less than a threshold, and adding a first mapping to the first match. The method includes receiving a second page, scanning the first structure, identifying the first match, determining the quantity of mappings to the first match meets the threshold, and storing the second page in a second structure. The method includes receiving a third page, scanning the first structure, identifying the first match, determining the quantity of mappings to the first match meets the threshold, scanning the second structure, identifying the second page as the match, and creating a third structure that replaces the first match and includes an identifier node, the first match, and a second match with the second and third mapping identifying the second and third pages.
    Type: Grant
    Filed: February 26, 2016
    Date of Patent: January 28, 2020
    Assignee: Red Hat Israel, Ltd.
    Inventors: Andrea Arcangeli, Michael Tsirkin