Patents by Inventor Namit Jain

Namit Jain 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: 8176007
    Abstract: A method and apparatus for performing an action in response to a file system event is provided. According to one aspect, sets of “event listeners” are associated with a file hierarchy and/or the nodes thereof. Each event listener contains a set of “event handlers.” Each event handler corresponds to a separate type of event that may occur relative to the file hierarchy's nodes. When an event is going to occur relative to the hierarchy or a node thereof, all event listeners that are associated with that hierarchy/node are inspected to determine whether those event listeners contain any event handlers that correspond to the event's type. Those event handlers that correspond to the event's type are placed in an ordered list of event handlers to be invoked. As the event handlers in the list are invoked, programmatic mechanisms that correspond to those event handlers are executed to perform customized user-specified actions.
    Type: Grant
    Filed: February 11, 2011
    Date of Patent: May 8, 2012
    Assignee: Oracle International Corporation
    Inventors: Thuvan Hoang, Sam Idicula, Nipun Agarwal, Ravi Murthy, Asha Tarachandani, Namit Jain, Eric Sedlar
  • Patent number: 8145859
    Abstract: Techniques for managing memory usage of a processing system by spilling data from a memory to a persistent store based upon an evict policy are provided. A triggering event is detected. In response to the triggering event and based on the evict policy, it is determined whether data from the memory of the processing system is to be spilled to the persistent storage. The determination is made by comparing a level of free memory of the processing system with a threshold specified by the evict policy. The data is evicted from the memory.
    Type: Grant
    Filed: March 2, 2009
    Date of Patent: March 27, 2012
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Namit Jain, Anand Srinivasan, Shailendra Mishra
  • Publication number: 20120041934
    Abstract: A data stream management system (DSMS) is designed to support a new user-defined function, by creating and using at least two structures as follows. A first structure (“metadata entry”) is created in response to a command for creation of the new function, and maps a single instance of a class to the function's name. A second structure is created with creation of an operator on receipt of each new continuous query that uses the new function. The second structure (“operator specific data structure”) contains a path to the newly-created instance, which path is obtained by looking up the first structure. Additional second structures are created on receipt of additional continuous queries which use the new function, but all second structures contain the same path. All continuous queries use the same instance. Repeated use of a single instance to compile and execute multiple queries eliminates repeated instantiation of the same function.
    Type: Application
    Filed: September 23, 2011
    Publication date: February 16, 2012
    Applicant: Oracle International Corporation
    Inventors: Anand Srinivasan, Namit Jain, Shailendra Kumar Mishra
  • Patent number: 8103655
    Abstract: Simplifying a user's task in specifying a family of logics, with each logic designed to potentially select different subsets of values from the same continuous data stream at the same time instant. In one embodiment, all the logics are together specified by a common user specified software code design to accept a set of parameters, with different logics resulting from execution of the software code with different parametric values. Thus, when closely related family of logics are to be developed, the common software code may be formulated, with the code being designed to accept parameters and providing different logics for different sets of parametric values corresponding to the parameters.
    Type: Grant
    Filed: October 30, 2007
    Date of Patent: January 24, 2012
    Assignee: Oracle International Corporation
    Inventors: Anand Srinivasan, Namit Jain, Parul Jain, Shailendra Mishra
  • Patent number: 8073826
    Abstract: A data stream management system (DSMS) is designed to support a new user-defined function, by creating and using at least two structures as follows. A first structure (“metadata entry”) is created in response to a command for creation of the new function, and maps a single instance of a class to the function's name. A second structure is created with creation of an operator on receipt of each new continuous query that uses the new function. The second structure (“operator specific data structure”) contains a path to the newly-created instance, which path is obtained by looking up the first structure. Additional second structures are created on receipt of additional continuous queries which use the new function, but all second structures contain the same path. All continuous queries use the same instance. Repeated use of a single instance to compile and execute multiple queries eliminates repeated instantiation of the same function.
    Type: Grant
    Filed: October 18, 2007
    Date of Patent: December 6, 2011
    Assignee: Oracle International Corporation
    Inventors: Anand Srinivasan, Namit Jain, Shailendra Kumar Mishra
  • Publication number: 20110270879
    Abstract: A computer is programmed to accept a command to create a new aggregation defined by a user during execution of continuous queries on streams of data. The computer is further programmed to thereafter accept and process new continuous queries using the new aggregation, in a manner similar to built-in aggregations. The user typically writes a set of instructions to perform the new aggregation, and identifies in the command, a location of the set of instructions. In response to such a command, the computer creates metadata identifying the new aggregation. The metadata is used to instantiate one aggregation for each group of data in a current window, grouped by an attribute identified in a new query.
    Type: Application
    Filed: July 16, 2011
    Publication date: November 3, 2011
    Inventors: Anand Srinivasan, Namit Jain, Shailendra Kumar Mishra
  • Publication number: 20110246445
    Abstract: In one embodiment, a system for distributed event processing includes a first event processor and a second event processor. The first event processor receives event data associated with an event stream. The second event processor receives a query associated with the event stream. A request to the first event processor is generated by the second event processor based on the query for a first portion of event data associated with the event stream. The second event processor receives the first portion of event data from the first event processor. The second event processor then generates an event based on the first portion of event data.
    Type: Application
    Filed: June 17, 2011
    Publication date: October 6, 2011
    Applicant: Oracle International Corporation
    Inventors: Shailendra Mishra, Anand Srinivasan, Namit Jain
  • Publication number: 20110238655
    Abstract: A system and method for enabling a second database instance to more quickly process a request to execute a database statement that has previously been executed by a first database instance is described. In one embodiment, the method involves sending the database statement from the first database instance to the second database instance, and generating by the second database instance one or more structures needed to prepare the statement for execution, such as a parse tree and an execution plan for the statement. If at some point in the future, the second database instance receives a request to execute the same statement, the above structures can be used for execution, thereby eliminating the need for one or more potentially time-consuming operations, such as generation of a parse tree or execution plan for the statement.
    Type: Application
    Filed: June 13, 2011
    Publication date: September 29, 2011
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Carol L. Colrain, Namit Jain, Juan R. Loaiza
  • Patent number: 8019747
    Abstract: Facilitating flexible windows in querying continuous data streams. In one embodiment, a software code is associated with a window, wherein execution of the software code determines the values to be included in the window. On receiving a query indicating the window, the result of the query is generated based on the values in the window determined by execution of the software code. The software code may be identified by an identifier and thus used for different queries on the same or different continuous data streams.
    Type: Grant
    Filed: October 30, 2007
    Date of Patent: September 13, 2011
    Assignee: Oracle International Corporation
    Inventors: Anand Srinivasan, Namit Jain, Parul Jain, Shailendra Mishra
  • Patent number: 7996388
    Abstract: A new continuous query to a data stream management system (DSMS) may use a stream or a relation which may or may not be used by continuous queries previously registered in the DSMS. The DSMS is programmed to modify an execution plan to accommodate execution of the new query while continuing to execute the previously registered continuous queries. The modified execution plan may include new operators and/or share existing operators. The DSMS is programmed to cause operators which output a relation to propagate a current state of the relation to each newly-coupled operator that uses the relation. The current state is propagated only to operators that have been newly coupled and have thus not yet received any state information previously. After propagation of current state to newly-coupled operators, results of processing any new data for the relation are supplied to all operators coupled thereto, including newly-coupled operators and existing operators.
    Type: Grant
    Filed: October 17, 2007
    Date of Patent: August 9, 2011
    Assignee: Oracle International Corporation
    Inventors: Namit Jain, Anand Srinivasan, Shailendra Kumar Mishra
  • Patent number: 7991766
    Abstract: A computer is programmed to accept a command to create a new aggregation defined by a user during execution of continuous queries on streams of data. The computer is further programmed to thereafter accept and process new continuous queries using the new aggregation, in a manner similar to built-in aggregations. The user typically writes a set of instructions to perform the new aggregation, and identifies in the command, a location of the set of instructions. In response to such a command, the computer creates metadata identifying the new aggregation. The metadata is used to instantiate one aggregation for each group of data in a current window, grouped by an attribute identified in a new query.
    Type: Grant
    Filed: October 20, 2007
    Date of Patent: August 2, 2011
    Assignee: Oracle International Corporation
    Inventors: Anand Srinivasan, Namit Jain, Shailendra Kumar Mishra
  • Patent number: 7984040
    Abstract: In one embodiment, a system for distributed event processing includes a first event processor and a second event processor. The first event processor receives event data associated with an event stream. The second event processor receives a query associated with the event stream. A request to the first event processor is generated by the second event processor based on the query for a first portion of event data associated with the event stream. The second event processor receives the first portion of event data from the first event processor. The second event processor then generates an event based on the first portion of event data.
    Type: Grant
    Filed: June 5, 2008
    Date of Patent: July 19, 2011
    Assignee: Oracle International Corporation
    Inventors: Shailendra Mishra, Anand Srinivasan, Namit Jain
  • Patent number: 7984042
    Abstract: A system and method for enabling a second database instance to more quickly process a request to execute a database statement that has previously been executed by a first database instance is described. In one embodiment, the method involves sending the database statement from the first database instance to the second database instance, and generating by the second database instance one or more structures needed to prepare the statement for execution, such as a parse tree and an execution plan for the statement. If at some point in the future, the second database instance receives a request to execute the same statement, the above structures can be used for execution, thereby eliminating the need for one or more potentially time-consuming operations, such as generation of a parse tree or execution plan for the statement.
    Type: Grant
    Filed: March 23, 2005
    Date of Patent: July 19, 2011
    Assignee: Oracle International Corporation
    Inventors: Carol L. Colrain, Namit Jain, Juan R. Loaiza
  • Publication number: 20110173182
    Abstract: A method system and program for performing a query in which context and information including opcodes accompanies an execution plan for the query. The opcodes determine operations to retrieve a set of bind variables. The execution plan and context information shared by a plurality of application programs.
    Type: Application
    Filed: March 21, 2011
    Publication date: July 14, 2011
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Kumar RAJAMANI, Namit JAIN
  • Patent number: 7979420
    Abstract: A new continuous query to a data stream management system (DSMS) may use a silent relation whose source does not provide any heartbeats. During execution of any given operator, the DSMS processes data from one input (“active input”) using its time stamp as if the same time stamp is received from another input whose relation has fallen silent (“empty input”), if one or more predetermined conditions are met. One predetermined condition is that the empty input's operator has all its own inputs silent. And another predetermined condition is that a maximum time stamp that is currently present among all the inputs of the empty input's operator is equal to a time stamp that was last received from these same inputs. When both conditions are met, previously received data from the empty input is time stamped with the same time stamp as the most recently received data from the active input.
    Type: Grant
    Filed: October 16, 2007
    Date of Patent: July 12, 2011
    Assignee: Oracle International Corporation
    Inventors: Namit Jain, Anand Srinivasan, Shailendra Kumar Mishra
  • Publication number: 20110137963
    Abstract: A method and apparatus for performing an action in response to a file system event is provided. According to one aspect, sets of “event listeners” are associated with a file hierarchy and/or the nodes thereof. Each event listener contains a set of “event handlers.” Each event handler corresponds to a separate type of event that may occur relative to the file hierarchy's nodes. When an event is going to occur relative to the hierarchy or a node thereof, all event listeners that are associated with that hierarchy/node are inspected to determine whether those event listeners contain any event handlers that correspond to the event's type. Those event handlers that correspond to the event's type are placed in an ordered list of event handlers to be invoked. As the event handlers in the list are invoked, programmatic mechanisms that correspond to those event handlers are executed to perform customized user-specified actions.
    Type: Application
    Filed: February 11, 2011
    Publication date: June 9, 2011
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Thuvan HOANG, Sam Idicula, Nipun Agarwal, Ravi Murthy, Asha Tarachandani, Namit Jain, Eric Sedlar
  • Patent number: 7945540
    Abstract: A method to create a partition by time/tuple based window in an event processing service is provided. When continuous data streams are received, tuples are stored in a data structure with partitions based upon partition keys. Only a specified amount of tuples may be stored in each partition. When a partition exceeds the specified number of tuples, the oldest tuples are removed from the data structure. Tuples stored beyond a specified time period are also removed from the data structure. Two data structures may also be used to implement a time/tuple based window. Tuples are stored in both a data structure with a partition by window and a data structure with a range window. Tuples are removed in the partition by window when tuples exceed the amount in the partition. Tuples are removed in the range window when tuples exceed a specified time period. The two data structures are synchronized.
    Type: Grant
    Filed: October 4, 2007
    Date of Patent: May 17, 2011
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Namit Jain, Anand Srinivasan, Shailendra Mishra
  • Patent number: 7933928
    Abstract: A method and apparatus for loading an XML document into memory is provided. A client loads one or more array elements into a first partition of an array that is maintained in memory. Each array element represents an XML element of an XML document. Upon determining that an amount of data maintained in the first partition exceeds a first threshold, the client subsequently loads array elements into a new partition of the array. Upon determining that an amount of data maintained in the memory of the client exceeds a second threshold, the array elements of the least recently used partition are persistently stored in a database without persistently storing the entire XML document. When the last XML element of the XML document is loaded into a partition of the array, that partition is persistently stored in the database, thereby causing the entire XML document to be stored in the database.
    Type: Grant
    Filed: December 22, 2005
    Date of Patent: April 26, 2011
    Assignee: Oracle International Corporation
    Inventors: Sivasankaran Chandrasekar, Nipun Agarwal, Namit Jain, Ravi Murthy
  • Patent number: 7921076
    Abstract: A method and apparatus for performing an action in response to a file system event is provided. According to one aspect, sets of “event listeners” are associated with a file hierarchy and/or the nodes thereof. Each event listener contains a set of “event handlers.” Each event handler corresponds to a separate type of event that may occur relative to the file hierarchy's nodes. When an event is going to occur relative to the hierarchy or a node thereof, all event listeners that are associated with that hierarchy/node are inspected to determine whether those event listeners contain any event handlers that correspond to the event's type. Those event handlers that correspond to the event's type are placed in an ordered list of event handlers to be invoked. As the event handlers in the list are invoked, programmatic mechanisms that correspond to those event handlers are executed to perform customized user-specified actions.
    Type: Grant
    Filed: December 15, 2004
    Date of Patent: April 5, 2011
    Assignee: Oracle International Corporation
    Inventors: Thuvan Hoang, Sam Idicula, Nipun Agarwal, Ravi Murthy, Asha Tarachandani, Namit Jain, Eric Sedlar
  • Patent number: 7912835
    Abstract: A method system and program for performing a query in which context and information including opcodes accompanies an execution plan for the query. The opcodes determine operations to retrieve a set of bind variables. The execution plan and context information shared by a plurality of application programs.
    Type: Grant
    Filed: April 12, 2005
    Date of Patent: March 22, 2011
    Assignee: Oracle International Corporation
    Inventors: Kumar Rajamani, Namit Jain