Patents by Inventor Rodric Rabbah
Rodric Rabbah 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: 11194572Abstract: At a cloud platform, a class of feed is received for an external feed corresponding to an information source, as are an instruction corresponding to a create operation for the external feed, and a dictionary input corresponding to parameters expected by the information source. The external feed produces a corresponding class of events. At the cloud platform, a handler is selected based on the received class of feed and the received create operation; the input dictionary is transferred to the handler; and the handler generates a unique destination to receive events for the class of events. The handler on the cloud platform generates a unique request to the information source to generate events of the class of feed to the unique destination and sends the request to the information source. Events generated from the information source responsive to the unique request are received at the unique destination.Type: GrantFiled: December 9, 2016Date of Patent: December 7, 2021Assignee: International Business Machines CorporationInventors: Stephen Fink, Hoang Anh Le, Vinod Muthusamy, Rodric Rabbah, Jeremias Werner
-
Patent number: 10896181Abstract: A processor may receive a query from a user. The query may include one or more portions. The processor may identify a primary function. The processor may determine to segment the primary function into two or more subsidiary functions. The processor may process a first portion of the query with a first subsidiary function. The processor may display a processed outcome of the query to the user.Type: GrantFiled: October 5, 2017Date of Patent: January 19, 2021Assignee: International Business Machines CorporationInventors: Rodric Rabbah, Nicholas M. Mitchell, Stephen Fink, Olivier L. J. Tardieu
-
Publication number: 20200204618Abstract: A serverless function execution system enables fast, efficient and flexible deployment and execution of serverless functions. Functions in the system are stored as code at a location accessible by a Uniform Resource Locator (URL) or unique hostname. A combinatorial URL, the combination of the two locations, is utilized to combine specific code with a specific computation system to execute that code along with optional parameters. The system utilizes function isolation to prevent an executing function from being able to directly access or modify unauthorized data or processes external to the isolation unit.Type: ApplicationFiled: December 23, 2019Publication date: June 25, 2020Inventors: Anshu Agarwal, Perry Cheng, Rodric Rabbah, Eric Sven-Johan Swildens
-
Patent number: 10691881Abstract: A method, system and computer readable program product are disclosed for compiling a spreadsheet to execute stream processing in a computing system. In an embodiment, the method comprises extracting a function from the spreadsheet, said function supporting data windows and stream partitioning in the computing system; and identifying input cells of the spreadsheet for holding input values for the function, and identifying output cells of the spreadsheet for holding output values of the function. In embodiments of the invention, a data stream is partitioned into a plurality of data stream partitions, and the extracted function is applied to the stream partitions in parallel. In embodiments of the invention, the extracted function is applied to the data stream partitions in series. The windows may be time based windows, and may be count based windows, and the windows may have variable sizes.Type: GrantFiled: February 8, 2016Date of Patent: June 23, 2020Assignee: International Business Machines CorporationInventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier Tardieu, Mandana Vaziri
-
Patent number: 10691526Abstract: Output is obtained from a remote computer function on a first set of arguments. Responsive to determining that the output exhibits an error, a fixer routine, other than a retry, is applied to the arguments to produce new arguments. Output is obtained from the remote computer function on the new arguments. In a case where the output from the remote computer function on the new arguments is acceptable, the output from the remote computer function on the new arguments is used as a corresponding output from the remote computer function on the first set of arguments. These steps can advantageously be carried out without modifying program code of the remote computer function and without access to the program code of the remote computer function; for example, by a wrapper which black-box wraps the remote computer function.Type: GrantFiled: November 8, 2017Date of Patent: June 23, 2020Assignee: International Business Machines CorporationInventors: Daniel W. Barowy, Emery D. Berger, Charles M. Curtsinger, Rodric Rabbah
-
Publication number: 20190138383Abstract: Output is obtained from a remote computer function on a first set of arguments. Responsive to determining that the output exhibits an error, a fixer routine, other than a retry, is applied to the arguments to produce new arguments. Output is obtained from the remote computer function on the new arguments. In a case where the output from the remote computer function on the new arguments is acceptable, the output from the remote computer function on the new arguments is used as a corresponding output from the remote computer function on the first set of arguments. These steps can advantageously be carried out without modifying program code of the remote computer function and without access to the program code of the remote computer function; for example, by a wrapper which black-box wraps the remote computer function.Type: ApplicationFiled: November 8, 2017Publication date: May 9, 2019Inventors: Daniel W. Barowy, Emery D. Berger, Charles M. Curtsinger, Rodric Rabbah
-
Publication number: 20190108259Abstract: A processor may receive a query from a user. The query may include one or more portions. The processor may identify a primary function. The processor may determine to segment the primary function into two or more subsidiary functions. The processor may process a first portion of the query with a first subsidiary function. The processor may display a processed outcome of the query to the user.Type: ApplicationFiled: October 5, 2017Publication date: April 11, 2019Inventors: Rodric Rabbah, Nicholas M. Mitchell, Stephen Fink, Olivier L. J. Tardieu
-
Patent number: 10255262Abstract: A method, system and computer readable program product are disclosed for encoding a function in a spreadsheet program to execute stream processing on a computing system. In embodiments of the invention, the method comprises encoding one or more formulas in one or more cells of the spreadsheet program, each of the formulas supporting data windows and stream partitioning; designating a first group of cells of the spreadsheet program as input cells for holding input values for the one or more formulas; and designating a second group of cells of the spreadsheet program as output cells for holding output values of the one or more formulas. In embodiments of the invention, the stream partitioning includes partitioning a defined stream of data into a plurality of data stream partitions, and the one or more formulas are encoded to operate on the plurality of data stream partitions.Type: GrantFiled: February 8, 2016Date of Patent: April 9, 2019Assignee: International Business Machines CorporationInventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier Tardieu, Mandana Vaziri
-
Patent number: 10191735Abstract: An action sequence including a plurality of actions and a corresponding input dictionary are obtained. A first container, running an image for a first one of the actions implemented in a first programming language, is instantiated, and the image is executed on the input dictionary to obtain a first action result; the input dictionary is then updated with the first action result to obtain an updated input dictionary. A second container, running an image for a second one of the actions implemented in a second programming language, different than the first programming language, is instantiated, and the image is executed on the updated input dictionary to obtain a second action result; the updated input dictionary is further updated with the second action result to obtain a further updated input dictionary. The input dictionaries are independent of the programming languages.Type: GrantFiled: February 21, 2017Date of Patent: January 29, 2019Inventors: Perry S. Cheng, Stephen Fink, Vinod Muthusamy, Rodric Rabbah, Aleksander Slominski
-
Patent number: 10185558Abstract: An action sequence including a plurality of actions and a corresponding input dictionary are obtained. A first container, running an image for a first one of the actions implemented in a first programming language, is instantiated, and the image is executed on the input dictionary to obtain a first action result; the input dictionary is then updated with the first action result to obtain an updated input dictionary. A second container, running an image for a second one of the actions implemented in a second programming language, different than the first programming language, is instantiated, and the image is executed on the updated input dictionary to obtain a second action result; the updated input dictionary is further updated with the second action result to obtain a further updated input dictionary. The input dictionaries are independent of the programming languages.Type: GrantFiled: December 31, 2017Date of Patent: January 22, 2019Assignee: International Business Machines CorporationInventors: Perry S. Cheng, Stephen Fink, Vinod Muthusamy, Rodric Rabbah, Aleksander Slominski
-
Patent number: 10176160Abstract: Converting data transformations entered in a spreadsheet program into a circuit representation of those transformations. The circuit representation can run independently of the spreadsheet program to transform input data into output data. In some cases the circuit representation is in the form of hardware, accepts and/or produces data streams, and/or the circuit and/or output data or data streams can be shared among multiple users and/or subscribers. Where data streams are processed, the transformations may include well-specified timing semantics, supporting operations that involve rate-based rate manipulation, value-based rate manipulation, and/or access to past cell values.Type: GrantFiled: December 21, 2016Date of Patent: January 8, 2019Assignee: International Business Machines CorporationInventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier L. J. Tardieu, Mandana Vaziri
-
Publication number: 20180121195Abstract: An action sequence including a plurality of actions and a corresponding input dictionary are obtained. A first container, running an image for a first one of the actions implemented in a first programming language, is instantiated, and the image is executed on the input dictionary to obtain a first action result; the input dictionary is then updated with the first action result to obtain an updated input dictionary. A second container, running an image for a second one of the actions implemented in a second programming language, different than the first programming language, is instantiated, and the image is executed on the updated input dictionary to obtain a second action result; the updated input dictionary is further updated with the second action result to obtain a further updated input dictionary. The input dictionaries are independent of the programming languages.Type: ApplicationFiled: December 31, 2017Publication date: May 3, 2018Inventors: Perry S. Cheng, Stephen Fink, Vinod Muthusamy, Rodric Rabbah, Aleksander Slominski
-
Patent number: 9753708Abstract: The present disclosure relates generally to the field of automatic conversion of sequential array-based programs to parallel MapReduce programs. In various examples, automatic conversion of sequential array-based programs to parallel MapReduce programs may be implemented in the form of systems, methods and/or algorithms.Type: GrantFiled: August 7, 2015Date of Patent: September 5, 2017Assignee: International Business Machines CorporationInventors: Stephen Fink, Rodric Rabbah, Cosmin A. Radoi, Manu Sridharan
-
Patent number: 9747089Abstract: The present disclosure relates generally to the field of automatic conversion of sequential array-based programs to parallel MapReduce programs. In various examples, automatic conversion of sequential array-based programs to parallel MapReduce programs may be implemented in the form of systems, methods and/or algorithms.Type: GrantFiled: October 21, 2014Date of Patent: August 29, 2017Assignee: International Business Machines CorporationInventors: Stephen Fink, Rodric Rabbah, Cosmin A. Radoi, Manu Sridharan
-
Publication number: 20170242689Abstract: An action sequence including a plurality of actions and a corresponding input dictionary are obtained. A first container, running an image for a first one of the actions implemented in a first programming language, is instantiated, and the image is executed on the input dictionary to obtain a first action result; the input dictionary is then updated with the first action result to obtain an updated input dictionary. A second container, running an image for a second one of the actions implemented in a second programming language, different than the first programming language, is instantiated, and the image is executed on the updated input dictionary to obtain a second action result; the updated input dictionary is further updated with the second action result to obtain a further updated input dictionary. The input dictionaries are independent of the programming languages.Type: ApplicationFiled: February 21, 2017Publication date: August 24, 2017Inventors: Perry S. Cheng, Stephen Fink, Vinod Muthusamy, Rodric Rabbah, Aleksander Slominski
-
Publication number: 20170242737Abstract: At a cloud platform, a class of feed is received for an external feed corresponding to an information source, as are an instruction corresponding to a create operation for the external feed, and a dictionary input corresponding to parameters expected by the information source. The external feed produces a corresponding class of events. At the cloud platform, a handler is selected based on the received class of feed and the received create operation; the input dictionary is transferred to the handler; and the handler generates a unique destination to receive events for the class of events. The handler on the cloud platform generates a unique request to the information source to generate events of the class of feed to the unique destination and sends the request to the information source. Events generated from the information source responsive to the unique request are received at the unique destination.Type: ApplicationFiled: December 9, 2016Publication date: August 24, 2017Inventors: Stephen Fink, Hoang Anh Le, Vinod Muthusamy, Rodric Rabbah, Jeremias Werner
-
Publication number: 20170228357Abstract: A method, system and computer readable program product are disclosed for compiling a spreadsheet to execute stream processing in a computing system. In an embodiment, the method comprises extracting a function from the spreadsheet, said function supporting data windows and stream partitioning in the computing system; and identifying input cells of the spreadsheet for holding input values for the function, and identifying output cells of the spreadsheet for holding output values of the function. In embodiments of the invention, a data stream is partitioned into a plurality of data stream partitions, and the extracted function is applied to the stream partitions in parallel. In embodiments of the invention, the extracted function is applied to the data stream partitions in series. The windows may be time based windows, and may be count based windows, and the windows may have variable sizes.Type: ApplicationFiled: February 8, 2016Publication date: August 10, 2017Inventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier Tardieu, Mandana Vaziri
-
Publication number: 20170228358Abstract: A method, system and computer readable program product are disclosed for encoding a function in a spreadsheet program to execute stream processing on a computing system. In embodiments of the invention, the method comprises encoding one or more formulas in one or more cells of the spreadsheet program, each of the formulas supporting data windows and stream partitioning; designating a first group of cells of the spreadsheet program as input cells for holding input values for the one or more formulas; and designating a second group of cells of the spreadsheet program as output cells for holding output values of the one or more formulas. In embodiments of the invention, the stream partitioning includes partitioning a defined stream of data into a plurality of data stream partitions, and the one or more formulas are encoded to operate on the plurality of data stream partitions.Type: ApplicationFiled: February 8, 2016Publication date: August 10, 2017Inventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier Tardieu, Mandana Vaziri
-
Publication number: 20170097925Abstract: Converting data transformations entered in a spreadsheet program into a circuit representation of those transformations. The circuit representation can run independently of the spreadsheet program to transform input data into output data. In some cases the circuit representation is in the form of hardware, accepts and/or produces data streams, and/or the circuit and/or output data or data streams can be shared among multiple users and/or subscribers. Where data streams are processed, the transformations may include well-specified timing semantics, supporting operations that involve rate-based rate manipulation, value-based rate manipulation, and/or access to past cell values.Type: ApplicationFiled: December 21, 2016Publication date: April 6, 2017Inventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier L. J. Tardieu, Mandana Vaziri
-
Patent number: 9569418Abstract: Converting data transformations entered in a spreadsheet program into a circuit representation of those transformations. The circuit representation can run independently of the spreadsheet program to transform input data into output data. In some cases the circuit representation is in the form of hardware, accepts and/or produces data streams, and/or the circuit and/or output data or data streams can be shared among multiple users and/or subscribers. Where data streams are processed, the transformations may include well-specified timing semantics, supporting operations that involve rate-based rate manipulation, value-based rate manipulation, and/or access to past cell values.Type: GrantFiled: June 27, 2014Date of Patent: February 14, 2017Assignee: International Busines Machines CorporationInventors: Martin J. Hirzel, Rodric Rabbah, Philippe Suter, Olivier L. J. Tardieu, Mandana Vaziri