Patents by Inventor Matthew Ahrens

Matthew Ahrens 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).

  • Patent number: 8495010
    Abstract: A method for writing a data block to a storage pool. The method including receiving a write operation for a block, determining whether the block comprises metadata, and if the block comprises metadata: determining a first replication type for the block, and writing the block to the storage pool in accordance with the first replication type. If the block does not comprise metadata: determining a second replication type for the block and writing the block to the storage pool in accordance with the second replication type.
    Type: Grant
    Filed: April 19, 2006
    Date of Patent: July 23, 2013
    Assignee: Oracle America, Inc.
    Inventors: William H. Moore, Jeffrey S. Bonwick, Matthew A. Ahrens
  • Publication number: 20130132195
    Abstract: Techniques are provided which allow classifying users into targeting segments. Methods and systems obtain a user's social graph, which indicates the user's social network connections. A first group of targeting segments that each of the user's social network connections belong to may be determined. A second group of targeting segments, which includes targeting segments that the user does not currently belong to, may be determined from the first group of targeting segments. A confidence rating may be assigned to each of the targeting segments in the second group. The user may be classified into one or more of the targeting segments in the second group of targeting segments based at least in part on the confidence rating.
    Type: Application
    Filed: November 22, 2011
    Publication date: May 23, 2013
    Applicant: Yahoo! Inc.
    Inventors: Aaron J. Klish, Greg Muchnik, Matthew Ahrens
  • Publication number: 20130097016
    Abstract: Techniques are provided which allow targeting social events. Methods and systems allow a user to register a social event which involves a group of users watching a program on a television on a social networking platform. Information related to the event may be obtained and the group of users may be classified as belonging to one or more targeting segments based at least in part on the information related to the event. One or more advertisements may be selected based at least in part on the one or more targeting segments. The one or more advertisements may be transmitted such that the one or more advertisements are displayed on the television.
    Type: Application
    Filed: October 14, 2011
    Publication date: April 18, 2013
    Applicant: Yahoo! Inc.
    Inventors: Aaron J. Klish, Greg Muchnik, Matthew Ahrens
  • Publication number: 20130006732
    Abstract: Techniques are provided which engage users and increase social interaction in group buying. Methods and systems may target users with a first advertisement comprising one or more proposed deals based at least in part on the users' electronic calendar entry information. The advertisements may be served and displayed in the users' electronic calendars. Users' responses to the proposed deal may be tracked. Users may be targeted and served with additional advertisements based at least in part the users' responses to the proposed deal included in the first advertisement and the calendar entry information. Users may forward the advertisements to other individuals to encourage them to participate in the proposed deals in order to receive additional discounts.
    Type: Application
    Filed: July 1, 2011
    Publication date: January 3, 2013
    Applicant: Yahoo! Inc.
    Inventors: Daniel Chen, Matthew Ahrens
  • Patent number: 8280858
    Abstract: A method for scrubbing a storage pool is disclosed. The method includes loading a scrub queue with a number of identifiers corresponding to a number of datasets, selecting a first identifier from the scrub queue, where the first identifier corresponds to a first dataset, initiating a scrubbing of the first dataset. The method further includes, upon receiving an indication of a requirement to pause the scrubbing, pausing the scrubbing of the first dataset, creating a bookmark recording a last location within the first dataset that was scrubbed before pausing the scrubbing of the first dataset, detecting at least one change to a storage pool, and performing a modification in response to detecting the at least one change to the storage pool.
    Type: Grant
    Filed: June 29, 2009
    Date of Patent: October 2, 2012
    Assignee: Oracle America, Inc.
    Inventors: Matthew A. Ahrens, Mark J. Maybee
  • Publication number: 20120191547
    Abstract: A system for generating advertisements is provided. The system includes an advertisement server, advertisement storage, and user activity storage. The advertisement server receives a request for an advertisement. The advertisement storage is in communication with the advertisement server. The advertisement storage includes a format for the advertisement and a pre-defined formula for calculating a value for the advertisement. The user activity storage is in communication with the advertisement server. The advertisement server calculates the value for the advertisement based on the formula and user data from the user activity storage.
    Type: Application
    Filed: January 26, 2011
    Publication date: July 26, 2012
    Applicant: Yahoo! Inc.
    Inventors: Matthew Ahrens, Greg Muchnik
  • Publication number: 20120011095
    Abstract: Method and apparatus for rule-based, proactive web browsing are provided. A set of rules is determined and stored in computer data storage, where each rule in the set of rules is a proactive browsing rule that indicates a web page. The occurrence of an event represented by event information is detected. In response to detecting the occurrence of the event, the set of rules is evaluated based on the event information to determine whether any rules are satisfied. While a web browser is in use, a determination is made that a particular rule is satisfied. In response to determining that the particular rule is satisfied, the web browser is automatically redirected to directly access a particular web page that is indicated in the particular rule.
    Type: Application
    Filed: July 9, 2010
    Publication date: January 12, 2012
    Inventors: Matthew Ahrens, Greg Muchnik
  • Publication number: 20120005163
    Abstract: A method for backing up a file system, including obtaining a first indirect block comprising a first block pointer, obtaining a first birth time from the first block pointer, determining whether the first birth time is subsequent to a time of a last backup, and backing up a first block referenced by the first block pointer, if the first birth time is subsequent to the time of the last backup.
    Type: Application
    Filed: September 16, 2011
    Publication date: January 5, 2012
    Applicant: ORACLE AMERICA, INC.
    Inventors: Matthew A. Ahrens, Mark J. Maybee
  • Patent number: 8069156
    Abstract: A computer readable medium including executable instructions for resilvering a hierarchical block tree in a storage pool. Resilvering the hierarchical block tree involves determining that a birth time of a parent block of a branch is greater than or equal to a lowest birth time on a dirty time log (DTL) and selectively traversing child indirect blocks in the branch to obtain a child data block, where each of the child indirect blocks includes a block pointer, a data checksum, and a birth time for a referenced block, where the birth time of each of the child indirect blocks is no greater than the birth time of the parent block. Resilvering the hierarchical block tree further involves resilvering the child data block when the DTL includes a birth time of the child data block, where one of the child indirect blocks includes the birth time of the child data block.
    Type: Grant
    Filed: February 17, 2010
    Date of Patent: November 29, 2011
    Assignee: Oracle America, Inc.
    Inventors: William H. Moore, Jeffrey S. Bonwick, Matthew A. Ahrens
  • Publication number: 20110283113
    Abstract: A processing device may generate a data encryption key configured to encrypt unique data within a clone of an encrypted data set and associated with a set of transaction identifiers of a transaction based file system. The processing device may further wrap the data encryption key with a wrapping key, create a cloned encrypted data set with the data encryption key, and store the wrapped data encryption key with the cloned encrypted data set indexed by at least one of the set of transaction identifiers.
    Type: Application
    Filed: May 14, 2010
    Publication date: November 17, 2011
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Darren J. Moffat, Jeffrey S. Bonwick, William H. Moore, Matthew A. Ahrens, Mark J. Maybee, George Wilson, Neil V. Perrin
  • Patent number: 7882420
    Abstract: A method for writing data to a storage pool includes receiving a write operation to write a logical block of data to the storage pool, determining a number (n?1) of physical blocks required to store the logical block of data, generating a parity block using the logical block of data, allocating n physical blocks in the storage pool, writing the parity block in the first of n allocated physical block, and writing the logical block of data across the remaining n?1 allocated physical blocks, where n is less than a number of disks in the storage pool, and where each of the n allocated physical blocks is located on a different disk in the storage pool.
    Type: Grant
    Filed: August 20, 2009
    Date of Patent: February 1, 2011
    Assignee: Oracle America, Inc.
    Inventors: William H. Moore, Jeffrey S. Bonwick, Matthew A. Ahrens
  • Patent number: 7877554
    Abstract: A system includes a storage pool including a first disk and a second disk, a data management unit (DMU), and a storage pool allocator (SPA). The SPA is configured to receive a request from the DMU to write a logical block, allocate a first physical block on the first disk, attempt to write the logical block to the first physical block, and allocate a second physical block on the second disk, if the attempt to write the logical block to the first physical block fails.
    Type: Grant
    Filed: April 19, 2006
    Date of Patent: January 25, 2011
    Assignee: Oracle America, Inc.
    Inventors: Jeffrey S. Bonwick, William H. Moore, Matthew A. Ahrens
  • Publication number: 20100332446
    Abstract: A method for scrubbing a storage pool. The method includes loading a scrub queue with a number of identifiers corresponding to a number of datasets, selecting a first identifier from the scrub queue, where the first identifier corresponds to a first dataset, initiating a scrubbing of the first dataset. The method further includes, upon receiving an indication of a requirement to pause the scrubbing, pausing the scrubbing of the first dataset, creating a bookmark recording a last location within the first dataset that was scrubbed before pausing the scrubbing of the first dataset, detecting at least one change to a storage pool, and performing a modification in response to detecting the at least one change to the storage pool.
    Type: Application
    Filed: June 29, 2009
    Publication date: December 30, 2010
    Applicant: SUN MICROSYSTEMS, INC.
    Inventors: Matthew A. Ahrens, Mark J. Maybee
  • Publication number: 20100184422
    Abstract: Embodiments are directed towards providing a web-based framework for access and use of mobile device applications within an application stack. The mobile device includes a mobile web framework application (MWFA) that, when the mobile device boots up, seeks to connect online to a remote web-based interface manager. The remote interface manager provides a display of an application user interface to the mobile device, from which a user may access various applications that may be configured to execute at a remote device rather than on the mobile device. The user may also add to or otherwise modify the applications within the application stack.
    Type: Application
    Filed: January 22, 2009
    Publication date: July 22, 2010
    Applicant: Yahoo! Inc.
    Inventor: Matthew Ahrens
  • Patent number: 7761432
    Abstract: A storage pool, that includes a hierarchical data structure, wherein the hierarchical data structure comprises a plurality of nodes, wherein one of the plurality of nodes corresponds to the file system, and the file system, wherein the file system is associated with a value corresponding to an attribute, wherein the value is determined using the hierarchical data structure.
    Type: Grant
    Filed: May 11, 2006
    Date of Patent: July 20, 2010
    Assignee: Oracle America, Inc.
    Inventors: Matthew A. Ahrens, Mark J. Maybee
  • Patent number: 7743225
    Abstract: A method for storing a data block in a storage pool, including receiving a write operation for the data block, writing the data block into the storage pool, determining a first indirect block to store in the storage pool, wherein the first indirect block references the data block, writing the first indirect block to a first location in the storage pool, creating a copy of the first indirect block, and writing the copy of first indirect block to a second location in the storage pool.
    Type: Grant
    Filed: April 19, 2006
    Date of Patent: June 22, 2010
    Assignee: Oracle America, Inc.
    Inventors: Jeffrey S. Bonwick, William H. Moore, Matthew A. Ahrens
  • Publication number: 20100145919
    Abstract: A computer readable medium includes executable instructions for resilvering a hierarchical block tree in a storage pool by traversing a branch of the hierarchical block tree only if a birth time of a parent block of the branch is greater than or equal to a lowest birth time on a dirty time log (DTL), and resilvering a child block in the branch only if the DTL comprises a birth time of the child block.
    Type: Application
    Filed: February 17, 2010
    Publication date: June 10, 2010
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: William H. Moore, Jeffrey S. Bonwick, Matthew A. Ahrens
  • Patent number: 7716445
    Abstract: A method for storing a first block and a second block, the includes storing the first block and the second block in a storage pool, and storing a third block in the storage pool, wherein the third block references the first block and second block and comprises a first fill count and a second fill count, wherein the first fill count corresponds to one selected from the group consisting of a number of data blocks directly referenced by the first block, a number of data blocks indirectly referenced by the first block, if the first block is an indirect block, wherein the first fill count is one if the first block is a data block.
    Type: Grant
    Filed: April 19, 2006
    Date of Patent: May 11, 2010
    Assignee: Oracle America, Inc.
    Inventors: Jeffrey S. Bonwick, William H. Moore, Matthew A. Ahrens
  • Patent number: 7657671
    Abstract: In general, the invention relates to a method for storing data. The method includes receiving an Input/Output (I/O) request to store data in a storage pool, determining whether the I/O request is a resilvering I/O request, if the I/O request is a resilvering I/O request: associating the I/O request with a first deadline, wherein the first deadline is associated with a low priority, and determining the quantized deadline for the I/O request using the first deadline. If the I/O request is not the resilvering I/O request: associating the I/O request with a second deadline, determining the quantized deadline for the I/O request using the second deadline, placing the I/O request in the I/O queue using the quantized deadline, and issuing the I/O request to the storage pool using the I/O queue.
    Type: Grant
    Filed: April 19, 2006
    Date of Patent: February 2, 2010
    Assignee: Sun Microsystems, Inc.
    Inventors: Jeffrey S. Bonwick, William H. Moore, Matthew A. Ahrens
  • Publication number: 20090313532
    Abstract: A method for writing data to a storage pool includes receiving a write operation to write a logical block of data to the storage pool, determining a number (n?1) of physical blocks required to store the logical block of data, generating a parity block using the logical block of data, allocating n physical blocks in the storage pool, writing the parity block in the first of n allocated physical block, and writing the logical block of data across the remaining n?1 allocated physical blocks, where n is less than a number of disks in the storage pool, and where each of the n allocated physical blocks is located on a different disk in the storage pool.
    Type: Application
    Filed: August 20, 2009
    Publication date: December 17, 2009
    Applicant: SUN MICROSYSTEMS, INC.
    Inventors: William H. Moore, Jeffrey S. Bonwick, Matthew A. Ahrens