CouchDB

CouchDB

Application and Data / Data Stores / Databases
CEO at NaoLogic Inc·

We implemented our first large scale EPR application from naologic.com using CouchDB .

Very fast, replication works great, doesn't consume much RAM, queries are blazing fast but we found a problem: the queries were very hard to write, it took a long time to figure out the API, we had to go and write our own @nodejs library to make it work properly.

It lost most of its support. Since then, we migrated to Couchbase and the learning curve was steep but all worth it. Memcached indexing out of the box, full text search works great.

READ MORE
Naologic: Increase revenue through better collaboration between employees, vendors and remote teams (naologic.com)
8 upvotes·332K views
Software Developer ·

What databases do note applications use to keep their users' notes synced across devices? The only option I keep bumping into is Pouchdb/CouchDB, but that takes me out of the AWS stack and introduces other issues and more costs.

With so many note-taking apps out there, I thought there must be a solution or a template stack. Most resources are either for a chat app with WebSockets or for toy apps without cross-device sync.

READ MORE
5 upvotes·8.4K views
Replies (2)
owner at Swett D.G.·
Recommends
AWS Lambda

Using the subscription feature you may be able to set a trigger that if a user logs in it sends their notes from the database. Should not matter what device they are on. We used this to send automatic GPS updates to others in a GPS related game. A player would move the, the database would be updated, this would trigger a subscription service to send the new location to all other players. Worked like a dream

READ MORE
4 upvotes·2 comments·3.7K views
Ammar Asmro
Ammar Asmro
·
January 27th 2021 at 12:43PM

That would require each user having their own table to limit notifications right? cuz otherwise any user that sends something, the subscription would get triggered for everyone

·
Reply
Ahren Swett
Ahren Swett
·
January 28th 2021 at 2:21AM

Not exactly sure but you may be able to get away with a subscription table and join on ID/user. Not sure your exact use case but is pretty simple to set up and experiment with :)

are you using graphQL or DynamoDB?

·
Reply
DevOps Architect ·
Recommends
Elasticsearch

From my experience, I can confirm that Elasticsearch is a highly flexible and powerful NoSql database that you can use for such purposes. It is actually used even for scenarios with much more pressure like logging systems that collect lots of logs per second. We used Elasticsearch in our company to collect logs of 90 different microservices in parallel each generating a huge amount of logs and it worked very nicely. In addition, if you want to stay with the AWS Stack, there is an Amazon service called "Amazon Elasticsearch Service" exactly for your case.

READ MORE
3 upvotes·3.1K views