Upgrade to Pro — share decks privately, control downloads, hide ads and more …

RCOUCH

 RCOUCH

Benoît Chesneau will present RCOUCH a document oriented database for offline-first applications.

Benoît Chesneau is a French web craftsman, living near Paris. He has years of experience in building small and big-scale database backend websites. He is the founder of a company building innovative web services and open-source applications. Benoît Chesneau is also the founder of the Refuge and RCOUCH projects and the author of Gunicorn and multiple other opensource projects in Python and Erlang.

erlang.paris

June 29, 2015
Tweet

More Decks by erlang.paris

Other Decks in Technology

Transcript

  1. The database for offline-first applications
    http://rcouch.org
    Erlang Paris - June 2015

    View full-size slide

  2. • A CouchDB flavour
    • View changes and view-based replication
    • Easy to extend
    • Correctness
    • Performant
    About

    View full-size slide

  3. https://github.com/rcouch/rcouch/wiki/rcouch-hooks

    View full-size slide

  4. • Building complex system is easy
    • Resilience
    • Concurrency
    A good ADN

    View full-size slide

  5. P
    P
    P
    P
    Processes are solated

    View full-size slide

  6. P
    P
    P
    P
    Failure
    The system continue to work

    View full-size slide

  7. P
    P
    P
    P
    Supervise & Recover
    Detect failures and relauch

    View full-size slide

  8. a
    good
    citizen

    View full-size slide

  9. • View engine, couchapps in JS…
    • Or any language.
    • A language using the Erlang VM is quite easy
    • 2.0 will have support of LFE, LUA, Elixir
    A good ADN

    View full-size slide

  10. A good ADN
    function(doc) {
    emit(doc._id, null);
    }

    View full-size slide

  11. • View engine, couchapps in JS…
    • Or any language.
    • A language using the Erlang VM is quite easy
    • 2.0 will have support of LFE, LUA, Elixir
    A good ADN

    View full-size slide

  12. • In rcouch a language is viewed as a process
    • Input/Output protocole
    • building elixir: rebar(3) plugin
    • same for other languages
    • shipped in a release or loaded
    How: M/R & COUCHAPPS

    View full-size slide

  13. TO THE
    NEXT
    STEP

    View full-size slide

  14. KEEP THE
    COUCH

    View full-size slide

  15. • Cluster Of Unreliable Commodity Hardware
    • Decentralised
    • works in condition when we can’t achieve the
    “quorum”
    A good ADN

    View full-size slide