Patents by Inventor Eric Jian Yang

Eric Jian Yang 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: 11204809
    Abstract: An apparatus includes a processor to: based on data dependencies specified in a job flow definition, identify first and second tasks of the corresponding job flow to be performed sequentially, wherein the first task outputs a data object used as an input to the second; store, within a task queue, at least one message conveying at least an identifier of the first task, and an indication that the data object is to be exchanged through a shared memory space; within a task container, in response to storage of the at least one message within the task queue, sequentially execute first and second task routines to sequentially perform the first and second tasks, respectively, and instantiate the shared memory space to be accessible to the first and second task routines during their executions; and upon completion of the job flow, transmit an indication of completion to another device via a network.
    Type: Grant
    Filed: May 5, 2021
    Date of Patent: December 21, 2021
    Assignee: SAS INSTITUTE INC.
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Eric Jian Yang, Qing Gong, Partha Dutta, Kais Arfaoui
  • Patent number: 11169788
    Abstract: An apparatus includes a processor to: use an identifier of a requesting device or operator thereof to identify federated area(s) to which access is authorized; based on data dependencies among a set of tasks of a job flow, derive an order of performance specifying the first task to be performed; store, within a task queue, a task routine execution request message including an identifier associated with the first task, and federated area identifier(s) of the identified federated area(s); within a resolver container, in response to storage of the task routine execution request message, use the identifier associated with the first task and identifier(s) of the federated area(s) to identify one in which a first task routine is stored; within a task container, execute the first task routine to perform the first task; and upon completion of the job flow, transmit an indication of completion to the requesting device.
    Type: Grant
    Filed: April 7, 2021
    Date of Patent: November 9, 2021
    Assignee: SAS INSTITUTE INC.
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Eric Jian Yang, Qing Gong, Partha Dutta, Kais Arfaoui
  • Patent number: 11137990
    Abstract: An apparatus includes at least on processor to: parse a job flow definition for a job flow to identify an implicit expression of a data dependency arising from a data object output by a first task of the job flow and input to a second task thereof, wherein the first task is referred to as a data object required by the second as an input; in response to identifying the implicit expression, derive an order of performance of the tasks of the job flow that includes performing the first task before the second to ensure generation of the data object prior to performance of the second; for each task, retrieve a corresponding task routine; execute the task routines in an order that follows the order of performance of the tasks; and transmit, to the requesting device via the network, an indication of successful performance of the job flow.
    Type: Grant
    Filed: December 31, 2020
    Date of Patent: October 5, 2021
    Assignee: SAS INSTITUTE INC.
    Inventors: Henry Gabriel Victor Bequet, Eric Jian Yang, Qing Gong, Kais Arfaoui, Ronald Earl Stogner, Partha Dutta
  • Publication number: 20210255843
    Abstract: An apparatus includes a processor to: based on data dependencies specified in a job flow definition, identify first and second tasks of the corresponding job flow to be performed sequentially, wherein the first task outputs a data object used as an input to the second; store, within a task queue, at least one message conveying at least an identifier of the first task, and an indication that the data object is to be exchanged through a shared memory space; within a task container, in response to storage of the at least one message within the task queue, sequentially execute first and second task routines to sequentially perform the first and second tasks, respectively, and instantiate the shared memory space to be accessible to the first and second task routines during their executions; and upon completion of the job flow, transmit an indication of completion to another device via a network.
    Type: Application
    Filed: May 5, 2021
    Publication date: August 19, 2021
    Applicant: SAS Institute Inc.
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Eric Jian Yang, Qing Gong, Partha Dutta, Kais Arfaoui
  • Patent number: 11086608
    Abstract: An apparatus includes at least one processor to: within a kill container, execute a kill routine to monitor a task kill queue for storage of an execution status message indicating a level of a parameter of execution of a task routine to perform a task of a job flow, and in response to the level exceeding a threshold, store, within the task kill queue, a kill tasks request message; within a task container, in response to the kill tasks request message, cease execution of the task routine, and store, within a task queue, a task cancelation message; within a performance container, execute instructions of a performance routine to, in response to the task cancelation message, store, within a job queue, a job cancelation message; and in response to the job cancelation message, transmit an indication of cancelation of the job flow to a requesting device.
    Type: Grant
    Filed: December 31, 2020
    Date of Patent: August 10, 2021
    Assignee: SAS INSTITUTE INC.
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Eric Jian Yang, Qing Gong
  • Patent number: 11086671
    Abstract: An apparatus includes processor(s) to: receive, a request to cancel a performance of a job flow; store, within a task kill queue, a kill tasks request message; within a task container, in response to the storage of the kill tasks request message, cease execution of instructions of a task routine to cease performance of a task of a set of tasks of the job flow, and store, within a task queue, a task cancelation message indicating cancelation of execution of the task routine; within a performance container, execute instructions of a performance routine to cause the at least one processor to, in response to the storage of the task canceled message, store, within a job queue, a job cancelation message indicating cancelation of the job flow; and in response to the storage of the job cancelation message, transmit an indication of cancelation of the job flow to the requesting device.
    Type: Grant
    Filed: October 8, 2020
    Date of Patent: August 10, 2021
    Assignee: SAS INSTITUTE INC.
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Eric Jian Yang, Qing Gong, Chaowang “Ricky” Zhang
  • Patent number: 11086607
    Abstract: An apparatus includes processor(s) to: within a kill container, monitor a task kill queue for execution failure message(s) indicating failure of a task routine to perform a task of a job flow, and in response to a quantity of execution failure messages reaching a threshold, store, within the task kill queue, a kill tasks request message; within a task container, in response to the kill tasks request message, cease execution of the task routine to cease performance of the task, and store, within the task queue, a task cancelation message indicating cancelation of the task routine; within a performance container, in response to the task canceled message, store, within a job queue, a job cancelation message indicating cancelation of the job flow; and in response to the job cancelation message, transmit an indication of cancelation of the job flow to a requesting device.
    Type: Grant
    Filed: October 8, 2020
    Date of Patent: August 10, 2021
    Assignee: SAS INSTITUTE INC.
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Eric Jian Yang, Qing Gong, Chaowang Ricky Zhang
  • Publication number: 20210224051
    Abstract: An apparatus includes a processor to: use an identifier of a requesting device or operator thereof to identify federated area(s) to which access is authorized; based on data dependencies among a set of tasks of a job flow, derive an order of performance specifying the first task to be performed; store, within a task queue, a task routine execution request message including an identifier associated with the first task, and federated area identifier(s) of the identified federated area(s); within a resolver container, in response to storage of the task routine execution request message, use the identifier associated with the first task and identifier(s) of the federated area(s) to identify one in which a first task routine is stored; within a task container, execute the first task routine to perform the first task; and upon completion of the job flow, transmit an indication of completion to the requesting device.
    Type: Application
    Filed: April 7, 2021
    Publication date: July 22, 2021
    Applicant: SAS Institute Inc.
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Eric Jian Yang, Qing Gong, Partha Dutta, Kais Arfaoui
  • Publication number: 20210141622
    Abstract: An apparatus includes at least one processor to: within a kill container, execute a kill routine to monitor a task kill queue for storage of an execution status message indicating a level of a parameter of execution of a task routine to perform a task of a job flow, and in response to the level exceeding a threshold, store, within the task kill queue, a kill tasks request message; within a task container, in response to the kill tasks request message, cease execution of the task routine, and store, within a task queue, a task cancelation message; within a performance container, execute instructions of a performance routine to, in response to the task cancelation message, store, within a job queue, a job cancelation message; and in response to the job cancelation message, transmit an indication of cancelation of the job flow to a requesting device.
    Type: Application
    Filed: December 31, 2020
    Publication date: May 13, 2021
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Eric Jian Yang, Qing Gong
  • Publication number: 20210141623
    Abstract: An apparatus includes at least on processor to: parse a job flow definition for a job flow to identify an implicit expression of a data dependency arising from a data object output by a first task of the job flow and input to a second task thereof, wherein the first task is referred to as a data object required by the second as an input; in response to identifying the implicit expression, derive an order of performance of the tasks of the job flow that includes performing the first task before the second to ensure generation of the data object prior to performance of the second; for each task, retrieve a corresponding task routine; execute the task routines in an order that follows the order of performance of the tasks; and transmit, to the requesting device via the network, an indication of successful performance of the job flow.
    Type: Application
    Filed: December 31, 2020
    Publication date: May 13, 2021
    Inventors: Henry Gabriel Victor Bequet, Eric Jian Yang, Qing Gong, Kais Arfaoui, Ronald Earl Stogner, Partha Dutta
  • Publication number: 20210072964
    Abstract: An apparatus includes processor(s) to: within a kill container, monitor a task kill queue for execution failure message(s) indicating failure of a task routine to perform a task of a job flow, and in response to a quantity of execution failure messages reaching a threshold, store, within the task kill queue, a kill tasks request message; within a task container, in response to the kill tasks request message, cease execution of the task routine to cease performance of the task, and store, within the task queue, a task cancelation message indicating cancelation of the task routine; within a performance container, in response to the task canceled message, store, within a job queue, a job cancelation message indicating cancelation of the job flow; and in response to the job cancelation message, transmit an indication of cancelation of the job flow to a requesting device.
    Type: Application
    Filed: October 8, 2020
    Publication date: March 11, 2021
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Eric Jian Yang, Qing Gong, Chaowang "Ricky" Zhang
  • Publication number: 20210072963
    Abstract: An apparatus includes processor(s) to: receive, a request to cancel a performance of a job flow; store, within a task kill queue, a kill tasks request message; within a task container, in response to the storage of the kill tasks request message, cease execution of instructions of a task routine to cease performance of a task of a set of tasks of the job flow, and store, within a task queue, a task cancelation message indicating cancelation of execution of the task routine; within a performance container, execute instructions of a performance routine to cause the at least one processor to, in response to the storage of the task canceled message, store, within a job queue, a job cancelation message indicating cancelation of the job flow; and in response to the storage of the job cancelation message, transmit an indication of cancelation of the job flow to the requesting device.
    Type: Application
    Filed: October 8, 2020
    Publication date: March 11, 2021
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Eric Jian Yang, Qing Gong, Chaowang "Ricky" Zhang
  • Patent number: 10740076
    Abstract: An apparatus includes a processor to: receive a request to perform a set of tasks; analyze input data objects used as inputs and output data objects generated as outputs by the set of tasks to identify at least one dependency between tasks and at least one pair of tasks performable in parallel; determine an order of performance of the set of tasks; retrieve executable instructions of a corresponding set of task routines that define input interfaces and output interfaces for the input data objects and output data objects, respectively; generate a job flow definition defining the order of performance, each input interface and each output interface; use the job flow definition to perform the set of tasks; and transmit one of the output data objects to the requesting device as a result report serving as the output of the set of tasks.
    Type: Grant
    Filed: December 9, 2019
    Date of Patent: August 11, 2020
    Assignee: SAS INSTITUTE
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Chaowang “Ricky” Zhang, Eric Jian Yang, Qing Gong
  • Patent number: 10664253
    Abstract: An apparatus includes a processor to: receive a request to perform a set of tasks; analyze input data objects used as inputs and output data objects generated as outputs by the set of tasks to identify at least one dependency between tasks and at least one pair of tasks performable in parallel; determine an order of performance of the set of tasks; retrieve executable instructions of a corresponding set of task routines that define input interfaces and output interfaces for the input data objects and output data objects, respectively; generate a job flow definition defining the order of performance, each input interface and each output interface; use the job flow definition to perform the set of tasks; and transmit one of the output data objects to the requesting device as a result report serving as the output of the set of tasks.
    Type: Grant
    Filed: December 9, 2019
    Date of Patent: May 26, 2020
    Assignee: SAS INSTITUTE
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Chaowang “Ricky” Zhang, Eric Jian Yang, Qing Gong
  • Patent number: 10657107
    Abstract: An apparatus includes a processor to: receive a request from a remote device to perform a job flow; retrieve a job flow definition defining the job flow and each of a set of task routines to perform tasks of the job flow from a set of storage devices where each is stored as an undivided object within one storage device; and in response to determining that a data set is stored as multiple data object blocks, generate a container containing the job flow definition and set of task routines to enable each storage device to perform the job flow using a locally stored data object block of the data set as input to generate a corresponding data object block of a result report, provide a copy of the container to each storage device, and transmit the result report assembled from the data object blocks thereof to the remote device.
    Type: Grant
    Filed: December 29, 2019
    Date of Patent: May 19, 2020
    Assignee: SAS INSTITUTE INC.
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Eric Jian Yang, Chaowang “Ricky” Zhang, Partha Dutta, Qing Gong
  • Patent number: 10650046
    Abstract: An apparatus includes a processor to: receive a request from a remote device to perform a job flow; retrieve a job flow definition defining the job flow and each of a set of task routines to perform tasks of the job flow from a set of storage devices where each is stored as an undivided object within one storage device; and in response to determining that a data set is stored as multiple data object blocks, generate a container containing the job flow definition and set of task routines to enable each storage device to perform the job flow using a locally stored data object block of the data set as input to generate a corresponding data object block of a result report, provide a copy of the container to each storage device, and transmit the result report assembled from the data object blocks thereof to the remote device.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: May 12, 2020
    Assignee: SAS INSTITUTE INC.
    Inventors: Henry Gabriel Victor Bequet, Eric Jian Yang, Ronald Earl Stogner, Chaowang “Ricky” Zhang, Partha Dutta, Qing Gong
  • Patent number: 10642896
    Abstract: An apparatus includes a processor to: receive a request to perform a job flow defined in a job flow definition; retrieve the most recent versions of a set of task routines to perform a set of tasks of the job flow; analyze each interface of each task routine by which a data set is input or output during execution to identify dependencies where two task routines exchange a data set, and are written in different programming languages; execute the set of task routines to perform the job flow; in response to identifying such a dependency, convert the data set from a form supported by the programming language of one of the two task routines and into a form supported by the programming language of the other; store one of the forms within a federated area; and transmit a result report output during the performance to a remote device.
    Type: Grant
    Filed: August 12, 2019
    Date of Patent: May 5, 2020
    Assignee: SAS INSTITUTE INC.
    Inventors: Henry Gabriel Victor Bequet, Chaowang “Ricky” Zhang, Ronald Earl Stogner, Eric Jian Yang
  • Publication number: 20200110589
    Abstract: An apparatus includes a processor to: receive a request to perform a set of tasks; analyze input data objects used as inputs and output data objects generated as outputs by the set of tasks to identify at least one dependency between tasks and at least one pair of tasks performable in parallel; determine an order of performance of the set of tasks; retrieve executable instructions of a corresponding set of task routines that define input interfaces and output interfaces for the input data objects and output data objects, respectively; generate a job flow definition defining the order of performance, each input interface and each output interface; use the job flow definition to perform the set of tasks; and transmit one of the output data objects to the requesting device as a result report serving as the output of the set of tasks.
    Type: Application
    Filed: December 9, 2019
    Publication date: April 9, 2020
    Inventors: Henry Gabriel Victor Bequet, Ronald Earl Stogner, Chaowang "Ricky" Zhang, Eric Jian Yang, Qing Gong
  • Patent number: 10565261
    Abstract: An apparatus includes a processor to: receive a request from a remote device to perform a job flow; retrieve a job flow definition defining the job flow and each of a set of task routines to perform tasks of the job flow from a set of storage devices where each is stored as an undivided object within one storage device; and in response to determining that a data set is stored as multiple data object blocks, generate a container containing the job flow definition and set of task routines to enable each storage device to perform the job flow using a locally stored data object block of the data set as input to generate a corresponding data object block of a result report, provide a copy of the container to each storage device, and transmit the result report assembled from the data object blocks thereof to the remote device.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: February 18, 2020
    Assignee: SAS INSTITUTE INC.
    Inventors: Henry Gabriel Victor Bequet, Eric Jian Yang, Ronald Earl Stogner, Chaowang “Ricky” Zhang, Partha Dutta, Qing Gong
  • Publication number: 20200026732
    Abstract: An apparatus includes a processor to: receive a request from a remote device to perform a job flow; retrieve a job flow definition defining the job flow and each of a set of task routines to perform tasks of the job flow from a set of storage devices where each is stored as an undivided object within one storage device; and in response to determining that a data set is stored as multiple data object blocks, generate a container containing the job flow definition and set of task routines to enable each storage device to perform the job flow using a locally stored data object block of the data set as input to generate a corresponding data object block of a result report, provide a copy of the container to each storage device, and transmit the result report assembled from the data object blocks thereof to the remote device.
    Type: Application
    Filed: September 30, 2019
    Publication date: January 23, 2020
    Inventors: Henry Gabriel Victor Bequet, Eric Jian Yang, Ronald Earl Stogner, Chaowang "Ricky" Zhang, Partha Dutta, Qing Gong