hyperspark

0.0.1 • Public • Published

Hyperspark

Hyperspark is a decentralized data processing tool for Dat. Inspired by Spark

This is a work-in-progress. Any idea/suggestion is welcome

Goal

  • Reuse intermediate data.
  • Minimize bandwidth usage.
  • Share computation power.

How to use

Data owner

It's simple! Just share your data with dat: dat .

Data Scientist

Define your ideas with transforms and actions without worrying about fetching and storing data.

Computation Provider

Run transformations defined by researchers. Cache and share intermediate data so everyone can re-use the knowledge without having their own computation cluster.


Synopsis

define RDD on dat with dat-transform

word-counting:

const hs = require('hyperspark')
var rdd = hs(<DAT-ARCHIVE-KEY>)
 
// define transforms
var result = rdd
  .splitBy(/[\n\s]/)
  .filter(x => x !== '')
  .map(word => kv(word, 1))
 
// actual run(action)
result.reduceByKey((x, y) => x + y)
  .toArray(res => {
    console.log(res) // [{bar: 2, baz: 1, foo: 1}]
  })

Related Modules

/hyperspark/

    Package Sidebar

    Install

    npm i hyperspark

    Weekly Downloads

    1

    Version

    0.0.1

    License

    MIT

    Last publish

    Collaborators

    • poga