FaunaDB Adds Native GraphQL Support |
Written by Kay Ewbank |
Thursday, 18 July 2019 |
FaunaDB has been updated with a GraphQL API, a web-based version of the Fauna shell, and support for role-based access control. FaunaDB was developed by former technical leaders at Twitter and Couchbase who wanted to develop a new adaptive operational database to meet the needs they felt were unmet while they were working at Twitter.
FaunaDB was written in Scala and Java and runs on the JVM, with versions for Linux, Windows, and OS X. There are drivers for Scala, Java, JavaScript, C#, Python, Ruby, Go and Swift, along with an HTTP API. The database system includes a transactional query language, ACID consistency, and multi-tenancy. The latest release, 2.7, comes with a GraphQL API that makes use of a Calvin-inspired shared core. This provides uniform access to transactional consistency, user authorization, data access and temporal storage. The GraphQL API supports three general functions: Queries, Mutations, and Subscriptions, though only the queries and mutations are natively supported. The team is working on native support for subscriptions is in the roadmap, but at the moment you have to write a custom function to set up a subscription. You can import GraphQL schemas from the GraphQL tab in the Fauna web editor, and the Prisma GraphQL Playground IDE has been integrated into the Fauna Cloud Console, offering a way to work with GraphQL inside the console. The new version of FaunaDB also adds support for Role-based access control (RBAC) as a replacement for FaunaDB’s current resource-based security model. Until now, access within FaunaDB was restricted to four pre-defined roles - admin, server, server- read-only, or client. The new support means developers can define custom roles that give access to only the data the user needs to see. Another improvement to the new release is the addition of a web-based version of the Fauna Shell. This lets users access the Shell command-line from any browser, and run FQL commands and functions directly in the browser. Support has also been added for recursive user-defined functions, so you can now make recursive calls to user-defined functions. Since recursive calls can be very resource-intensive, the number of calls is restricted to a hard limit of 200.
More InformationRelated ArticlesDeveloper Edition Of FaunaDB Enters Preview Couchbase Mobile Version Adds Sync Gateway Couchbase Server 4.0 Now With N1QL To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.
Comments
or email your comment to: comments@i-programmer.info |
Last Updated ( Friday, 19 July 2019 ) |