Concurrent composition of I/O redundancy behaviors in Go

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

Standard

Concurrent composition of I/O redundancy behaviors in Go. / Jensen, Klaus Birkelund; Vinter, Brian.

Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40). ed. / Jan Baekgaard Pedersen; Kevin Chalmers; Jan F. Broenink; Brian Vinter; Kevin Vella; Peter H. Welch; Marc L. Smith; Kenneth Skovhede. IMIA and IOS Press, 2019. p. 157-170 (Concurrent Systems Engineering Series, Vol. 70).

Research output: Chapter in Book/Report/Conference proceedingArticle in proceedingsResearchpeer-review

Harvard

Jensen, KB & Vinter, B 2019, Concurrent composition of I/O redundancy behaviors in Go. in JB Pedersen, K Chalmers, JF Broenink, B Vinter, K Vella, PH Welch, ML Smith & K Skovhede (eds), Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40). IMIA and IOS Press, Concurrent Systems Engineering Series, vol. 70, pp. 157-170, 39th WoTUG Conference on Communicating Process Architectures, CPA 2017 and 40th WoTUG Conference on Communicating Process Architectures, CPA 2018, Dresden, Germany, 19/08/2018. https://doi.org/10.3233/978-1-61499-949-2-157

APA

Jensen, K. B., & Vinter, B. (2019). Concurrent composition of I/O redundancy behaviors in Go. In J. B. Pedersen, K. Chalmers, J. F. Broenink, B. Vinter, K. Vella, P. H. Welch, M. L. Smith, & K. Skovhede (Eds.), Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40) (pp. 157-170). IMIA and IOS Press. Concurrent Systems Engineering Series Vol. 70 https://doi.org/10.3233/978-1-61499-949-2-157

Vancouver

Jensen KB, Vinter B. Concurrent composition of I/O redundancy behaviors in Go. In Pedersen JB, Chalmers K, Broenink JF, Vinter B, Vella K, Welch PH, Smith ML, Skovhede K, editors, Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40). IMIA and IOS Press. 2019. p. 157-170. (Concurrent Systems Engineering Series, Vol. 70). https://doi.org/10.3233/978-1-61499-949-2-157

Author

Jensen, Klaus Birkelund ; Vinter, Brian. / Concurrent composition of I/O redundancy behaviors in Go. Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40). editor / Jan Baekgaard Pedersen ; Kevin Chalmers ; Jan F. Broenink ; Brian Vinter ; Kevin Vella ; Peter H. Welch ; Marc L. Smith ; Kenneth Skovhede. IMIA and IOS Press, 2019. pp. 157-170 (Concurrent Systems Engineering Series, Vol. 70).

Bibtex

@inproceedings{6617601492d7479697e317e073d6c12f,
title = "Concurrent composition of I/O redundancy behaviors in Go",
abstract = "The Go programming language defines simple I/O interfaces that any data type may implement. In this paper we introduce a Go package that allows arbitrary implementations of these interfaces to be composed into RAID-like redundant (and/or) high-performance striped arrays. The package also allows spares to be added for fail-over functionality. The package is focused on providing a highly available write setting that tolerates multiple failures but can always receive data as long as a single redundant path exists. This is achieved by allowing reads to become unavailable in the presence of failures that cannot be solved while the array is operating. The package is highly concurrent and parallelized and exploits the Go programming language's built-in light-weight concurrency features.",
keywords = "Concurrent composition, Go, Redundancy behaviors",
author = "Jensen, {Klaus Birkelund} and Brian Vinter",
year = "2019",
doi = "10.3233/978-1-61499-949-2-157",
language = "English",
series = "Concurrent Systems Engineering Series",
publisher = "IMIA and IOS Press",
pages = "157--170",
editor = "Pedersen, {Jan Baekgaard} and Kevin Chalmers and Broenink, {Jan F.} and Brian Vinter and Kevin Vella and Welch, {Peter H.} and Smith, {Marc L.} and Kenneth Skovhede",
booktitle = "Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40)",
note = "39th WoTUG Conference on Communicating Process Architectures, CPA 2017 and 40th WoTUG Conference on Communicating Process Architectures, CPA 2018 ; Conference date: 19-08-2018 Through 22-08-2018",

}

RIS

TY - GEN

T1 - Concurrent composition of I/O redundancy behaviors in Go

AU - Jensen, Klaus Birkelund

AU - Vinter, Brian

PY - 2019

Y1 - 2019

N2 - The Go programming language defines simple I/O interfaces that any data type may implement. In this paper we introduce a Go package that allows arbitrary implementations of these interfaces to be composed into RAID-like redundant (and/or) high-performance striped arrays. The package also allows spares to be added for fail-over functionality. The package is focused on providing a highly available write setting that tolerates multiple failures but can always receive data as long as a single redundant path exists. This is achieved by allowing reads to become unavailable in the presence of failures that cannot be solved while the array is operating. The package is highly concurrent and parallelized and exploits the Go programming language's built-in light-weight concurrency features.

AB - The Go programming language defines simple I/O interfaces that any data type may implement. In this paper we introduce a Go package that allows arbitrary implementations of these interfaces to be composed into RAID-like redundant (and/or) high-performance striped arrays. The package also allows spares to be added for fail-over functionality. The package is focused on providing a highly available write setting that tolerates multiple failures but can always receive data as long as a single redundant path exists. This is achieved by allowing reads to become unavailable in the presence of failures that cannot be solved while the array is operating. The package is highly concurrent and parallelized and exploits the Go programming language's built-in light-weight concurrency features.

KW - Concurrent composition

KW - Go

KW - Redundancy behaviors

U2 - 10.3233/978-1-61499-949-2-157

DO - 10.3233/978-1-61499-949-2-157

M3 - Article in proceedings

AN - SCOPUS:85082391035

T3 - Concurrent Systems Engineering Series

SP - 157

EP - 170

BT - Communicating Process Architectures 2017 and 2018, WoTUG-39 and WoTUG-40 - Proceedings of CPA 2017 (WoTUG-39) and Proceedings of CPA 2018 (WoTUG-40)

A2 - Pedersen, Jan Baekgaard

A2 - Chalmers, Kevin

A2 - Broenink, Jan F.

A2 - Vinter, Brian

A2 - Vella, Kevin

A2 - Welch, Peter H.

A2 - Smith, Marc L.

A2 - Skovhede, Kenneth

PB - IMIA and IOS Press

T2 - 39th WoTUG Conference on Communicating Process Architectures, CPA 2017 and 40th WoTUG Conference on Communicating Process Architectures, CPA 2018

Y2 - 19 August 2018 through 22 August 2018

ER -

ID: 241090145