US2023054226A1PendingUtilityA1

System and method of providing an interactive development platform in a distributed computing environment

Assignee: DATAPLATE LTDPriority: Aug 22, 2021Filed: Nov 8, 2022Published: Feb 23, 2023
Est. expiryAug 22, 2041(~15.1 yrs left)· nominal 20-yr term from priority
Inventors:Amit Gross
G06N 20/00G06F 9/455G06F 8/51G06F 8/30H04L 67/10H04L 63/0227H04L 67/02G06F 21/54H04L 63/104G06F 21/566H04L 63/102G06F 21/577H04L 67/564G06F 21/554
66
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A system and method of providing an interactive development environment may include providing a proxy server module, adapted to interface at least one cloud-based platform and one or more client modules, operatively connected to the proxy server, where each client module may be associated with a respective user development platform. At least one client module may receive, from the respective user development platform, one or more interactive computing documents, commonly referred to as notebooks, each representing one or more scripting code elements, commonly referred to as cells. The proxy server may scan the one or more cells, according to a set of predetermined scripting rules, and encapsulate the one or more notebooks in one or more data containers, based on the scan. The proxy server may subsequently transmit the one or more data containers to a cloud-based platform, to execute at least one cell of the one or more notebooks.

Claims

exact text as granted — not AI-modified
1 . A method of providing an interactive development environment, said method comprising:
 providing a proxy server configured to:   operatively connect to one or more client modules, each associated with a respective user development platform;   receive, from at least one client module of the one or more client modules, one or more interactive computing documents, each comprising one or more scripting code elements;   scan the one or more scripting code elements according to a set of predetermined scripting rules;   encapsulate the one or more interactive computing documents in one or more data containers, based on said scan; and   transmit the one or more data containers to at least one cloud-based platform, wherein the at least one cloud-based platform is configured to execute at least one scripting code element of the one or more interactive computing documents.   
     
     
         2 . The method of  claim 1 , wherein the proxy server is further configured to:
 monitor execution of the one or more scripting code elements of the one or more interactive computing documents by the at least one cloud-based platform; and   perform at least one mitigation action based on said monitoring, wherein said mitigation action is selected from a list consisting of: blocking a user of a specific client module from accessing the at least one cloud-based platform, changing an access permission of a role of the user of the specific client module to a specific cloud-based platform, deleting data footprints of the at least one scripting code element, and disabling a specific user of the specific client module from executing the one or more scripting code elements in the user development platform.   
     
     
         3 . The method of  claim 1 , further comprising:
 producing, by at least one client module of the one or more client modules, a workflow data element, defining a scheme for executing the one or more interactive computing documents;   transmitting, by at least one client module, the workflow data element to the to the proxy server; and   transmitting, by the proxy server, the one or more data containers and the workflow data element to the at least one cloud-based platform, to execute the one or more interactive computing documents according to the scheme, as defined by the workflow data element.   
     
     
         4 . A proxy server for providing an interactive development environment, said proxy server configured to:
 receive, from at least one client module associated with a respective user development platform, one or more interactive computing documents, each comprising one or more scripting code elements;   accumulate a subset of scripting code elements, each representing one or more data actions;   classify the subset of scripting code elements, in relation to the at least one client module, to one or more classifications;   determine at least one scripting rule based on the one or more classifications; and   scan at least one scripting code element according to the at least one scripting rule.   
     
     
         5 . The proxy server of  claim 4 , further configured to:
 receive, from the at least one client module, a workflow data element, defining a scheme for executing the one or more interactive computing documents;   encapsulate the workflow data element with the one or more interactive computing documents in the one or more data containers; and   transmit the one or more data containers to at least one cloud-based platform, to execute the at least one scripting code element of the one or more interactive computing documents according to the scheme, as defined by the workflow data element.   
     
     
         6 . The proxy server of  claim 5 , wherein the scheme comprises at least one of: (a) scheduling of execution of the one or more interactive computing documents; (b) an order of execution of the one or more interactive computing documents; (c) a condition for executing the one or more interactive computing documents; and (d) concurrence of execution of two or more interactive computing documents. 
     
     
         7 . The proxy server of  claim 5 , wherein the one or more interactive computing documents further comprise document metadata, and wherein the proxy server is further configured to:
 scan the document metadata according to a set of predetermined metadata rules; and   encapsulate the workflow data element and the one or more interactive computing documents in the one or more data containers, based on said scan of the document metadata.   
     
     
         8 . The proxy server of  claim 5 , further configured to:
 receive, from the at least one client module, at least one execution parameter value, associated with a specific interactive computing document;   inject the received execution parameter value as document metadata into the specific interactive computing document; and   further encapsulate document metadata in the one or more data containers, wherein the at least one cloud-based platform is further configured to execute the at least one scripting code element of the one or more interactive computing documents according to the document metadata.   
     
     
         9 . The proxy server of  claim 8  further comprising:
 a feature extraction module, configured to extract one or more data action features from at least one specific scripting code element of the subset of scripting code elements; and 
 an ML based model configured to classify the specific scripting code element according to the one or more classifications, based on the one or more data action features. 
 
     
     
         10 . The proxy server of  claim 5 , further configured to
 encapsulate the workflow data element and the one or more interactive computing documents by (i) encapsulating the workflow data element in a first data container, and (ii) spawning one or more second data containers, each encapsulating one or more interactive computing documents of the one or more interactive computing documents based on the workflow data element; and   transmit the one or more second data containers to the at least one cloud-based platform according to the scheme, as defined by the workflow data element.   
     
     
         11 . The proxy server of  claim 5  further comprising:
 a monitoring module, adapted to monitor execution of the one or more scripting code elements of the one or more interactive computing documents by the at least one cloud-based platform; and 
 a rule engine module, adapted to identify a problem in the execution according to a set of predefined runtime rules, based on said monitoring. 
 
     
     
         12 . The proxy server of  claim 10 , wherein the rule engine module is further configured to communicate a notification message to a relevant client module, wherein the notification message comprises a representation of the identified execution problem, to be displayed on a user interface (UI) of the user development platform. 
     
     
         13 . The proxy server of  claim 10 , wherein the rule engine module is further configured to perform at least one mitigation action, selected from a list consisting of: blocking a user of a specific client module from accessing data stored on the at least one cloud-based platform, changing an access permission of a role of the user of the specific client module to a specific cloud-based platform, deleting data footprints of the at least one scripting code element, and disabling a specific user of the specific client module from executing the one or more scripting code elements in the user development platform. 
     
     
         14 . The proxy server of  claim 10 , wherein monitoring execution of the one or more scripting code elements comprises at least one of: run-time monitoring of logs generated by the at least one cloud-based platform; run-time monitoring of an order of the execution of the one or more scripting code elements; run-time monitoring of output of the execution of the one or more scripting code elements; monitoring duration of execution of the at least one scripting code element of the one or more interactive computing documents; and performing a comparison between output statistics of a current execution of an interactive computing document and output statistics of a previous execution of the interactive computing document. 
     
     
         15 . The proxy server of  claim 10 , wherein monitoring execution of the one or more scripting code elements comprises at least one of:
 identifying at least one difference between an output of a specific scripting code element at a first execution and an output of the specific scripting code element at a second execution; and   identifying at least one difference between a first metadata element, associated with the specific scripting code element at the first execution and a second metadata element, associated with the specific scripting code element at the second execution.   
     
     
         16 . The proxy server of  claim 5  further comprising a monitoring module, adapted to:
 monitor execution of the one or more scripting code elements of the one or more interactive computing documents by the at least one cloud-based platform; 
 produce a log data element, representing said monitored execution of the one or more scripting code elements; and 
 communicate the log data element to a relevant client module, wherein said relevant client module is configured to display said log data element on a UI of the user development platform. 
 
     
     
         17 . The proxy server of  claim 4  wherein the proxy server is further configured to scan the at least one scripting code element according to the set of predetermined scripting rules, to verify at least one of (a) permission-based legitimacy of data retrieval by the at least one scripting code element, and (b) lack of malicious activity in the at least one scripting code element 
     
     
         18 . A proxy server for providing an interactive development environment, said proxy server configured to:
 receive, from a client module, one or more interactive computing documents, each comprising one or more scripting code elements;   apply a machine learning (ML) based model on the one or more scripting code elements to determine at least one scripting rule;   scan the one or more scripting code elements according to the at least one scripting rule;   encapsulate the one or more interactive computing documents in one or more data containers, based on said scan; and   transmit the one or more data containers to at least one cloud-based platform, to execute at least one scripting code element of the one or more interactive computing documents.   
     
     
         19 . The proxy server of  claim 18 , further configured to:
 monitor execution of the one or more scripting code elements of the one or more interactive computing documents by the at least one cloud-based platform; and   perform at least one mitigation action based on said monitoring, wherein said mitigation action is selected from a list consisting of: blocking a user of a specific client module from accessing the at least one cloud-based platform, changing an access permission of a role of the user of the specific client module to a specific cloud-based platform, deleting data footprints of the at least one scripting code element, and disabling a specific user of the specific client module from executing the one or more scripting code elements in the user development platform.   
     
     
         20 . The proxy server of  claim 18 , further configured to:
 receive, from at least one client module of the one or more client modules, a workflow data element, defining a scheme for executing the one or more interactive computing documents; and   transmit the one or more data containers and the workflow data element to the at least one cloud-based platform, to execute the one or more interactive computing documents according to the scheme, as defined by the workflow data element.

Join the waitlist — get patent alerts

Track US2023054226A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.