MBrace
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
| MBrace | |
|---|---|
| Original author | Nessos Information Technologies SA |
| Stable release | 1.5.4
/ September 2017 |
| Written in | F# |
| Operating system | Azure, Windows/.NET, OS X/Mono (software) |
| Type | big data / big computation framework |
| License | Apache License 2.0 |
| Website | www |
MBrace[1] is a .NET open-source framework and runtime which introduces a novel programming model for performing large scale computations in public, private and hybrid cloud computing environments. MBrace is inspired by the programming paradigm of asynchronous workflows as introduced in the F# programming language while borrowing ideas from CloudHaskell and HdpH. MBrace is written entirely in F# and provides bindings for F# and C#.
Overview
MBrace is a programming model and framework powered by the .NET software stack that is suitable for distributed programming. Based on the F# programming language, it offers an expressive and integrated way of developing, deploying and debugging large-scale computations running in cloud environments.[2] MBrace is capable of distributing arbitrary code and offers native access to the rich collection of tested libraries offered with the underlying .NET framework. MBrace draws heavy inspiration from the Haskell community, especially from the work on concurrency/parallelism and shares many similar ideas with the HdpH project. Its programming model is founded on the premise that monads, in a recursive higher-order language, offer a rich substrate for expressing many different kinds of algorithmic patterns (i.e.: MapReduce, streaming, iterative or incremental algorithms) which can be defined at the user level as libraries, without the need to change any underlying runtime infrastructure.
Distinguishing features
MBrace offers a series of unique features such as:
- Bigger scope: MBrace provides a unified experience for authoring various kinds of algorithms. While other frameworks focus on more specific algorithms or patterns (e.g. MapReduce, actors). MBrace provides such algorithms as extensions (i.e.: the workflow library implementing MapReduce) which can be combined and tweaked by the users.
- Centralized deployment,[3] monitoring and debugging: MBrace provides a shell[4] that can be used for centralized monitoring and deployment without the need of batch files, manual copying, etc.
- Concise and succinct algorithm development: The code developed using MBrace is not cluttered by orchestration details which makes code maintenance and debugging less cumbersome while its programming model enables less experienced users to tackle with big data and HPC algorithms.
References
- ^ Dzik, Jan; Palladinos, Nick; Rontogiannis, Konstantinos; Tsarpalis, Eirik; Vathis, Nikolaos (November 3, 2013). "MBrace: Cloud computing with monads" (PDF). Proceedings of the Seventh Workshop on Programming Languages and Operating Systems. pp. 1–6. doi:10.1145/2525528.2525531. ISBN 978-1-4503-2460-1. S2CID 13579521.
- ^ Tsarpalis, Eirik George (March 30, 2014). "MBrace: Cloud Computing with F#". slideshare.net. Retrieved August 27, 2015.
- ^ Hall, Alena (May 19, 2015). "Functional approach to distributed computations and Big Data with F# MBrace cloud monads. Part 2".
- ^ "mbrace - sneak preview". youtube.com/watch?v=fmTagG6MNPQ. mbraceTV. September 3, 2012. Retrieved August 27, 2015.
External links
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.