Spreadsheet Model for Distributed Data Mashups
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Developing distributed applications that utilize asynchrony and eventual consistency is challenging for most developers, as it requires understanding low-level details and mechanisms, whereas the spreadsheet paradigm is more familiar and intuitive for asynchronous and eventually consistent computations.
Innovation Solution
A generalized spreadsheet model is applied to arbitrary and distributed data sources, including relational and non-relational databases, allowing functions to be specified across these sources to produce combined data or mashups, with globally asynchronous and eventually consistent computations, facilitated by adapter components that handle push- and pull-based data interactions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If developers use traditional distributed application models with asynchrony and eventual consistency, then the system achieves distributed computation capability, but the development complexity and difficulty increase significantly
Solution Approach 1:
The patent introduces a spreadsheet-like intermediary layer that sits between developers and distributed data sources. This intermediary provides familiar spreadsheet operations (formulas, functions, cell references) that automatically translate into distributed computation operations, shielding developers from the complexity of asynchrony and consistency management while enabling distributed computation capabilities.
Solution Approach 2:
The patent creates a virtual copy of the familiar spreadsheet interface that operates over distributed data sources. Instead of requiring developers to work directly with complex distributed systems, the system provides a spreadsheet-like copy that mimics local computation behavior while actually performing distributed computations, making the system easier to develop and maintain.
2Reliability
If developers use low-level distributed system mechanisms, then the system achieves precise control over asynchronous computations, but the ease of operation decreases
Solution Approach 1:
The patent creates a universal spreadsheet interface that can operate over multiple types of data sources (relational databases, NoSQL databases, distributed caches, etc.) while maintaining a consistent and simple operation model. The same spreadsheet operations work across different distributed systems, providing both ease of use and reliable control without requiring developers to learn different mechanisms for different data sources.
3Adaptability or versatility
If the system integrates multiple distributed data sources, then the data integration capability improves, but the device complexity increases
Solution Approach 1:
The patent segments the complexity of integrating multiple distributed data sources by treating each data source as an independent, addressable entity similar to a spreadsheet cell or range. The spreadsheet engine handles the integration logic, dividing and conquering the complexity of cross-source computations into manageable, cell-level operations that can be composed through formulas and functions.
Data Source
AI summary
A spreadsheet model is employed to facilitate distributed computations. Spreadsheets and cells are generalized to correspond to arbitrary data sources that can be remote from each other, among other things. Functions can be specified with respect to these arbitrary data sources to produce combinations of data or mashups, for example, wherein changes initiate re-computation with respect to dependent data sources.


