Skip to content

Simple document db made for infinitely scalable globally distributed reads.

License

Notifications You must be signed in to change notification settings

leoafarias/neardb

Repository files navigation

NearDB is a simple database that leverages cloud infrastructure like document storage and CDN to deliver an inexpensive unbelievably scalable document database optimized for reads and perfect for edge applications.

Codacy Badge Build Status Coverage Status

Motivation

While working on building edge applications for higher performance and lower latency there is a need store persistent data also on edge.

Distributed database solutions but they are very involved and costly while having a lower global footprint than a CDN.

Leverage ubiquitous and mature infrastructure like cloud storage and CDNs to deliver a persistent, performance, and inexpensive db solution from the edge.

Use with Edge Apps/Functions

Works with the following for database storage

Client-side compatibility

Keep in mind while using this for client-side that ACL is done on the bucket/CDN level. It was designed for edge server use so client implementation can be a bit tricky. Open an issue with your specific case, I would love to hear how you plan on using it.

  • Browser
  • React Native

Who is this for

This is perfect for persistent data that is read frequently and needs to be avaialble on the edge application to deliver dynamic data while keeping the costs low. Some examples of the best uses are:

  • Key-value
  • Configuration
  • Cached data

Probably not for you if

  • You plan on using this as your primary database for an app that has complex data needs.
  • You need transactions. (I have some ideas on how to accomplish this, but its currently not implemented.)
  • Do many writes/sec in the same document. Reads are incredibly efficient, fast and inexpensive; however, writes are always at the origin.

Documentation & Guides

See NearDB.org

TypeDoc

See the documentation generated from TypeDoc.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

License

This project is licensed under the MIT License - see the LICENSE file for details