I have a use case where I have to remove a subset of entities stored in couchbase, e.g. removing all entities with keys starting with "pii_". I am using NodeJS SDK but there is only one remove method which takes one key at a time: http://docs.couchbase.com/sdk-api/couchbase-node-client-2.0.0/Bucket.html#remove
In some cases thousands of entities need to be deleted and it takes very long time if I delete them one by one especially because I don't keep list of keys in my application.
The best way to accomplish this is to create a Couchbase view by key and then range query over that view via your NodeJS code, making deletes on the results.
For example, your Couchbase view could look like the following:
Then in your NodeJS code, you could have something that looks like this:
Of course your Couchbase design document and view will be named differently than the example that I gave, but the important part is the
ViewQuery.range
function that was used.All document ids prefixed with pii_ would be returned, in which case you can loop over them and start deleting.
Best,