Asynchronous Spreadsheet Task Execution via Remote Job Offloading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Client-side spreadsheet applications face inefficiencies such as long wait times and lost data when performing complex calculations due to synchronous execution of computationally expensive tasks, leading to increased calculation time and power consumption.

Innovation Solution

A method is introduced to asynchronously execute computationally expensive spreadsheet tasks by generating a job with data and instructions, sending it to a remote service, and receiving a persistent job ID for accessing results, allowing tasks to be offloaded and executed without synchronicity, enabling users to continue working or access results on different devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If computationally expensive spreadsheet tasks are executed synchronously on client-side applications, then calculation results can be obtained with complete data, but execution time and power consumption increase significantly

Engineering Contradiction:
Improvecalculation data completenessVSAvoidwait time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts computationally expensive tasks from the client-side spreadsheet application and offloads them to a remote service server. The client generates a job description, sends it to the remote service, and receives results asynchronously, thereby separating the heavy computation from the local execution environment and reducing client-side wait time while maintaining data completeness.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a remote service server as an intermediary between the client application and the computationally expensive tasks. The server acts as a mediator that receives job descriptions from clients, executes the tasks, and returns results, enabling asynchronous execution and reducing the direct time burden on client devices.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If computationally expensive spreadsheet tasks are executed synchronously on client-side applications, then calculation results can be obtained, but power consumption increases due to extended execution time

Engineering Contradiction:
Improvecalculation result accuracyVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent extracts power-intensive computation from the client device and relocates it to a remote service server with greater computational resources. This extraction reduces the energy burden on client devices while ensuring accurate calculation results are obtained from the server's execution environment.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements preliminary actions by having the client generate and send job descriptions to the remote service before actual execution begins. This allows the computationally expensive tasks to be queued and executed on the server, reducing client device power consumption while maintaining result accuracy through proper job submission and retrieval processes.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If computationally expensive tasks are executed locally, then immediate access to results is possible, but user productivity decreases due to long wait times

Engineering Contradiction:
Improvecalculation timeVSAvoiduser efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent introduces a remote service intermediary that handles computationally expensive tasks, allowing users to submit jobs and continue working on other tasks while results are being processed. The intermediary manages job execution, result storage, and retrieval, thereby eliminating idle wait time and improving overall user productivity without sacrificing calculation speed.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11157690B2Techniques for asynchronous execution of computationally expensive local spreadsheet tasks
Publication Date: 2021.10.26 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11157690B2 patent drawing
  • US11157690B2 patent drawing
  • US11157690B2 patent drawing

AI summary

The techniques described herein facilitate asynchronous execution of computationally expensive spreadsheet tasks and. In some embodiments, asynchronous calls to remote services for handling complex processing tasks such as, for example, complex calculations involving large data sets from one or more spreadsheets of a workbook are described. The handling can include generating a job including a data set from one or more spreadsheets and an instruction directing a remote service to asynchronously execute a computationally expensive spreadsheet task. Responsive to sending the remote service a request to perform the job, a persistent job identifier (ID) associated with the job is received by the spreadsheet application and embedded in (and/or otherwise associated with) at least one or more of the spreadsheets of the workbook. The job is then asynchronously executed by the remote service and the results are accessible from any client device having access to the workbook using the embedded or associated job ID.