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: 10789250Abstract: 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: GrantFiled: September 15, 2017Date of Patent: September 29, 2020Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram, Santosh Kumar, Pavan Advani, Kunal Mulay, Jeffrey Toillion
-
Patent number: 10740196Abstract: 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: GrantFiled: February 19, 2019Date of Patent: August 11, 2020Assignee: Oracle International CorporationInventors: Hoyong Park, Sandeep Bishnoi, Unmesh Anil Deshmukh, Prabhu Thukkaram
-
Patent number: 10713249Abstract: 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: GrantFiled: September 15, 2017Date of Patent: July 14, 2020Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram, Santosh Kumar, Pavan Advani, Kunal Mulay, Jeffrey Toillion
-
Patent number: 10698903Abstract: 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: GrantFiled: September 15, 2017Date of Patent: June 30, 2020Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram, Iuliia Shmeleva
-
Patent number: 10644932Abstract: 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: GrantFiled: February 1, 2019Date of Patent: May 5, 2020Assignee: Oracle International CorporationInventors: Sandeep Bishnoi, Anand Srinivasan
-
Publication number: 20200042351Abstract: 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: ApplicationFiled: October 15, 2019Publication date: February 6, 2020Applicant: Oracle International CorporationInventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram
-
Patent number: 10514952Abstract: 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: GrantFiled: September 6, 2017Date of Patent: December 24, 2019Assignee: Oracle International CorporationInventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram
-
Publication number: 20190278774Abstract: 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: ApplicationFiled: April 3, 2019Publication date: September 12, 2019Applicant: Oracle International CorporationInventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram, Iuliia Shmeleva
-
Publication number: 20190236070Abstract: 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: ApplicationFiled: April 5, 2019Publication date: August 1, 2019Applicant: Oracle International CorporationInventors: Unmesh Anil Deshmukh, Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram
-
Publication number: 20190179716Abstract: 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: ApplicationFiled: February 19, 2019Publication date: June 13, 2019Applicant: Oracle International CorporationInventors: Hoyong Park, Sandeep Bishnoi, Unmesh Anil Deshmukh, Prabhu Thukkaram
-
Publication number: 20190165990Abstract: 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: ApplicationFiled: February 1, 2019Publication date: May 30, 2019Applicant: Oracle International CorporationInventors: Sandeep Bishnoi, Anand Srinivasan
-
Patent number: 10303695Abstract: 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: GrantFiled: March 29, 2016Date of Patent: May 28, 2019Assignee: Oracle International CorporationInventors: Unmesh Anil Deshmukh, Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram
-
Patent number: 10298444Abstract: 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: GrantFiled: March 15, 2013Date of Patent: May 21, 2019Assignee: Oracle International CorporationInventors: Sandeep Bishnoi, Anand Srinivasan
-
Patent number: 10275492Abstract: 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: GrantFiled: September 15, 2017Date of Patent: April 30, 2019Assignee: Oracle International CorporationInventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram, Iuliia Shmeleva
-
Patent number: 10255141Abstract: 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: GrantFiled: May 20, 2016Date of Patent: April 9, 2019Assignee: Oracle International CorporationInventors: Hoyong Park, Sandeep Bishnoi, Unmesh Anil Deshmukh, Prabhu Thukkaram
-
Publication number: 20190102431Abstract: 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: ApplicationFiled: September 29, 2018Publication date: April 4, 2019Applicant: Oracle International CorporationInventors: Sandeep Bishnoi, Hoyong Park, Iuliia Shmeleva, Vitaly Vitalievich Bychkov, Gyorgy Geiszter, Péter Gordos
-
Publication number: 20190102415Abstract: 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: ApplicationFiled: September 25, 2018Publication date: April 4, 2019Applicant: Oracle International CorporationInventors: Sandeep Bishnoi, Prabhu Thukkaram, Iuliia Shmeleva, Dmitrii Markovskii, Vitaly Vitalievich Bychkov, Gyorgy Geiszter
-
Publication number: 20190102435Abstract: 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: ApplicationFiled: September 4, 2018Publication date: April 4, 2019Applicant: Oracle International CorporationInventors: Sandeep Bishnoi, Hoyong Park, Subhrajyoti Choudhury, Yathish Gatty, Devendra Jain, Santosh Kumar, Prabhu Thukkaram
-
Publication number: 20190102791Abstract: 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: ApplicationFiled: June 28, 2018Publication date: April 4, 2019Applicant: Oracle International CorporationInventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram
-
Publication number: 20190102266Abstract: 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: ApplicationFiled: September 28, 2018Publication date: April 4, 2019Applicant: Oracle International CorporationInventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram