We built this Add-on so that any developer using FaunaDB and Netlify can come up with an idea and launch it super quickly, by simply focusing on the front-end.
If you’re a Netlify user who has never heard of FaunaDB and want to add a database to your app, we’re the only database with a direct Add-on. FaunaDB a perfect choice for developers who don’t know much about databases, or would rather not worry about such details :)
Users can now create an account and login to FaunaDB with their Netlify account credentials, using a new OAuth login option. Databases created via the Add-on are available for use instantly, and can be managed directly within the FaunaDB Console.
And, from the Fauna docs:
> Related documents in FaunaDB are stored within classes (also known as collections), which are similar to tables in relational databases, except that the different items in the class are not all required to have the same fields. Typically, classes correspond to types in your application, for example, blog posts, authors, comments, shopping carts, line items, and invoices. Creating a class is easy as you don’t have to specify constraints or field names.
As someone who's dealing with a long-lived Mongo application, this "you don't have to think/know anything about databases to get started!" thing might start off as a feature, but it'll turn into an anchor.
To clarify, what we mean by simplicity is making databases as simple to work with as using an API. An example of this is native GraphQL support within FaunaDB.
We're continuing to make our database concepts like Collections easier to use and understand. I've made a note to clarify the blog post you are referencing.
Collections come from a NoSQL approach, and allow users to change what's stored in data records over time. We see this as a convenient way to store data, without having to worry about specifying a schema upfront that may change over time.
Thing is, there's always a schema. Code always expects data to look a particular way. Whether it's written down and enforced by the DB or not will have a great influence on your ability to reason about your system and make changes down the line.
This sounds like the same mistakes of Mongo all over again. Databases that don't require and enforce schemas trade a degree of early flexibility and development speed for a future of confusion, hacks and workarounds, and lower velocity.
Most people who make this tradeoff aren't aware they're making it. The rest of us use RDBMS.
(I get that you work for the company and I don't expect this comment to change anything - except hopefully the mind of someone contemplating using a no-schema database)
FaunaDB is temporal as well and people don't really enjoy migrating the past, so it has to be a little different than a traditional RDBMS schema. But ultimately it will be more flexible as well.
Would you please list how FaunaDB is better than https://firebase.google.com/pricing , which some people are already familiar with?
Some unique benefits to using FaunaDB:
- 100% ACID transactions, with globally consistent reads and writes
- Powerful query language (FQL)
- Native GraphQL interface
- Powerful ABAC system (attribute-based access control)
- Flexible architecture. NoSQL database which supports true relationships