Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

CouchDB sync is more like rsync than DVCS sync. The idea is that it is very simple, yet powerful enough to build more sophisticated systems on top of. Building small and large P2P systems on top of CouchDB is very much a design goal. The fact that sync can be used to build scalable HA systems is orthogonal.

To your points:

1.) I think the idea of this project is to define a common ground to allow seamless sync.

2.) CouchDB supports filtered replication, so you can define what can be synced and what not.

3.) CouchDB has a push-notification changes feed that does not involve polling.



Is it actually the case that filtered replication can be used cleanly for access control now? My understanding from the various docs was that currently you can write a filter but not require that users replicate through it -- that is, if you have permission to replicate, you have permission to replicate and that's it. For real access control using this I think you'd need something like a permission to replicate distinct from permission to read and a permission to replicate only through a specified filter. I suppose I'm off to have a look through Max's source, but if I'm wrong about these things I'd appreciate the correction...

...ok, back. Right now there appears to be no access control at all. Granting that this is a relatively early-stage project so it doesn't necessarily matter too much, but my question still stands.


Your personal data db could be private and you could use filtered replication to create a local clone with only the data you want to allow replicating.


Do you know if this thing will replicate all data of every person in the network? Or does it just connect to your friends' nodes and pull only their own changes?


The particular implementation will pull all I think.

But it's not a big jump to setup a "follow" node that replicates only the last X messages from personal friend nodes. At least that was how I was planning to do it, but I hadn't intended to mimic Diaspora's protocol.

What I could do is work with Max's construct and set it up for personal publishing, and distributed following. One node for broadcasting out, and as many different nodes as I want for following updates from other nodes


A system to push/pull selected messages to distributed servers (securely) would kill, and would be the basis of a revolution around the internet. I think Diaspora botched that chance, even though I sent them an email about it. Maybe they didn't really, but I hear their code is bad.

Besides, we need a platform, something like CouchDB, Diaspora is more of an app on top of the platform (but maybe I'm wrong on this one as well).

In a nutshell, easy/secure push would be a killer platform to build the new Twitter/Facebook/FourSquare on.

Of course, this couldn't be monetized easily, so maybe I'm wrong.


Looking forward to restart of continuous replication after restart, according to @couchdb on twitter it's in the trunk :D




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: