Journal article Open Access

WindFlow: High-Speed Continuous Stream Processing With Parallel Building Blocks

Gabriele Mencagli; Massimo Torquati; Andrea Cardaci; Alessandra Fais; Luca Rinaldi; Marco Danelutto


JSON Export

{
  "files": [
    {
      "links": {
        "self": "https://zenodo.org/api/files/fa0cde24-37e9-46ac-b1e3-f3ee056d3fd8/Preprint-TPDS-2021.pdf"
      }, 
      "checksum": "md5:adf210760c5e5bc7b8f9ac7ef9297741", 
      "bucket": "fa0cde24-37e9-46ac-b1e3-f3ee056d3fd8", 
      "key": "Preprint-TPDS-2021.pdf", 
      "type": "pdf", 
      "size": 3000048
    }
  ], 
  "owners": [
    35234
  ], 
  "doi": "10.1109/TPDS.2021.3073970", 
  "stats": {
    "version_unique_downloads": 28.0, 
    "unique_views": 33.0, 
    "views": 36.0, 
    "version_views": 36.0, 
    "unique_downloads": 28.0, 
    "version_unique_views": 33.0, 
    "volume": 84001344.0, 
    "version_downloads": 28.0, 
    "downloads": 28.0, 
    "version_volume": 84001344.0
  }, 
  "links": {
    "doi": "https://doi.org/10.1109/TPDS.2021.3073970", 
    "latest_html": "https://zenodo.org/record/5163394", 
    "bucket": "https://zenodo.org/api/files/fa0cde24-37e9-46ac-b1e3-f3ee056d3fd8", 
    "badge": "https://zenodo.org/badge/doi/10.1109/TPDS.2021.3073970.svg", 
    "html": "https://zenodo.org/record/5163394", 
    "latest": "https://zenodo.org/api/records/5163394"
  }, 
  "created": "2021-08-05T11:56:03.235749+00:00", 
  "updated": "2021-08-25T13:48:30.387776+00:00", 
  "conceptrecid": "5163393", 
  "revision": 4, 
  "id": 5163394, 
  "metadata": {
    "access_right_category": "success", 
    "doi": "10.1109/TPDS.2021.3073970", 
    "description": "<p>Nowadays, we are witnessing the diffusion of Stream Processing Systems (SPSs) able to analyze data streams in near realtime. Traditional SPSs like Storm and Flink target distributed clusters and adopt the continuous streaming model , where inputs are processed as soon as they are available while outputs are continuously emitted. Recently, there has been a great focus on SPSs for scale-up machines. Some of them (e.g., BriskStream ) still use the continuous model to achieve low latency. Others optimize throughput with batching approaches that are, however, often inadequate to minimize latency for live-streaming applications. Our contribution is to show a novel software engineering approach to design the runtime system of SPSs targeting multicores, with the aim of providing a uniform solution able to optimize throughput and latency. The approach has a formal nature based on the assembly of components called building blocks , whose composition allows optimizations to be easily expressed in a compositional manner. We use this methodology to build a new SPS called WindFlow . Our evaluation showcases the benefits of WindFlow : it provides lower latency than SPSs for continuous streaming, and can be configured to optimize throughput, to perform similarly and even better than batch-based scale-up SPSs.</p>", 
    "license": {
      "id": "CC-BY-4.0"
    }, 
    "title": "WindFlow: High-Speed Continuous Stream Processing With Parallel Building Blocks", 
    "relations": {
      "version": [
        {
          "count": 1, 
          "index": 0, 
          "parent": {
            "pid_type": "recid", 
            "pid_value": "5163393"
          }, 
          "is_last": true, 
          "last_child": {
            "pid_type": "recid", 
            "pid_value": "5163394"
          }
        }
      ]
    }, 
    "communities": [
      {
        "id": "teaching-h2020"
      }
    ], 
    "grants": [
      {
        "code": "871385", 
        "links": {
          "self": "https://zenodo.org/api/grants/10.13039/501100000780::871385"
        }, 
        "title": "A computing toolkit for building efficient autonomous applications leveraging humanistic intelligence", 
        "acronym": "TEACHING", 
        "program": "Horizon 2020 Framework Programme - Research and Innovation action", 
        "funder": {
          "doi": "10.13039/501100000780", 
          "acronyms": [], 
          "name": "European Commission", 
          "links": {
            "self": "https://zenodo.org/api/funders/10.13039/501100000780"
          }
        }
      }
    ], 
    "keywords": [
      "Data Stream Processing", 
      "Multicore Programming", 
      "Parallel Computing"
    ], 
    "publication_date": "2021-04-19", 
    "creators": [
      {
        "affiliation": "University of Pisa", 
        "name": "Gabriele Mencagli"
      }, 
      {
        "affiliation": "University of Pisa", 
        "name": "Massimo Torquati"
      }, 
      {
        "affiliation": "University of Pisa", 
        "name": "Andrea Cardaci"
      }, 
      {
        "affiliation": "University of Pisa", 
        "name": "Alessandra Fais"
      }, 
      {
        "affiliation": "University of Pisa", 
        "name": "Luca Rinaldi"
      }, 
      {
        "affiliation": "University of Pisa", 
        "name": "Marco Danelutto"
      }
    ], 
    "access_right": "open", 
    "resource_type": {
      "subtype": "article", 
      "type": "publication", 
      "title": "Journal article"
    }
  }
}
36
28
views
downloads
Views 36
Downloads 28
Data volume 84.0 MB
Unique views 33
Unique downloads 28

Share

Cite as