[Ndn-interest] Announcing "persist", a fast and easy-to-use NDN persistent content store

Wentao Shang wentaoshang at gmail.com
Thu Apr 30 16:13:24 PDT 2015


I see. So I see this as a potential replacement for repo-ng. Wonder if you
have done any benchmark on it? The things I care about include: maximum
amount of data you can store without significant drop of read/write speed;
average response time for read/write operations; memory scalability (does
memory consumption go up linearly or sub-linearly with the amount of stored
data?); disk space requirement.

I have been troubled by various issues with repo-ng for a very long time.
It would be great if we can have a more performant alternative. I'd be
interested in contributing by adding the repo command protocols on top of
it.

Thanks,
Wentao
On Thu, Apr 30, 2015 at 3:59 PM Tai-Lin Chu <tailinchu at gmail.com> wrote:

> It uses memory-mapped files, so it has the read performance of a pure
> in-memory storage while still offering the persistence of standard
> disk-based storage.
>
> > a replacement for ndn repo?
>
> No, it does not have management protocol now, but it is very easy to
> create another ndn repo with "persist".
>
> > a new implementation of content store (i.e. cache) for ndn routers?
>
> No, It is for any ndn app. If a router needs disk-based storage, it
> can also use "persist".
>
> > or a new implementation of in-memory cache that can be used by ndn
> applications?
>
> No, the term "persist" in ndn-cxx in-memory cache means
> "eviction-less". This is entirely different.
>
> Thanks.
>
>
>
>
> On Thu, Apr 30, 2015 at 3:34 PM, Wentao Shang <wentaoshang at gmail.com>
> wrote:
> > The phrase "persistent content store" confuses me. Could you clarify that
> > this is intended as a replacement for ndn repo, or a new implementation
> of
> > content store (i.e. cache) for ndn routers, or a new implementation of
> > in-memory cache that can be used by ndn applications?
> >
> > Thanks,
> > Wentao
> >
> > On Thu, Apr 30, 2015 at 3:09 PM Tai-Lin Chu <tailinchu at gmail.com> wrote:
> >>
> >> "persist" uses BoltDB, which is based on LMDB. LMDM's super clever
> >> design made the key/value store very fast for reads and safe for
> >> writes. MVCC-like design with copy-on-write B+trees avoids locking
> >> database for reads during writes, and makes it possible to provide
> >> full ACID transactions support.
> >>
> >> I believe this is the first attempt to create a high performance and
> >> persistent content store for NDN project. Comments are welcomed :)
> >>
> >> Project page:
> >> https://github.com/go-ndn/persist
> >>
> >> Example:
> >> https://github.com/go-ndn/example/blob/master/producer/producer.go#L44
> >>
> >> Cheers!
> >> _______________________________________________
> >> Ndn-interest mailing list
> >> Ndn-interest at lists.cs.ucla.edu
> >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/ndn-interest/attachments/20150430/1477bd87/attachment.html>


More information about the Ndn-interest mailing list