Patents by Inventor Sandeep Bishnoi

Sandeep Bishnoi 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: 10789250
    Abstract: An event processing system for processing events in an event stream is disclosed. The system can execute instructions to receive a continuous query, apply a transformation to the continuous query to generate a query plan for the continuous query, monitor the continuous query using a monitoring transformation process, receive a micro-batch stream of input events related to an application, and process the input events of the micro-batch stream based at least in part on the monitoring transformation process to generate a set of output events related to the application.
    Type: Grant
    Filed: September 15, 2017
    Date of Patent: September 29, 2020
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram, Santosh Kumar, Pavan Advani, Kunal Mulay, Jeffrey Toillion
  • Patent number: 10740196
    Abstract: An event processing system is disclosed that processes events of an event stream and performs the recovery of events during system failure. The recovery of events is performed by generating output sequence numbers for each deterministic output event generated by the event processing system. In an embodiment, the event processing system determines a current output sequence number of a most recently transmitted output event in a output stream of events, a last output sequence number of an output event corresponding to a most recently processed batch of input events and determines a set of one or more output events of the output stream to be transmitted based on the current sequence number and the last output sequence number. The event processing system then transmits the output events related to the application.
    Type: Grant
    Filed: February 19, 2019
    Date of Patent: August 11, 2020
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Sandeep Bishnoi, Unmesh Anil Deshmukh, Prabhu Thukkaram
  • Patent number: 10713249
    Abstract: An event processing system for processing events in an event stream is disclosed. The system can execute instructions to receive a micro-batch stream of input events, process the input events using the CQL engine to generate a set of output events, generate, using a snapshot management algorithm implemented by the CQL engine, a snapshot of a current state of a system based at least in part on the set of output events related to the application, generate a first directory structure to access snapshot information associated with the snapshot of the current state of the system, generate a second directory structure to generate a list of snapshots associated with the current state of the system, and determine based at least in part on the snapshot management algorithm, a process to get, add, or clean the list of snapshots associated with the current state of the system.
    Type: Grant
    Filed: September 15, 2017
    Date of Patent: July 14, 2020
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram, Santosh Kumar, Pavan Advani, Kunal Mulay, Jeffrey Toillion
  • Patent number: 10698903
    Abstract: An event processing system for processing events in an event stream is disclosed. The system can execute instructions to receive a continuous data stream related to an application, identify an input geometry associated with the continuous data stream, generate a cluster of geometries based at least in part on the input geometry, generate an output geometry based at least in part on the cluster of geometries and a number of geometries in each cluster of the cluster of geometries, determining one or more partitions for the output geometry based on the cluster of geometries and the number of geometries in each cluster of the cluster of geometries, dynamically change a size of the one or more partitions for the output geometry, and transmitting the output geometry associated with the continuous data stream.
    Type: Grant
    Filed: September 15, 2017
    Date of Patent: June 30, 2020
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram, Iuliia Shmeleva
  • Patent number: 10644932
    Abstract: Improved techniques are provided for processing streams of data. The duration of the time that an event is eligible for remaining in a time-based window can be variable for different events received via the same event stream. In certain embodiments, the duration of time that an input event spends in a time-based window is a function of one or more values of one or more attributes of the event. Since different events can have different one or more attribute values, the different events can spend different amounts of time in the time-based window for that event stream. The amount of time that an event spends in a time-based window can be controlled via the one or more attributes of the event.
    Type: Grant
    Filed: February 1, 2019
    Date of Patent: May 5, 2020
    Assignee: Oracle International Corporation
    Inventors: Sandeep Bishnoi, Anand Srinivasan
  • Publication number: 20200042351
    Abstract: An event processing system for processing events in an event stream is disclosed. The system is configured for configuring a stream processor to micro-batch incoming events from a stream source. The system is also configured for generating a single timestamp for a micro-batch of the incoming events and/or receiving the micro-batch of the incoming events from the stream source. The system can also be configured for assigning the single timestamp to each event of the micro-batch and/or generating separate timestamp values for each respective event of the micro-batch. In some examples, the system can also be configured for assigning, for each respective event of the micro-batch, an individual one of the separate timestamp values.
    Type: Application
    Filed: October 15, 2019
    Publication date: February 6, 2020
    Applicant: Oracle International Corporation
    Inventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram
  • Patent number: 10514952
    Abstract: An event processing system for processing events in an event stream is disclosed. The system is configured for configuring a stream processor to micro-batch incoming events from a stream source. The system is also configured for generating a single timestamp for a micro-batch of the incoming events and/or receiving the micro-batch of the incoming events from the stream source. The system can also be configured for assigning the single timestamp to each event of the micro-batch and/or generating separate timestamp values for each respective event of the micro-batch. In some examples, the system can also be configured for assigning, for each respective event of the micro-batch, an individual one of the separate timestamp values.
    Type: Grant
    Filed: September 6, 2017
    Date of Patent: December 24, 2019
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram
  • Publication number: 20190278774
    Abstract: An event processing system for processing events in an event stream is disclosed. The system can execute instructions to receive a continuous data stream related to an application, convert geometry of the continuous data stream into a relation, track a plurality of moving objects in the continuous data stream, determine a relationship between at least a first object and a second object (e.g., a first moving object and a second moving object in the plurality of moving objects) based at least on the geometry of a continuous data stream and the relation. and perform an action based at least one the determined relationship.
    Type: Application
    Filed: April 3, 2019
    Publication date: September 12, 2019
    Applicant: Oracle International Corporation
    Inventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram, Iuliia Shmeleva
  • Publication number: 20190236070
    Abstract: Systems and methods for query decomposition for scalability of continuous query processing are disclosed. In some examples, it is determined whether a query is fully stateful. If it is, the query may be divided into two functions, an aggregate function and a global function. The aggregate functions may be distributed across multiple distributed nodes and executed in parallel. The global function may then receive the results from the distributed nodes and join the results to achieve the fully stateful result.
    Type: Application
    Filed: April 5, 2019
    Publication date: August 1, 2019
    Applicant: Oracle International Corporation
    Inventors: Unmesh Anil Deshmukh, Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram
  • Publication number: 20190179716
    Abstract: An event processing system is disclosed that processes events of an event stream and performs the recovery of events during system failure. The recovery of events is performed by generating output sequence numbers for each deterministic output event generated by the event processing system. In an embodiment, the event processing system determines a current output sequence number of a most recently transmitted output event in a output stream of events, a last output sequence number of an output event corresponding to a most recently processed batch of input events and determines a set of one or more output events of the output stream to be transmitted based on the current sequence number and the last output sequence number. The event processing system then transmits the output events related to the application.
    Type: Application
    Filed: February 19, 2019
    Publication date: June 13, 2019
    Applicant: Oracle International Corporation
    Inventors: Hoyong Park, Sandeep Bishnoi, Unmesh Anil Deshmukh, Prabhu Thukkaram
  • Publication number: 20190165990
    Abstract: Improved techniques are provided for processing streams of data. The duration of the time that an event is eligible for remaining in a time-based window can be variable for different events received via the same event stream. In certain embodiments, the duration of time that an input event spends in a time-based window is a function of one or more values of one or more attributes of the event. Since different events can have different one or more attribute values, the different events can spend different amounts of time in the time-based window for that event stream. The amount of time that an event spends in a time-based window can be controlled via the one or more attributes of the event.
    Type: Application
    Filed: February 1, 2019
    Publication date: May 30, 2019
    Applicant: Oracle International Corporation
    Inventors: Sandeep Bishnoi, Anand Srinivasan
  • Patent number: 10303695
    Abstract: Systems and methods for query decomposition for scalability of continuous query processing are disclosed. In some examples, it is determined whether a query is fully stateful. If it is, the query may be divided into two functions, an aggregate function and a global function. The aggregate functions may be distributed across multiple distributed nodes and executed in parallel. The global function may then receive the results from the distributed nodes and join the results to achieve the fully stateful result.
    Type: Grant
    Filed: March 29, 2016
    Date of Patent: May 28, 2019
    Assignee: Oracle International Corporation
    Inventors: Unmesh Anil Deshmukh, Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram
  • Patent number: 10298444
    Abstract: Improved techniques are provided for processing streams of data. The duration of the time that an event is eligible for remaining in a time-based window can be variable for different events received via the same event stream. In certain embodiments, the duration of time that an input event spends in a time-based window is a function of one or more values of one or more attributes of the event. Since different events can have different one or more attribute values, the different events can spend different amounts of time in the time-based window for that event stream. The amount of time that an event spends in a time-based window can be controlled via the one or more attributes of the event.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: May 21, 2019
    Assignee: Oracle International Corporation
    Inventors: Sandeep Bishnoi, Anand Srinivasan
  • Patent number: 10275492
    Abstract: An event processing system for processing events in an event stream is disclosed. The system can execute instructions to receive a continuous data stream related to an application, convert geometry of the continuous data stream into a relation, track a plurality of moving objects in the continuous data stream, determine a relationship between at least a first object and a second object (e.g., a first moving object and a second moving object in the plurality of moving objects) based at least on the geometry of a continuous data stream and the relation. and perform an action based at least one the determined relationship.
    Type: Grant
    Filed: September 15, 2017
    Date of Patent: April 30, 2019
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram, Iuliia Shmeleva
  • Patent number: 10255141
    Abstract: An event processing system is disclosed that processes events of an event stream and performs the recovery of events during system failure. The recovery of events is performed by generating output sequence numbers for each deterministic output event generated by the event processing system. In an embodiment, the event processing system determines a current output sequence number of a most recently transmitted output event in a output stream of events, a last output sequence number of an output event corresponding to a most recently processed batch of input events and determines a set of one or more output events of the output stream to be transmitted based on the current sequence number and the last output sequence number. The event processing system then transmits the output events related to the application.
    Type: Grant
    Filed: May 20, 2016
    Date of Patent: April 9, 2019
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Sandeep Bishnoi, Unmesh Anil Deshmukh, Prabhu Thukkaram
  • Publication number: 20190102431
    Abstract: Techniques for implementing logical queries in a distributed stream processing system using automatic branching and joins. An exemplary technique includes determining a query is a logical query. The logical query includes two or more summaries based on different groups configured to execute in a single query stage of a stream analytics application. The technique further includes converting the logical query into one or more physical queries. The one or more physical queries are separated into individual query stages, and each of the query stages includes a summary from the two or more summaries that is based on an associated group. The technique further includes generating a directed acyclic graph for the one or more physical queries. The directed acyclic graph includes a physical query transformation for each of the individual query stages.
    Type: Application
    Filed: September 29, 2018
    Publication date: April 4, 2019
    Applicant: Oracle International Corporation
    Inventors: Sandeep Bishnoi, Hoyong Park, Iuliia Shmeleva, Vitaly Vitalievich Bychkov, Gyorgy Geiszter, Péter Gordos
  • Publication number: 20190102415
    Abstract: Techniques for processing data streaming from one or more event sources in order to recreate a database table with database transactions for real-time analytics. An exemplary technique includes receiving a stream of events comprising change data for a table attribute, populating an in-memory table with the change data based on a token associated with an operation type and a mapping of a first attribute and a second attribute to a key attribute of the in-memory table, executing a continuous query on the change data for the key attribute of the in-memory table to generate events comprising data for a third attribute, and outputting the events having an output shape comprising the third attribute, where the events include the data for the third attribute.
    Type: Application
    Filed: September 25, 2018
    Publication date: April 4, 2019
    Applicant: Oracle International Corporation
    Inventors: Sandeep Bishnoi, Prabhu Thukkaram, Iuliia Shmeleva, Dmitrii Markovskii, Vitaly Vitalievich Bychkov, Gyorgy Geiszter
  • Publication number: 20190102435
    Abstract: An event processing system for distributing a continuous query, and processing events in an event stream, is disclosed. The system can synchronize timestamps across all partitions by adding a heartbeat propagator component propagating a heartbeat signal for silent partitions. The system can further include a timestamp tracker component that tracks the maximum observed timestamp across all partitions for each batch, and sends this to each partition. The system can distribute partitions of the events to the worker nodes, and instruct a heartbeat propagator component to generate a heartbeat for a first worker node corresponding to an event in a different partition. The system receives outputs from the worker nodes and combines these into a single result corresponding to a continuous query. The system can further implement a timestamp tracker to select a highest timestamp value of a previous batch, and send the value to the worker nodes.
    Type: Application
    Filed: September 4, 2018
    Publication date: April 4, 2019
    Applicant: Oracle International Corporation
    Inventors: Sandeep Bishnoi, Hoyong Park, Subhrajyoti Choudhury, Yathish Gatty, Devendra Jain, Santosh Kumar, Prabhu Thukkaram
  • Publication number: 20190102791
    Abstract: Techniques for processing event streams are provided that use streaming analytics to estimate a target user for dynamic assets. An exemplary technique includes receiving a batch of events that have position data for a potential target, determining one or more polygons that comprise the potential target based on the position data for the potential target, determining an approximate target viewership for the one or more polygons based on a profile or taxonomy of the potential target, associating an advertisement with the one or more polygons based on the approximate target viewership, receiving a continuous stream of events that have position data for a dynamic asset, determining that the one or more polygons include the dynamic asset based on the position data for the dynamic asset, obtaining the advertisement associated with the one or more polygons, and providing the advertisement to a sink for display on the dynamic asset.
    Type: Application
    Filed: June 28, 2018
    Publication date: April 4, 2019
    Applicant: Oracle International Corporation
    Inventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram
  • Publication number: 20190102266
    Abstract: Techniques for providing fault-tolerant stream processing. An exemplary technique includes writing primary output events to a primary target and secondary output events to one or more secondary targets, where the primary output events are written by a primary server and the secondary output events are written by one or more secondary servers. The technique further includes receiving an election of a new primary server from a synchronization system upon a failure of the primary server, where the new primary server is elected from the one or more secondary servers. The technique further includes determining, by the new primary server, the primary output events that failed to be written to the primary target because of the failure of the primary server, and writing, by the new primary server, the failed primary output events to the primary target using the secondary output events read from the one or more secondary targets.
    Type: Application
    Filed: September 28, 2018
    Publication date: April 4, 2019
    Applicant: Oracle International Corporation
    Inventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram