holepunchto / holepunchto/hyperbee2

Generic map/reduce

Open
#29 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
12
Forks
5
Avg merge
3h 23m
Merged PRs (30d)
27

Description

The idea is to add a generic map/reduce API that supports incremental updates by persisting intermediary reducer output alongside tree nodes.

Persisting intermediate results is important when 'forking' a remote hyperbee - as to recalculate the reducer output from scratch would require fetching the whole tree, breaking hyperbee's lightweight fork model.

However, exchanging intermediate reducer output presents some challenges. The output is only useful in combination with the code that produced it (at least for writes). This requires either shipping the code (like couchdb) and running it in a sandbox, or introducing some kind of versioning so programs consuming intermediate reducer output can determine if they have compatible code.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files, tests, or entry points are named. Start by locating the existing tree-node persistence and remote-fork implementation, then trace where reducer output could be stored and exchanged. Done would require a defined generic map/reduce API and a resolved approach for reducer-code compatibility or versioning.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
databases, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.