similar to a RethinkDB/MongoDB:
* Designed to be great for storing application data. Fields can be dynamically added (schemaless) and their values can be arrays so it is easy to maintain data locality according to your application use patterns.
* Uses a non-SQL query language
* Probably not great for ad-hoc reporting (arguably SQL is a requirement for that)
Unlike MongoDB: supports joins
Unlike RethinkDB: great support for transactions, just not SQL transactions with an open session (which are unnecessary for an application)
Unlike most databases
* cloud-hosted and pay-for-use (on-premise is on their roadmap)
* claims support for graph data by storing arrays of references
* QoS built-in so you could run a slow analytics query without disrupting your application
Cons
* Unfortunately just like MongoDB/RethinkDB they have no real database-level integrity of schema and foreign keys, but at least foreign keys are on their roadmap.
I am a huge fan of the cloud-hosted pay for use aspect: I wonder why anyone would design a DB today without this in mind. You can transfer your data from a pay-for-use application DB (FaunaDB or Google DataStore) to a data warehouse (Snowflake or Google BigQuery) which is also pay for use and gives you SQL reporting abilities.