Patents by Inventor Prabhu Thukkaram

Prabhu Thukkaram 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).

  • Publication number: 20210112115
    Abstract: A distributed event processing system is disclosed that receives continuous data streams, registers a continuous query against the data streams, and continuously executes the query as new data appears in the streams. In certain embodiments, the distributed event processing system deploys and executes applications (e.g., event processing applications) by distributing the execution of the application on a cluster of machines within the system. In certain embodiments, the system provides users with the ability to specify logical rules in an application. The system processes the logical rules by generating a DAG of transformations representing the logical rules and converts the DAG of transformations into a logical rules Resilient Distributed Dataset (RDD) DAG of transformations. The system processes events in an event batch against the RDD DAG of transformations to generate a set of output results for the user.
    Type: Application
    Filed: November 17, 2020
    Publication date: April 15, 2021
    Applicant: Oracle International Corporation
    Inventors: Hoyong Park, Gyorgy Geiszter, Dmitrii Andreevich Strizhikozin, Péter Gordos, Prabhu Thukkaram, Vitaly Bychkov, Dmitrii Markovskii
  • Publication number: 20210103592
    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: December 16, 2020
    Publication date: April 8, 2021
    Applicant: Oracle International Corporation
    Inventors: Sandeep Bishnoi, Hoyong Park, Subhrajyoti Choudhury, Yathish Gatty, Devendra Jain, Santosh Kumar, Prabhu Thukkaram
  • Patent number: 10958714
    Abstract: A distributed event processing system is disclosed that receives continuous data streams, registers a continuous query against the data streams, and continuously executes the query as new data appears in the streams. In certain embodiments, the distributed event processing system deploys and executes applications (e.g., event processing applications) by distributing the execution of the application on a cluster of machines within the system. In certain embodiments, the system receive updates to an application, processes the updated application against a continuous stream of data, and continuously generates updated results to a user. In certain embodiments, the system reduces delays associated with application deployment and execution when updates to an application are received. The system enables a user to view results pertaining to an updated application quickly without experiencing the typical deployment and execution delays that occur when updates to an application are made.
    Type: Grant
    Filed: September 4, 2019
    Date of Patent: March 23, 2021
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Gyorgy Geiszter, Dmitrii Andreevich Strizhikozin, Péter Gordos, Prabhu Thukkaram, Vitaly Bychkov, Dmitrii Markovskii
  • Publication number: 20210073054
    Abstract: Systems and methods described herein are directed towards a flexible event ingestion framework. In some examples, an input source comprising information that identifies a plurality of events may be identified. Additionally, in some examples, an adapter for ingesting the information of the input source may be implemented. At least one additional component for modifying the adapter may be received. The adapter may be modified by implementing the at least one additional component with a transport component and a mapper component as part of ingesting the information. Further, a tuple for at least a first event may be generated based at least in part on the modified adapter, and the tuple may be provided to an event server.
    Type: Application
    Filed: November 16, 2020
    Publication date: March 11, 2021
    Applicant: Oracle International Corporation
    Inventors: Hoyong Park, Vitaly Bychkov, Prabhu Thukkaram
  • Patent number: 10902000
    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: Grant
    Filed: September 4, 2018
    Date of Patent: January 26, 2021
    Assignee: Oracle International Corporation
    Inventors: Sandeep Bishnoi, Hoyong Park, Subhrajyoti Choudhury, Yathish Gatty, Devendra Jain, Santosh Kumar, Prabhu Thukkaram
  • Patent number: 10880363
    Abstract: A distributed event processing system is disclosed that receives continuous data streams, registers a continuous query against the data streams, and continuously executes the query as new data appears in the streams. In certain embodiments, the distributed event processing system deploys and executes applications (e.g., event processing applications) by distributing the execution of the application on a cluster of machines within the system. In certain embodiments, the system provides users with the ability to specify logical rules in an application. The system processes the logical rules by generating a DAG of transformations representing the logical rules and converts the DAG of transformations into a logical rules Resilient Distributed Dataset (RDD) DAG of transformations. The system processes events in an event batch against the RDD DAG of transformations to generate a set of output results for the user.
    Type: Grant
    Filed: September 4, 2019
    Date of Patent: December 29, 2020
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Gyorgy Geiszter, Dmitrii Andreevich Strizhikozin, Péter Gordos, Prabhu Thukkaram, Vitaly Bychkov, Dmitrii Markovskii
  • Patent number: 10872003
    Abstract: Systems and methods described herein are directed towards a flexible event ingestion framework. In some examples, an input source comprising information that identifies a plurality of events may be identified. Additionally, in some examples, an adapter for ingesting the information of the input source may be implemented. At least one additional component for modifying the adapter may be received. The adapter may be modified by implementing the at least one additional component with a transport component and a mapper component as part of ingesting the information. Further, a tuple for at least a first event may be generated based at least in part on the modified adapter, and the tuple may be provided to an event server.
    Type: Grant
    Filed: August 26, 2019
    Date of Patent: December 22, 2020
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Vitaly Bychkov, Prabhu Thukkaram
  • Patent number: 10831761
    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: April 3, 2019
    Date of Patent: November 10, 2020
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram, Iuliia Shmeleva
  • Patent number: 10831619
    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: Grant
    Filed: September 28, 2018
    Date of Patent: November 10, 2020
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Sandeep Bishnoi, Prabhu Thukkaram
  • 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
  • Publication number: 20200257694
    Abstract: Systems and methods for extracting tuples using dynamically generated extractor classes are disclosed. In some examples, an optimized tuple extraction class can be dynamically generated to enable more efficient tuple extraction.
    Type: Application
    Filed: April 30, 2020
    Publication date: August 13, 2020
    Applicant: Oracle International Corporation
    Inventors: Hoyong Park, Prabhu Thukkaram
  • 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: 10685024
    Abstract: Systems and methods for extracting tuples using dynamically generated extractor classes are disclosed. In some examples, an optimized tuple extraction class can be dynamically generated to enable more efficient tuple extraction.
    Type: Grant
    Filed: April 20, 2016
    Date of Patent: June 16, 2020
    Assignee: Oracle International Corporation
    Inventors: Hoyong Park, Prabhu Thukkaram
  • 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
  • Publication number: 20190394258
    Abstract: A distributed event processing system is disclosed that receives continuous data streams, registers a continuous query against the data streams, and continuously executes the query as new data appears in the streams. In certain embodiments, the distributed event processing system deploys and executes applications (e.g., event processing applications) by distributing the execution of the application on a cluster of machines within the system. In certain embodiments, the system receive updates to an application, processes the updated application against a continuous stream of data, and continuously generates updated results to a user. In certain embodiments, the system reduces delays associated with application deployment and execution when updates to an application are received. The system enables a user to view results pertaining to an updated application quickly without experiencing the typical deployment and execution delays that occur when updates to an application are made.
    Type: Application
    Filed: September 4, 2019
    Publication date: December 26, 2019
    Applicant: Oracle International Corporation
    Inventors: Hoyong Park, Gyorgy Geiszter, Dmitrii Andreevich Strizhikozin, Péter Gordos, Prabhu Thukkaram, Vitaly Bychkov, Dmitrii Markovskii
  • Publication number: 20190394259
    Abstract: A distributed event processing system is disclosed that receives continuous data streams, registers a continuous query against the data streams, and continuously executes the query as new data appears in the streams. In certain embodiments, the distributed event processing system deploys and executes applications (e.g., event processing applications) by distributing the execution of the application on a cluster of machines within the system. In certain embodiments, the system provides users with the ability to specify logical rules in an application. The system processes the logical rules by generating a DAG of transformations representing the logical rules and converts the DAG of transformations into a logical rules Resilient Distributed Dataset (RDD) DAG of transformations. The system processes events in an event batch against the RDD DAG of transformations to generate a set of output results for the user.
    Type: Application
    Filed: September 4, 2019
    Publication date: December 26, 2019
    Applicant: Oracle International Corporation
    Inventors: Hoyong Park, Gyorgy Geiszter, Dmitrii Andreevich Strizhikozin, Péter Gordos, Prabhu Thukkaram, Vitaly Bychkov, Dmitrii Markovskii
  • 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: 20190384656
    Abstract: Systems and methods described herein are directed towards a flexible event ingestion framework. In some examples, an input source comprising information that identifies a plurality of events may be identified. Additionally, in some examples, an adapter for ingesting the information of the input source may be implemented. At least one additional component for modifying the adapter may be received. The adapter may be modified by implementing the at least one additional component with a transport component and a mapper component as part of ingesting the information. Further, a tuple for at least a first event may be generated based at least in part on the modified adapter, and the tuple may be provided to an event server.
    Type: Application
    Filed: August 26, 2019
    Publication date: December 19, 2019
    Applicant: Oracle International Corporation
    Inventors: Hoyong Park, Vitaly Bychkov, Prabhu Thukkaram