incubator-couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bernd Lutz <>
Subject Handling unique URL friendly identifiers
Date Wed, 30 Dec 2009 19:01:08 GMT
Hello everyone,

I'm currently exploring the possibility to port an app from MySQL to CouchDB. The app uses
friendly URLs, e.g. Every content has an unique
identifier which derives from the content title.

If there would be only a few users creating content a simple check for the identifier's uniqueness
would be enough. But what if there are multiple database nodes and let's say thousand users
creating identifiers.
So we cannot get a consistent view result on a single node nor being sure that another user
doesn't add a same identifier on another node in parallel.

I hope you got the problem. How would you handle it?

My approach:
Setting up a special node and database handling idenifiers with a view having the identifier
as key.
1. Adding a new document with the identifier.
2. Check the uniqueness by queriing the view.
3. If ok, all right. Otherwise: Recursively add a postfix "-n" until the result is unique.

Of course the identifier won't be used as document _id.
I think this is a common problem not only for url friendly identifiers. A common usage could
be also the unique user name.

Best regards and a happy new year,
View raw message