Swim: A Runtime for Distributed Event-Driven Applications

Swim extends the actor model to support applications composed of linked distributed actors that continuously analyze boundless streams of events from millions of sources, to respond in-sync with the real-world. Swim builds a running application from streaming events, creating a distributed dataflow...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Sachs, Chris, Govindarajan, Ajay, Crosby, Simon
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page
container_issue
container_start_page
container_title
container_volume
creator Sachs, Chris
Govindarajan, Ajay
Crosby, Simon
description Swim extends the actor model to support applications composed of linked distributed actors that continuously analyze boundless streams of events from millions of sources, to respond in-sync with the real-world. Swim builds a running application from streaming events, creating a distributed dataflow graph of linked, stateful, concurrent streaming actors that is overlaid on a mesh of runtime instances. Streaming actors are vertices in the dataflow graph that concurrently analyze new events and modify their states. A link is an edge in the graph and is a URI binding to an actor's streaming API. The Swim runtime streams every actor state change over its links to other (possibly remote) actors using op-based CRDTs that asynchronously update remotely cached actor state replicas. This frees local actors to compute at any time, using the latest replicas of remote state. Actors evaluate parametric functions, including geospatial, analytical, and predictive, to discover new relationships and forge or break links, dynamically adapting the dataflow graph to model the changing real-world. Swim applications are tiny, robust and resource efficient, and remain effortlessly in-sync with the real-world, analyzing, learning, and predicting on-the-fly.
doi_str_mv 10.48550/arxiv.2205.10458
format Article
fullrecord <record><control><sourceid>arxiv_GOX</sourceid><recordid>TN_cdi_arxiv_primary_2205_10458</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2205_10458</sourcerecordid><originalsourceid>FETCH-LOGICAL-a678-4ad2ce06a648c653ef07e2a61cc8d03d49df0fa9a6613fa532f43d7eb843ae163</originalsourceid><addsrcrecordid>eNotj0tOwzAUAL1hgQoHYIUvkOB_HHZRWz5SpUrQffRqP0tPatLIcQvcHiisZjeaYexOitp4a8UD5E8610oJW0thrL9m7fsHDY-842-nsdCAPB0zX9FcMu1PBSNfn3Es1SrTD3k3TQcKUOg4zjfsKsFhxtt_Ltjuab1bvlSb7fPrsttU4BpfGYgqoHDgjA_OakyiQQVOhuCj0NG0MYkELTgndQKrVTI6Nrj3RgNKpxfs_k97ae-nTAPkr_73ob886G-5IUFK</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>Swim: A Runtime for Distributed Event-Driven Applications</title><source>arXiv.org</source><creator>Sachs, Chris ; Govindarajan, Ajay ; Crosby, Simon</creator><creatorcontrib>Sachs, Chris ; Govindarajan, Ajay ; Crosby, Simon</creatorcontrib><description>Swim extends the actor model to support applications composed of linked distributed actors that continuously analyze boundless streams of events from millions of sources, to respond in-sync with the real-world. Swim builds a running application from streaming events, creating a distributed dataflow graph of linked, stateful, concurrent streaming actors that is overlaid on a mesh of runtime instances. Streaming actors are vertices in the dataflow graph that concurrently analyze new events and modify their states. A link is an edge in the graph and is a URI binding to an actor's streaming API. The Swim runtime streams every actor state change over its links to other (possibly remote) actors using op-based CRDTs that asynchronously update remotely cached actor state replicas. This frees local actors to compute at any time, using the latest replicas of remote state. Actors evaluate parametric functions, including geospatial, analytical, and predictive, to discover new relationships and forge or break links, dynamically adapting the dataflow graph to model the changing real-world. Swim applications are tiny, robust and resource efficient, and remain effortlessly in-sync with the real-world, analyzing, learning, and predicting on-the-fly.</description><identifier>DOI: 10.48550/arxiv.2205.10458</identifier><language>eng</language><subject>Computer Science - Distributed, Parallel, and Cluster Computing</subject><creationdate>2022-05</creationdate><rights>http://creativecommons.org/licenses/by-nc-sa/4.0</rights><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>228,230,780,885</link.rule.ids><linktorsrc>$$Uhttps://arxiv.org/abs/2205.10458$$EView_record_in_Cornell_University$$FView_record_in_$$GCornell_University$$Hfree_for_read</linktorsrc><backlink>$$Uhttps://doi.org/10.48550/arXiv.2205.10458$$DView paper in arXiv$$Hfree_for_read</backlink></links><search><creatorcontrib>Sachs, Chris</creatorcontrib><creatorcontrib>Govindarajan, Ajay</creatorcontrib><creatorcontrib>Crosby, Simon</creatorcontrib><title>Swim: A Runtime for Distributed Event-Driven Applications</title><description>Swim extends the actor model to support applications composed of linked distributed actors that continuously analyze boundless streams of events from millions of sources, to respond in-sync with the real-world. Swim builds a running application from streaming events, creating a distributed dataflow graph of linked, stateful, concurrent streaming actors that is overlaid on a mesh of runtime instances. Streaming actors are vertices in the dataflow graph that concurrently analyze new events and modify their states. A link is an edge in the graph and is a URI binding to an actor's streaming API. The Swim runtime streams every actor state change over its links to other (possibly remote) actors using op-based CRDTs that asynchronously update remotely cached actor state replicas. This frees local actors to compute at any time, using the latest replicas of remote state. Actors evaluate parametric functions, including geospatial, analytical, and predictive, to discover new relationships and forge or break links, dynamically adapting the dataflow graph to model the changing real-world. Swim applications are tiny, robust and resource efficient, and remain effortlessly in-sync with the real-world, analyzing, learning, and predicting on-the-fly.</description><subject>Computer Science - Distributed, Parallel, and Cluster Computing</subject><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2022</creationdate><recordtype>article</recordtype><sourceid>GOX</sourceid><recordid>eNotj0tOwzAUAL1hgQoHYIUvkOB_HHZRWz5SpUrQffRqP0tPatLIcQvcHiisZjeaYexOitp4a8UD5E8610oJW0thrL9m7fsHDY-842-nsdCAPB0zX9FcMu1PBSNfn3Es1SrTD3k3TQcKUOg4zjfsKsFhxtt_Ltjuab1bvlSb7fPrsttU4BpfGYgqoHDgjA_OakyiQQVOhuCj0NG0MYkELTgndQKrVTI6Nrj3RgNKpxfs_k97ae-nTAPkr_73ob886G-5IUFK</recordid><startdate>20220520</startdate><enddate>20220520</enddate><creator>Sachs, Chris</creator><creator>Govindarajan, Ajay</creator><creator>Crosby, Simon</creator><scope>AKY</scope><scope>GOX</scope></search><sort><creationdate>20220520</creationdate><title>Swim: A Runtime for Distributed Event-Driven Applications</title><author>Sachs, Chris ; Govindarajan, Ajay ; Crosby, Simon</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a678-4ad2ce06a648c653ef07e2a61cc8d03d49df0fa9a6613fa532f43d7eb843ae163</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2022</creationdate><topic>Computer Science - Distributed, Parallel, and Cluster Computing</topic><toplevel>online_resources</toplevel><creatorcontrib>Sachs, Chris</creatorcontrib><creatorcontrib>Govindarajan, Ajay</creatorcontrib><creatorcontrib>Crosby, Simon</creatorcontrib><collection>arXiv Computer Science</collection><collection>arXiv.org</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Sachs, Chris</au><au>Govindarajan, Ajay</au><au>Crosby, Simon</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Swim: A Runtime for Distributed Event-Driven Applications</atitle><date>2022-05-20</date><risdate>2022</risdate><abstract>Swim extends the actor model to support applications composed of linked distributed actors that continuously analyze boundless streams of events from millions of sources, to respond in-sync with the real-world. Swim builds a running application from streaming events, creating a distributed dataflow graph of linked, stateful, concurrent streaming actors that is overlaid on a mesh of runtime instances. Streaming actors are vertices in the dataflow graph that concurrently analyze new events and modify their states. A link is an edge in the graph and is a URI binding to an actor's streaming API. The Swim runtime streams every actor state change over its links to other (possibly remote) actors using op-based CRDTs that asynchronously update remotely cached actor state replicas. This frees local actors to compute at any time, using the latest replicas of remote state. Actors evaluate parametric functions, including geospatial, analytical, and predictive, to discover new relationships and forge or break links, dynamically adapting the dataflow graph to model the changing real-world. Swim applications are tiny, robust and resource efficient, and remain effortlessly in-sync with the real-world, analyzing, learning, and predicting on-the-fly.</abstract><doi>10.48550/arxiv.2205.10458</doi><oa>free_for_read</oa></addata></record>
fulltext fulltext_linktorsrc
identifier DOI: 10.48550/arxiv.2205.10458
ispartof
issn
language eng
recordid cdi_arxiv_primary_2205_10458
source arXiv.org
subjects Computer Science - Distributed, Parallel, and Cluster Computing
title Swim: A Runtime for Distributed Event-Driven Applications
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-11T12%3A17%3A23IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-arxiv_GOX&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Swim:%20A%20Runtime%20for%20Distributed%20Event-Driven%20Applications&rft.au=Sachs,%20Chris&rft.date=2022-05-20&rft_id=info:doi/10.48550/arxiv.2205.10458&rft_dat=%3Carxiv_GOX%3E2205_10458%3C/arxiv_GOX%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true