Patents by Inventor Ling Zheng

Ling Zheng has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20170032013
    Abstract: A technique preserves efficiency for replication of data between a source node of a source cluster (“source”) and a destination node of a destination cluster (“destination”) of a clustered network. Replication in the clustered network may be effected by leveraging global in-line deduplication at the source to identify and avoid copying duplicate data from the source to the destination. To ensure that the copy of the data on the destination is synchronized with the data received at the source, the source creates a snapshot of the data for use as a baseline copy at the destination. Thereafter, new data received at the source that differs from the baseline snapshot are transmitted and copied to the destination. In addition, the source and destination nodes negotiate to establish a mapping of name-to-data when transferring data (i.e., an extent) between the clusters.
    Type: Application
    Filed: October 6, 2015
    Publication date: February 2, 2017
    Inventors: Ling Zheng, Michael L. Federwisch, Blake H. Lewis
  • Publication number: 20170010939
    Abstract: Embodiments herein are directed to efficient crash recovery of persistent metadata managed by a volume layer of a storage input/output (I/O) stack executing on one or more nodes of a cluster. Volume metadata managed by the volume layer is organized as a multi-level dense tree, wherein each level of the dense tree includes volume metadata entries for storing the volume metadata. When a level of the dense tree is full, the volume metadata entries of the level are merged with the next lower level of the dense tree. During a merge operation, two sets of generation IDs may be used in accordance with a double buffer arrangement: a first generation ID for the append buffer that is full (i.e., a merge staging buffer) and a second, incremented generation ID for the append buffer that accepts new volume metadata entries. Upon completion of the merge operation, the lower level (e.g., level 1) to which the merge is directed is assigned the generation ID of the merge staging buffer.
    Type: Application
    Filed: September 22, 2016
    Publication date: January 12, 2017
    Inventors: Anshul Pundir, Janice D'Sa, Srinath Krishnamachari, Ling Zheng
  • Patent number: 9501359
    Abstract: Embodiments herein are directed to efficient crash recovery of persistent metadata managed by a volume layer of a storage input/output (I/O) stack executing on one or more nodes of a cluster. Volume metadata managed by the volume layer is organized as a multi-level dense tree, wherein each level of the dense tree includes volume metadata entries for storing the volume metadata. When a level of the dense tree is full, the volume metadata entries of the level are merged with the next lower level of the dense tree. During a merge operation, two sets of generation IDs may be used in accordance with a double buffer arrangement: a first generation ID for the append buffer that is full (i.e., a merge staging buffer) and a second, incremented generation ID for the append buffer that accepts new volume metadata entries. Upon completion of the merge operation, the lower level (e.g., level 1) to which the merge is directed is assigned the generation ID of the merge staging buffer.
    Type: Grant
    Filed: September 10, 2014
    Date of Patent: November 22, 2016
    Assignee: NetApp, Inc.
    Inventors: Anshul Pundir, Janice D'Sa, Srinath Krishnamachari, Ling Zheng
  • Patent number: 9480411
    Abstract: A system includes a low pass-filter and a Savitzky-Golay filter. The low-pass filter receives and processes a first electrocardiogram signal. The filter removes at least the high frequency components of the first electrocardiogram signal. The Savitzky-Golay filter estimates a baseline variation of the first electrocardiogram signal from the filtered first electrocardiogram signal. Related apparatus, systems, techniques and articles are also described.
    Type: Grant
    Filed: June 7, 2012
    Date of Patent: November 1, 2016
    Assignee: Drägerwerk AG & Co. KGaA
    Inventors: Ling Zheng, Yu Chen
  • Patent number: 9471248
    Abstract: In one embodiment, a node coupled to one or more storage devices executes a storage input/output (I/O) stack having a volume layer, a persistence layer and an administration layer that interact to create a copy of a parent volume associated with a storage container on the one or more storage devices. A copy create start message is received at the persistence layer from the administration layer. The persistence layer ensures that dirty data for the parent volume is incorporated into the copy of the parent volume. New data for the parent volume received at the persistence layer during creation of the copy of the parent volume is prevented from incorporation into the copy of the parent volume. A reply to the copy create start message is sent from the persistence layer to the administration layer to initiate the creation of the copy of the parent volume at the volume layer.
    Type: Grant
    Filed: August 28, 2015
    Date of Patent: October 18, 2016
    Assignee: NetApp, Inc.
    Inventors: Ling Zheng, Blake H. Lewis, Kayuri H. Patel
  • Patent number: 9405473
    Abstract: The embodiments described herein are directed to efficient merging of metadata managed by a volume layer of a storage input/output (I/O) stack executing on one or more nodes of a cluster. The metadata managed by the volume layer, i.e., the volume metadata, is illustratively organized as a multi-level dense tree metadata structure, wherein each level of the dense tree metadata structure (dense tree) includes volume metadata entries for storing the volume metadata. The volume metadata entries of an upper level of the dense tree metadata structure are merged with the volume metadata entries of a next lower level of the dense tree metadata structure when the upper level is full. The volume metadata entries of the merged levels are organized as metadata pages and stored as one or more files on the SSDs.
    Type: Grant
    Filed: October 30, 2015
    Date of Patent: August 2, 2016
    Assignee: NetApp, Inc.
    Inventors: Ling Zheng, Blake H. Lewis
  • Patent number: 9355103
    Abstract: According to one or more embodiments of the present invention, a network cache intercepts data requested by a client from a remote server interconnected with the cache through one or more wide area network (WAN) links (e.g., for Wide Area File Services, or “WAFS”). The network cache stores the data and sends the data to the client. The cache may then intercept a first write request for the data from the client to the remote server, and determine one or more portions of the data in the write request that changed from the data stored at the cache (e.g., according to one or more hashes created based on the data). The network cache then sends a second write request for only the changed portions of the data to the remote server.
    Type: Grant
    Filed: July 31, 2012
    Date of Patent: May 31, 2016
    Assignee: NetApp, Inc.
    Inventors: Paul Jardetzky, Steven R. Kleiman, Roger Stager, Don Trimmer, Ling Zheng, Yuval Frandzel
  • Publication number: 20160139838
    Abstract: A three-way merge technique efficiently updates metadata in accordance with a three-way merge operation managed by a volume layer of a storage input/output (I/O) stack executing on one or more nodes of a cluster. The metadata is embodied as mappings from logical block addresses (LBAs) of a logical unit (LUN) accessible by a host to durable extent keys, and is organized as a multi-level dense tree. The mappings are organized such that a higher level of the dense tree contains more recent mappings than a next lower level, i.e., the level immediately below. The three-way merge operation is an efficient (i.e.
    Type: Application
    Filed: November 18, 2014
    Publication date: May 19, 2016
    Inventors: Janice D'Sa, Ling Zheng, Blake H. Lewis
  • Patent number: 9344112
    Abstract: A technique for eliminating duplicate data is provided. Upon receipt of a new data set, one or more anchor points are identified within the data set. A bit-by-bit data comparison is then performed of the region surrounding the anchor point in the received data set with the region surrounding an anchor point stored within a pattern database to identify forward/backward delta values. The duplicate data identified by the anchor point, forward and backward delta values is then replaced in the received data set with a storage indicator.
    Type: Grant
    Filed: April 10, 2012
    Date of Patent: May 17, 2016
    Inventors: Ling Zheng, Roger Stager, Craig Johnston, Don Trimmer, Yuval Frandzel
  • Publication number: 20160110392
    Abstract: The embodiments described herein are directed to an organization of metadata managed by a volume layer of a storage input/output (I/O) stack executing on one or more nodes of a cluster. The metadata managed by the volume layer, i.e., the volume metadata, is illustratively embodied as mappings from addresses, i.e., logical block addresses (LBAs), of a logical unit (LUN) accessible by a host to durable extent keys maintained by an extent store layer of the storage I/O stack. In an embodiment, the volume layer organizes the volume metadata as a mapping data structure, i.e., a dense tree metadata structure, which represents successive points in time to enable efficient access to the metadata.
    Type: Application
    Filed: December 22, 2015
    Publication date: April 21, 2016
    Inventors: Ling Zheng, Blake H. Lewis, Kayuri H. Patel
  • Publication number: 20160077744
    Abstract: A deferred refcount update technique efficiently frees storage space for metadata (associated with data) to be deleted during a merge operation managed by a volume layer of a node. The metadata is illustratively volume metadata embodied as mappings from logical block addresses (LBAs) of a logical unit (LUN) to extent keys maintained by an extent store layer of the node. One or more requests to delete (or overwrite) an LBA range within a LUN may be captured as page keys associated with metadata pages during the merge operation and the storage space associated with those metadata pages may be freed in an out-of-band fashion. The page keys of the metadata pages may be persistently recorded in a reference count (refcount) log to thereby allow the merge operation to complete without resolving deletion of the keys. A batch of page keys may be organized as one or more delete requests and, once the merge completes, the keys may be inserted into the refcount log.
    Type: Application
    Filed: September 11, 2014
    Publication date: March 17, 2016
    Inventors: Anshul Pundir, Ashwin Pednekar, Srinath Krishnamachari, Ling Zheng
  • Patent number: 9286006
    Abstract: Systems for deduplicating one or more storage units of a storage system provide a scheduler, which is operable to select at least one storage unit (e.g. a storage volume) for deduplication and perform a deduplication process, which removes duplicate data blocks from the selected storage volume. The systems are operable to determine the state of one or more storage units and manage deduplication requests in part based state information. The system is further operable to manage user generated requests and manage deduplication requests in part based on user input information. The system may include a rules engine which prioritizes system operations including determining an order in which to perform state-gathering information and determining an order in which to perform deduplication. The system is further operable to determine the order in which storage units are processed.
    Type: Grant
    Filed: April 5, 2013
    Date of Patent: March 15, 2016
    Assignee: NetApp, Inc.
    Inventors: Blake Lewis, Ling Zheng, Craig Johnston, Vinod Daga
  • Publication number: 20160070618
    Abstract: Embodiments herein are directed to efficient crash recovery of persistent metadata managed by a volume layer of a storage input/output (I/O) stack executing on one or more nodes of a cluster. Volume metadata managed by the volume layer is organized as a multi-level dense tree, wherein each level of the dense tree includes volume metadata entries for storing the volume metadata. When a level of the dense tree is full, the volume metadata entries of the level are merged with the next lower level of the dense tree. During a merge operation, two sets of generation IDs may be used in accordance with a double buffer arrangement: a first generation ID for the append buffer that is full (i.e., a merge staging buffer) and a second, incremented generation ID for the append buffer that accepts new volume metadata entries. Upon completion of the merge operation, the lower level (e.g., level 1) to which the merge is directed is assigned the generation ID of the merge staging buffer.
    Type: Application
    Filed: September 10, 2014
    Publication date: March 10, 2016
    Inventors: Anshul Pundir, Janice D'Sa, Srinath Krishnamachari, Ling Zheng
  • Publication number: 20160070714
    Abstract: A low-overhead merge technique enables restart of a merge operation with minimal logging of state information relating to progress of the merge operation by a volume layer of a storage input/output (I/O) stack executing on one or more nodes of a cluster. The technique enables restart of the merge operation by ensuring that metadata, i.e., metadata pages, generated during the merge operation is not subject to de-duplication by providing a unique value in each metadata page that distinguishes the page, i.e., renders the page distinct or “unique”, from other metadata pages in an extent store. In addition, the technique ensures that a reference count on each metadata page is a value denoting a lack of de-duplication. To that end, the extent store layer is configured to not increment the reference count for a metadata page if, during the merge operation, the page is identical (and thus subject to deduplication) to an existing metadata page in the extent store.
    Type: Application
    Filed: September 10, 2014
    Publication date: March 10, 2016
    Inventors: Janice D'Sa, Anshul Pundir, Srinath Krishnamachari, Ling Zheng
  • Publication number: 20160070644
    Abstract: An offset range striping technique increases concurrency of operation execution directed to metadata managed by a volume layer of a storage input/output (I/O) stack, while reducing contention among resources of one or more nodes of a cluster. A logical unit (LUN) may be apportioned into multiple volumes, each of which may be partitioned into multiple regions, wherein each region is represented by a dense tree. The technique increases concurrency of operation execution (e.g., modifications to the metadata at the offset ranges), while reducing contention among the resources (e.g., CPUs and NVLogs) by distributing the offset range operations among the regions and mapping the regions to services and NVLogs. Such increased concurrency and reduction of contention may be achieved by implementation of the technique to (i) apportion each region into disjoint chunks (i.e.
    Type: Application
    Filed: September 10, 2014
    Publication date: March 10, 2016
    Inventors: Janice D'Sa, Anshul Pundir, Srinath Krishnamachari, Ling Zheng, Jeffrey S. Kimmel
  • Patent number: 9280571
    Abstract: A method performed in a system that has a plurality of volumes stored to storage hardware, the method including generating, for each of the volumes, a respective space saving potential iteratively over time and scheduling space saving operations among the plurality of volumes by analyzing each of the volumes for space saving potential and assigning priority of resources based at least in part on space saving potential.
    Type: Grant
    Filed: August 14, 2014
    Date of Patent: March 8, 2016
    Assignee: NetApp, Inc.
    Inventors: Vinod Kumar Daga, Craig Johnston, Ling Zheng
  • Patent number: 9268502
    Abstract: In one embodiment, a node coupled to one or more storage devices executes a storage input/output (I/O) stack having a volume layer. The volume layer manages volume metadata embodied as mappings from offsets of a logical unit (LUN) to extent keys associated with storage locations for extents on the one or more storage devices. Volume metadata is maintained as a dense tree metadata structure representing successive points in time. The dense tree metadata structure has multiple levels, wherein a top level of the dense tree metadata structure represents newer volume metadata changes and descending levels of the dense tree metadata structure represent older volume metadata changes. The node accesses a latest version of changes to the volume metadata by searching from the top level to the descending levels in the dense tree metadata structure.
    Type: Grant
    Filed: September 16, 2013
    Date of Patent: February 23, 2016
    Assignee: NetApp, Inc.
    Inventors: Ling Zheng, Blake H. Lewis, Kayuri H. Patel
  • Publication number: 20160048333
    Abstract: The embodiments described herein are directed to efficient merging of metadata managed by a volume layer of a storage input/output (I/O) stack executing on one or more nodes of a cluster. The metadata managed by the volume layer, i.e., the volume metadata, is illustratively organized as a multi-level dense tree metadata structure, wherein each level of the dense tree metadata structure (dense tree) includes volume metadata entries for storing the volume metadata. The volume metadata entries of an upper level of the dense tree metadata structure are merged with the volume metadata entries of a next lower level of the dense tree metadata structure when the upper level is full. The volume metadata entries of the merged levels are organized as metadata pages and stored as one or more files on the SSDs.
    Type: Application
    Filed: October 30, 2015
    Publication date: February 18, 2016
    Inventors: Ling Zheng, Blake H. Lewis
  • Patent number: 9256378
    Abstract: A method for sharing data blocks in a hierarchical file system in a storage server includes allocating a plurality of data blocks in the file system, and sharing data blocks in the file system, without using a persistent point-in-time image, to avoid duplication of data blocks. A method for identifying data blocks that can be shared includes computing a fingerprint for each of multiple data blocks to be written to a storage facility and storing the fingerprint with information identifying the data block in an entry in a set of metadata. The set of metadata is used to identify data blocks which are duplicates.
    Type: Grant
    Filed: May 23, 2013
    Date of Patent: February 9, 2016
    Assignee: NetApp, Inc.
    Inventors: Ling Zheng, Blake H. Lewis, Daniel W. Ting, Robert M. English, Stephen L. Manley
  • Publication number: 20160034489
    Abstract: A system can maintain multiple queues for deduplication requests of different priorities. The system can also designate priority of storage units. The scheduling priority of a deduplication request is based on the priority of the storage unit indicated in the deduplication request and a trigger for the deduplication request.
    Type: Application
    Filed: October 9, 2015
    Publication date: February 4, 2016
    Inventors: Blake Lewis, Ling Zheng, Craig Johnston, Vinod Daga