Patents by Inventor James Leong

James Leong 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: 20240110204
    Abstract: Described herein are recombinant fermenting organisms having a heterologous polynucleotide encoding a phospholipase. Also described are processes for producing a fermentation product, such as ethanol, from starch or cellulosic-containing material with the recombinant fermenting organisms.
    Type: Application
    Filed: October 10, 2023
    Publication date: April 4, 2024
    Applicant: Novozymes A/S
    Inventors: Chee-Leong Soong, James Ron Huffman, Monica Tassone, Jung Yi, Hanlin Ouyang
  • Patent number: 11372807
    Abstract: A copy-free transition tool converts storage objects from a source format associated with a source storage system to a destination format associated with a destination storage system. The transition tool exports configuration information associated with the source storage system to the destination storage system and brings the storage objects offline. Once the transition tool determines that the storage devices containing the storage objects are physically connected to the destination storage system, the tool can convert file systems from the source format to the destination format while leaving data and file layout unchanged. The tool can also modify metadata associated with each of the storage objects to conform to the destination format and store the modified metadata with the destination storage system.
    Type: Grant
    Filed: May 7, 2020
    Date of Patent: June 28, 2022
    Assignee: NetApp Inc.
    Inventors: Vani Vully, Anil Thoppil, James Leong, Vitaly Revsin, Qinghua Zheng, Srishylam Simharajan
  • Publication number: 20200265008
    Abstract: A copy-free transition tool converts storage objects from a source format associated with a source storage system to a destination format associated with a destination storage system. The transition tool exports configuration information associated with the source storage system to the destination storage system and brings the storage objects offline. Once the transition tool determines that the storage devices containing the storage objects are physically connected to the destination storage system, the tool can convert file systems from the source format to the destination format while leaving data and file layout unchanged. The tool can also modify metadata associated with each of the storage objects to conform to the destination format and store the modified metadata with the destination storage system.
    Type: Application
    Filed: May 7, 2020
    Publication date: August 20, 2020
    Inventors: Vani Vully, Anil Thoppil, James Leong, Vitaly Revsin, Qinghua Zheng, Srishylam Simharajan
  • Patent number: 10684985
    Abstract: A copy-free transition tool converts storage objects from a source format associated with a source storage system to a destination format associated with a destination storage system. The transition tool exports configuration information associated with the source storage system to the destination storage system and brings the storage objects offline. Once the transition tool determines that the storage devices containing the storage objects are physically connected to the destination storage system, the tool can convert file systems from the source format to the destination format while leaving data and file layout unchanged. The tool can also modify metadata associated with each of the storage objects to conform to the destination format and store the modified metadata with the destination storage system.
    Type: Grant
    Filed: February 16, 2016
    Date of Patent: June 16, 2020
    Assignee: NetApp Inc.
    Inventors: Vani Vully, Anil Thoppil, James Leong, Vitaly Revsin, Qinghua Zheng, Srishylam Simharajan
  • Publication number: 20170235802
    Abstract: A copy-free transition tool converts storage objects from a source format associated with a source storage system to a destination format associated with a destination storage system. The transition tool exports configuration information associated with the source storage system to the destination storage system and brings the storage objects offline. Once the transition tool determines that the storage devices containing the storage objects are physically connected to the destination storage system, the tool can convert file systems from the source format to the destination format while leaving data and file layout unchanged. The tool can also modify metadata associated with each of the storage objects to conform to the destination format and store the modified metadata with the destination storage system.
    Type: Application
    Filed: February 16, 2016
    Publication date: August 17, 2017
    Inventors: Vani Vully, Anil Thoppil, James Leong, Vitaly Revsin, Qinghua Zheng, Srishylam Simharajan
  • Patent number: 9411514
    Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.
    Type: Grant
    Filed: December 20, 2013
    Date of Patent: August 9, 2016
    Assignee: NetApp, Inc.
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
  • Publication number: 20140173198
    Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.
    Type: Application
    Filed: December 20, 2013
    Publication date: June 19, 2014
    Applicant: NetApp, Inc.
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
  • Patent number: 8621465
    Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.
    Type: Grant
    Filed: March 15, 2011
    Date of Patent: December 31, 2013
    Assignee: NetApp, Inc.
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
  • Patent number: 8275939
    Abstract: Storage servers use a fast, non-volatile or persistent memory to store data until it can be written to slower mass storage devices such as disk drives. If the server crashes before a write can complete, the data remains safely stored in non-volatile memory. If the data cannot be committed to disk when the server reboots (e.g. because the destination mass storage device is unavailable), it is stored in a file. When the disk reappears, the data in the file may be used to restore a file or filesystem on the disk to a consistent state.
    Type: Grant
    Filed: December 2, 2011
    Date of Patent: September 25, 2012
    Assignee: Network Appliance, Inc.
    Inventors: Ratnesh Gupta, James Leong, Atul Goel
  • Patent number: 8209587
    Abstract: Embodiments of the present invention disclose a technique for providing an indication whether data stored on a disk drive are invalid. As used herein, invalid data are data written prior to the disk drive being added to an array of the disk drives or data in a block that has become free and which has been removed from the corresponding parity block of the stripe. Knowing that the disk drive was written prior to the drive being added to the existing array or having data which has become invalid allows a storage server to ignore the invalid data and not to use it when computing parity (i.e., a data protection value computed as a result of a logical operation on data blocks in a stripe in the array of disk drives). This, in turn, eliminates the need to zero disk drives or to perform parity re-computation prior to using the disk drives.
    Type: Grant
    Filed: April 12, 2007
    Date of Patent: June 26, 2012
    Assignee: NetApp, Inc.
    Inventors: James Taylor, Atul Goel, James Leong
  • Publication number: 20120079322
    Abstract: Storage servers use a fast, non-volatile or persistent memory to store data until it can be written to slower mass storage devices such as disk drives. If the server crashes before a write can complete, the data remains safely stored in non-volatile memory. If the data cannot be committed to disk when the server reboots (e.g. because the destination mass storage device is unavailable), it is stored in a file. When the disk reappears, the data in the file may be used to restore a file or filesystem on the disk to a consistent state.
    Type: Application
    Filed: December 2, 2011
    Publication date: March 29, 2012
    Inventors: Ratnesh Gupta, James Leong, Atul Goel
  • Patent number: 8074019
    Abstract: Storage servers use a fast, non-volatile or persistent memory to store data until it can be written to slower mass storage devices such as disk drives. If the server crashes before a write can complete, the data remains safely stored in non-volatile memory. If the data cannot be committed to disk when the server reboots (e.g. because the destination mass storage device is unavailable), it is stored in a file. When the disk reappears, the data in the file may be used to restore a file or file system on the disk to a consistent state.
    Type: Grant
    Filed: November 13, 2007
    Date of Patent: December 6, 2011
    Assignee: Network Appliance, Inc.
    Inventors: Ratnesh Gupta, James Leong, Atul Goel
  • Publication number: 20110191780
    Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.
    Type: Application
    Filed: March 15, 2011
    Publication date: August 4, 2011
    Applicant: NETAPP, INC.
    Inventors: Srinivasan Viswanathan, James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange
  • Patent number: 7958304
    Abstract: Redundant Array of Inexpensive Disks (RAID) groups in a storage system are dynamically reconfigured by merging and splitting the RAID groups. When an indication of a change to data or system characteristics is received, disks in the RAID groups of the storage system can be reorganized to adapt to the change.
    Type: Grant
    Filed: April 30, 2008
    Date of Patent: June 7, 2011
    Assignee: Network Appliance, Inc.
    Inventors: Atul Goel, James Leong, Ratnesh Gupta
  • Patent number: 7926059
    Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.
    Type: Grant
    Filed: May 13, 2009
    Date of Patent: April 12, 2011
    Assignee: NetApp, Inc.
    Inventors: Srinivasan Viswanathan, James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange
  • Patent number: 7685462
    Abstract: A method for operating a data storage system is described. The method first constructs an I/O tree representing a logical configuration of storage devices coupled to the storage system, the I/O tree representing a flow of I/O operations to the storage devices. Elements of the I/O tree are represented by objects. A freeze condition is imposed on a selected object of the I/O tree in order to disable a portion of the storage devices serviced by the selected object. Configuration management operations are performed on the portion of the storage devices serviced by the selected object. The freeze condition is removed from the selected object in response to completion of the configuration management, in order to resume I/O operations to the portion of the storage devices serviced by the selected object.
    Type: Grant
    Filed: January 8, 2008
    Date of Patent: March 23, 2010
    Assignee: NetApp, Inc.
    Inventors: James Leong, Scott Schoenthal, Srinivasan Viswanathan, Rajesh Sundaram
  • Patent number: 7587630
    Abstract: A method and system for rapidly recovering data from a failed disk in a RAID disk group are disclosed. According to one aspect of the present invention, a RAID-based storage system identifies a particular disk in a RAID disk group as a “dead” disk (e.g., incapable of servicing client-initiated requests in a timely manner). Accordingly, a spare disk is allocated to replace the “dead” disk and client-initiated read/write requests are directed to the spare disk for servicing. In addition, a disk-to-disk copy operation is initiated. Without overwriting valid data on the target disk with stale data from the “dead” disk, the disk-to-disk copy operation copies data from the “dead” disk to the target by directly reading data from the “dead” disk while reconstructing only the data that cannot be read directly from the “dead” disk.
    Type: Grant
    Filed: April 29, 2005
    Date of Patent: September 8, 2009
    Assignee: Network Appliance, Inc.
    Inventors: Loellyn Cassell, Atul Goel, James Leong, Rajesh Sundaram
  • Publication number: 20090222829
    Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.
    Type: Application
    Filed: May 13, 2009
    Publication date: September 3, 2009
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
  • Patent number: 7539991
    Abstract: The present invention implements an I/O task architecture in which an I/O task requested by the storage manager, for example a stripe write, is decomposed into a number of lower-level asynchronous I/O tasks that can be scheduled independently. Resources needed by these lower-level I/O tasks are dynamically assigned, on an as-needed basis, to balance the load and use resources efficiently, achieving higher scalability. A hierarchical order is assigned to the I/O tasks to ensure that there is a forward progression of the higher-level I/O task and to ensure that resources do not become deadlocked.
    Type: Grant
    Filed: March 21, 2002
    Date of Patent: May 26, 2009
    Assignee: NetApp, Inc.
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
  • Publication number: 20090125669
    Abstract: Storage servers use a fast, non-volatile or persistent memory to store data until it can be written to slower mass storage devices such as disk drives. If the server crashes before a write can complete, the data remains safely stored in non-volatile memory. If the data cannot be committed to disk when the server reboots (e.g. because the destination mass storage device is unavailable), it is stored in a file. When the disk reappears, the data in the file may be used to restore a file or file system on the disk to a consistent state.
    Type: Application
    Filed: November 13, 2007
    Publication date: May 14, 2009
    Inventors: Ratnesh Gupta, James Leong, Atul Goel