2018
DOI: 10.1017/s0956796818000035
|View full text |Cite
|
Sign up to set email alerts
|

A programming model and foundation for lineage-based distributed computation

Abstract: The most successful systems for “big data” processing have all adopted functional APIs. We present a new programming model, we call function passing, designed to provide a more principled substrate, or middleware, upon which to build data-centric distributed systems like Spark. A key idea is to build up a persistent functional data structure representing transformations on distributed immutable data by passing well-typed serializable functions over the wire and applying them to this distributed data. Thus, the… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1

Citation Types

0
2
0

Year Published

2019
2019
2024
2024

Publication Types

Select...
3
2

Relationship

0
5

Authors

Journals

citations
Cited by 5 publications
(2 citation statements)
references
References 26 publications
0
2
0
Order By: Relevance
“…CPL [Bračevac et al 2016] is a calculus to create and combine multiple services in a type safe manner. Function passing [Haller et al 2018;Miller et al 2016] defines derived values of immutable remote data in a type safe way. Concurrent Objects [Filipović et al 2010] provides objects with serializability and linearizability by guaranteeing that concurrent implementations behave observational equivalent to sequential implementations.…”
Section: Formal Models For Concurrent and Distributed Computationsmentioning
confidence: 99%
“…CPL [Bračevac et al 2016] is a calculus to create and combine multiple services in a type safe manner. Function passing [Haller et al 2018;Miller et al 2016] defines derived values of immutable remote data in a type safe way. Concurrent Objects [Filipović et al 2010] provides objects with serializability and linearizability by guaranteeing that concurrent implementations behave observational equivalent to sequential implementations.…”
Section: Formal Models For Concurrent and Distributed Computationsmentioning
confidence: 99%
“…There are many benefits provided by functional programming that have won over framework designers, such as immutability, compositionality, powerful abstraction forms and lazy evaluation. As stated in [10], data transformation via higher-order functions makes it much easier, by design, to tackle concerns central to distributed systems such as concurrency. As one of powerful functional programming languages, Haskell has the benefits of fast prototyping capabilities, strong type checking and type inference.…”
Section: Introductionmentioning
confidence: 99%