Decentralized data processing platform
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


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

Basically, it's just a fancy wrapper around Dat Archive

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


  • 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.


define RDD on dat with dat-transform


const hs = require('hyperspark')
var rdd = hs(<DAT-ARCHIVE-KEY>)

// define transforms
var result = rdd
  .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