-
公开(公告)号:US11204809B2
公开(公告)日:2021-12-21
申请号:US17308355
申请日:2021-05-05
Applicant: SAS Institute Inc.
Inventor: Henry Gabriel Victor Bequet , Ronald Earl Stogner , Eric Jian Yang , Qing Gong , Partha Dutta , Kais Arfaoui
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.
-
公开(公告)号:US20210224051A1
公开(公告)日:2021-07-22
申请号:US17225023
申请日:2021-04-07
Applicant: SAS Institute Inc.
Inventor: Henry Gabriel Victor Bequet , Ronald Earl Stogner , Eric Jian Yang , Qing Gong , Partha Dutta , Kais Arfaoui
IPC: G06F8/51 , G06N3/08 , G06F9/46 , G06F16/901 , G06F16/903
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.
-
公开(公告)号:US20210026611A1
公开(公告)日:2021-01-28
申请号:US17064577
申请日:2020-10-06
Applicant: SAS Institute Inc.
IPC: G06F8/51 , G06N3/08 , G06F9/46 , G06F16/901 , G06F16/903
Abstract: An apparatus includes processor(s) to: receive a request to perform a job flow; retrieve a job flow definition from federated area(s); store, within a job queue, a job performance request message comprising the job flow definition; within a first performance container, execute a performance routine causing the processor(s) to, in response to the storage of the job performance request message within the job queue, derive an order of performance of tasks specifying a first task based on dependencies among the tasks, and store, within a task queue, a first task routine execution request message comprising an identifier associated with the first task; and within a first task container, in response to the storage of the first task routine execution request message within the task queue, use the identifier to retrieve a first task routine from the federated area(s), and execute the first task routine to perform the first task.
-
公开(公告)号:US20210255843A1
公开(公告)日:2021-08-19
申请号:US17308355
申请日:2021-05-05
Applicant: SAS Institute Inc.
Inventor: Henry Gabriel Victor Bequet , Ronald Earl Stogner , Eric Jian Yang , Qing Gong , Partha Dutta , Kais Arfaoui
IPC: G06F8/51 , G06F9/46 , G06N3/08 , G06F16/903 , G06F16/901
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.
-
公开(公告)号:US20210072963A1
公开(公告)日:2021-03-11
申请号:US17065843
申请日:2020-10-08
Applicant: SAS Institute Inc.
Inventor: Henry Gabriel Victor Bequet , Ronald Earl Stogner , Eric Jian Yang , Qing Gong , Chaowang "Ricky" Zhang
IPC: G06F8/51 , G06F9/46 , G06N3/08 , G06F16/901 , G06F16/903
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.
-
公开(公告)号:US20200110589A1
公开(公告)日:2020-04-09
申请号:US16708179
申请日:2019-12-09
Applicant: SAS Institute Inc.
Inventor: Henry Gabriel Victor Bequet , Ronald Earl Stogner , Chaowang "Ricky" Zhang , Eric Jian Yang , Qing Gong
IPC: G06F8/51 , G06N3/08 , G06F9/46 , G06F16/901 , G06F16/903
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.
-
公开(公告)号:US20200026732A1
公开(公告)日:2020-01-23
申请号:US16587965
申请日:2019-09-30
Applicant: SAS Institute Inc.
Inventor: Henry Gabriel Victor Bequet , Eric Jian Yang , Ronald Earl Stogner , Chaowang "Ricky" Zhang , Partha Dutta , Qing Gong
IPC: G06F16/901 , G06F16/903 , H04L29/08
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.
-
公开(公告)号:US20180239651A1
公开(公告)日:2018-08-23
申请号:US15852591
申请日:2017-12-22
Applicant: SAS Institute Inc.
Inventor: Qing Gong , Shianchin "Sam" Chen , Zhiyong Li
IPC: G06F9/50 , G06F12/084 , G06F11/34 , G06F3/06
CPC classification number: G06F9/5083 , G06F3/067 , G06F9/5044 , G06F9/505 , G06F9/5072 , G06F11/3423 , G06F11/3433 , G06F12/084
Abstract: Various embodiments are generally directed to decentralized load balancing in a host cluster utilized to coordinate performance of processing tasks in a workload, such as via service agents and/or host instances included in the host cluster, for instance. Some embodiments are particularly directed to a set of service agents on one or more host instances that utilize a shared cache to coordinate among themselves to automatically balance a workload without a centralized controller or a centralized load balancer. In one or more embodiments, a set of service agents may automatically and cooperatively balance a workload among themselves using the shared cache.
-
公开(公告)号:US20180239650A1
公开(公告)日:2018-08-23
申请号:US15852467
申请日:2017-12-22
Applicant: SAS Institute Inc.
Inventor: Qing Gong , Shianchin "Sam" Chen , Zhiyong Li
IPC: G06F9/50 , G06F11/34 , G06F12/084 , G06F3/06
CPC classification number: G06F9/5083 , G06F3/067 , G06F9/5044 , G06F9/505 , G06F9/5072 , G06F11/3423 , G06F11/3433 , G06F12/084
Abstract: Various embodiments are generally directed to decentralized load balancing in a host cluster utilized to coordinate performance of processing tasks in a workload, such as via service agents and/or host instances included in the host cluster, for instance. Some embodiments are particularly directed to a set of service agents on one or more host instances that utilize a shared cache to coordinate among themselves to automatically balance a workload without a centralized controller or a centralized load balancer. In one or more embodiments, a set of service agents may automatically and cooperatively balance a workload among themselves using the shared cache.
-
公开(公告)号:US11513850B2
公开(公告)日:2022-11-29
申请号:US17563697
申请日:2021-12-28
Applicant: SAS Institute Inc.
Inventor: Henry Gabriel Victor Bequet , Ronald Earl Stogner , Eric Jian Yang , Qing Gong
Abstract: An apparatus includes a processor to: within a first container, and prior to its uninstantiation, execute a first instance of a routine to cause the processor to monitor for and detect a job performance request in a job queue; and within a second container, execute a second instance of the routine to cause the processor to search the job queue for a job performance request, and in response to a combination of the uninstantiation of the first container, the storage of the job performance request in the job queue and there being no indication of completion of the job flow in the job queue, perform a combination of store an indication of the job flow performance commencing in the job queue, derive an order of performance of the set of tasks of the job flow and store a first task execution request in a task queue.
-
-
-
-
-
-
-
-
-