Patents by Inventor Tanuj Khurana

Tanuj Khurana 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: 12072881
    Abstract: A computer system receives a database query to be executed against a database having a database table that stores records associated with keys. The database query specifies a set of conditional expressions that affect which ones of those records are returned. Based on the set of conditional expressions, the computer system derives a set of key ranges. The deriving can include representing the set of conditional expressions as a set of key spaces, performing a set of logical operations on pairs of those key spaces to reduce a number of key spaces in the set of key spaces, and converting the set of key spaces into the set of key ranges after performing the set of logical operations.
    Type: Grant
    Filed: January 6, 2023
    Date of Patent: August 27, 2024
    Assignee: Salesforce, Inc.
    Inventors: Kadir Ozdemir, Tanuj Khurana
  • Publication number: 20240232194
    Abstract: Techniques are disclosed relating to deriving a set of key ranges. A computer system receives a database query to be executed against a database having a database table that stores records associated with keys. The database query specifies a set of conditional expressions that affect which ones of those records are returned. Based on the set of conditional expressions, the computer system derives a set of key ranges. The deriving can include representing the set of conditional expressions as a set of key spaces, performing a set of logical operations on pairs of those key spaces to reduce a number of key spaces in the set of key spaces, and converting the set of key spaces into the set of key ranges after performing the set of logical operations.
    Type: Application
    Filed: January 6, 2023
    Publication date: July 11, 2024
    Inventors: Kadir Ozdemir, Tanuj Khurana
  • Patent number: 10929100
    Abstract: Implementations are provided herein for causally ordering events within a distributed file system. Each node within the distributed file system, when processing an event, can collect object/version pairs associated with event (e.g., an object identifier and an object version number of the object at the time of the event). Object/version pairs can be identified and labeled as reliable or unreliable based on the operation performed on the inode as a part of the event. Relationships between events can be established when two events modify the same object and one event has a lower revision number. If the two object/revision pairs are in a relationship, an unreliable relationship can be deemed a weak edge and a reliable relationship can be deemed a strong edge. Using the strong and weak edges associated with object/revision pairs, a causal order of events can be generated.
    Type: Grant
    Filed: September 7, 2018
    Date of Patent: February 23, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Raeanne Marks, Jason Vigil, Tanuj Khurana
  • Patent number: 10684992
    Abstract: Implementations are provided herein for using inode revision numbers associated with a modified LIN and a set of Parent LINs to causally order transactions within a distributed file system. Any time an inode is changed, its inode revision number can be incremented by 1. When events within file system are processed causing an inode or a set of inodes to be modified, an event transaction log entry can made. The event transaction log entry can denote a description of the event, a set of modified inode and inode revision number pairs, and a set of parent inode and inode revision number pairs. Entries in the event transaction log can be used to build an inode map for each inode implicated in the event transaction log. The inode map can be used to build a set of direct causal dependencies for each transaction in the event transaction log.
    Type: Grant
    Filed: April 28, 2017
    Date of Patent: June 16, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Raeanne Marks, Jonathan M. Walton, Ronald Steinke, Karthik Palaiappan, Tanuj Khurana, Steven Hubbell
  • Patent number: 10298709
    Abstract: Implementations are provided herein for utilizing the two-part nature of HDFS protocol communications received in a non-native HDFS environment to use discriminative information learned in the NameNode request to make the client experience more efficient. NameNode requests can be received by any node among a cluster of nodes. It can be appreciated that in some non-native HDFS, clients can communicate with any nodes among a cluster to perform transactions and need not first communicate with a NameNode. Thus, upon receiving a NameNode request, the non-native HDFS Cluster of Nodes can prefetch data necessary from stable storage to cache memory for efficient reads and/or writes, allocate space on disk for writes, assign the client to communicate with a specific node among the cluster of nodes based on available cluster resources, etc. In this sense, a more efficient client experience can be offered for HDFS clients within a non-native HDFS environment.
    Type: Grant
    Filed: December 31, 2014
    Date of Patent: May 21, 2019
    Assignee: EMC IP Holding Company LLC
    Inventors: Steven Hubbell, Ryan M. Peterson, Tanuj Khurana, Claudio Fahey
  • Publication number: 20190079726
    Abstract: Implementations are provided herein for causally ordering events within a distributed file system. Each node within the distributed file system, when processing an event, can collect object/version pairs associated with event (e.g., an object identifier and an object version number of the object at the time of the event). Object/version pairs can be identified and labeled as reliable or unreliable based on the operation performed on the inode as a part of the event. Relationships between events can be established when two events modify the same object and one event has a lower revision number. If the two object/revision pairs are in a relationship, an unreliable relationship can be deemed a weak edge and a reliable relationship can be deemed a strong edge. Using the strong and weak edges associated with object/revision pairs, a causal order of events can be generated.
    Type: Application
    Filed: September 7, 2018
    Publication date: March 14, 2019
    Applicant: EMC IP Holding Company LLC
    Inventors: Raeanne Marks, Jason Vigil, Tanuj Khurana