On Wed, Dec 27, 2017 at 12:21 AM, Norman Walsh <[email protected]> wrote:

> Brad Fitzpatrick <[email protected]> writes:
> > When you said you waited to write a "backend", I assumed you meant a
> > blob storage backend, but perhaps you meant something else. Which
> > part do you want to write, and for what reasons? Maybe we can point
> > you in the right direction.
>
> Hmm. Sorry, I guess I don’t really understand how all the pieces fit
> together.
> I was imagining that the backend was responsible for storing, indexing, and
> querying the data. Perhaps even generating some of the /ui/.
>

I'll consider this confusion a TODO to update our docs.

We have https://perkeep.org/doc/arch but it's missing some bubbles. We
should add apps, importers, and /ui/, all of which are just different types
of clients of the search interface (which uses the indexes, shown) + blob
storage interface.

There are basically two storage abstractions:

-- storing content-addressable small-ish blobs (16MB max, currently). this
is the blob upload protocol we pointed you at before.
-- the index storage (anything that can implemented a sorted key/value ---
https://perkeep.org/pkg/sorted#KeyValue). But this is currently Go only,
and we already basically have Go implementations of every database.

Deciding what & how to index things is currently not an abstraction. That's
all in Go. But one could in theory implement the REST interface to the
search interface, but that's a moving target and ever growing, and you'd
have to then do all your own indexing. You'd be forever playing catch-up,
so we focus on the one Go implementation.

I had assumed you were only interested in a new blob storage backend.

-- 
You received this message because you are subscribed to the Google Groups 
"Camlistore" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to