libp2p / go-libp2p

libp2p implementation in Go
MIT License
6.07k stars 1.07k forks source link

peerstore: next steps for datastore-backed peerstore #1702

Open raulk opened 6 years ago

raulk commented 6 years ago

Following libp2p/go-libp2p-peerstore#34, we're in a pretty good state vs. baseline. Performance benchcmp here: https://github.com/libp2p/go-libp2p-peerstore/issues/31#issuecomment-421433125

Summing up my thoughts here on how to move forward.

raulk commented 6 years ago

Tagged a few people just to make you aware of the future direction I'd like to pursue with the peerstore, following all the work that has been done already.

Stebalien commented 6 years ago

Not feasible because TTL management needs to be fine-grained (up to the multiaddr).

We can also manage this using a GC system. That is, store large records and periodically sweep.

Note: We also don't need to use TTLs if you can think of a better metric/system.

bigs commented 6 years ago

i think this is a definite case for indexing, as you suggest. a note: we can also open multiple badger data stores instead of namespacing keys if it suits. it’s designed to have that be an alternative to multiple column families.

aarshkshah1992 commented 5 years ago

@raulk What is the status of this as of date ? I'd like to help out with this by picking up some some of the chunks if possible.