Fauna CEO says cloud APIs help developers build apps without a database

Join Transform 2021 this July 12-16. Register for the AI event of the year.

Advances in distributed, serverless computing have changed how databases are used in modern application development. For its part, startup Fauna set out to make database development more developer friendly with cloud APIs.

Fauna is not a database in the traditional sense. The companys web site calls Fauna a data API for modern applications. VentureBeat sat down with Eric Berg, Faunas CEO, to understand what motivates the startup and what the company is doing differently.

This interview has been edited for brevity and clarity.

VentureBeat: So why did you end up building Fauna?

Eric Berg: I think what Ill start with is the genesis of the company, which kind of explains whats been built. The founding technical team came out of Twitter. They had started when Twitter was small and then went through all the pains of scaling the infrastructure. Evan Weaver, whos our CTO, ran the data infrastructure team. He tried to use every tool out there at the time, which was when a plethora of NoSQL options arose. So they tried Memcache, Redis, Cassandra and so on.

They got frustrated with the fact that there wasnt a good single solution and said: Why shouldnt there be a very easy way for a team to start small on an application. Then, with an incredible developer experience, be able to seamlessly scale that service without having to become an expert on caching, denormalization, replication, and other architectural issues of the backend. All the things, the sort-of baggage that goes with traditional databases as you scale, right?

VentureBeat: So you want to build something simple to use?

Berg: Yes, weve taken [the traditional database] up even a higher level of abstraction. With Fauna, you dont know and dont have to know about the physicality of your database at all. It literally is delivered as an API much like Twilios API or Stripes payments API. You dont have to pick a machine and memory etc. You just create a database. We take care of all the replication and the scaling and everything that needs to happen on the back end.

VentureBeat: So what kind of use cases are they tackling?

Berg: Weve got a set of users who come to us from a more traditional relational database background. They come from an understanding of something like PostgreSQL or MySQL. They really love the fact that we combine that relational capability, that consistency and transaction support with basically no database operations. Thats very compelling.

Then we have a set of users who are really rethinking their application architecture. They tend to be more front-end developers and they dont have a database background. And so for them GraphQL is a very natural interface to Fauna. So thats a very easy way for them to get started.
As you go forward and you really want to tap into a lot of the underlying power of Fauna, you tend to see people then progress into using some combination of GraphQL and our FQL [query] language.

VentureBeat: So, developers are using it for any use case that needs to store data, right?

Berg: Yes. Theyre attracted to the operational flexibility. And the fact that they dont have to know anything about caching, normalization, replication, architectural rewrites, or anything associated with them. Or anything associated with having to scale and manage a database. Thats huge.

Number two, the fact that it is an API, so its directly accessible over HTTP. So, you dont have to have any connection pooling or any kind of overhead associated with connecting to and interfacing with the database. You can directly address the database from a web browser or from a mobile application.

VentureBeat: And its not just the hardware support, right? Youve also opened up the data structures to be simpler while giving Fauna the power to reason them?

Berg: Fauna has a very flexible set of data models. We support both relational and document models for querying data. Then we have this temporal component that allows us to really sort of play [the data] back and forth. We also have very strong consistency guarantees, which you would traditionally associate with a relational database.

Oftentimes Ill tell people that were trying to combine the promise that developers loved about traditional Oracle or PostgreSQL or MySQL with the developer flexibility of something like a NoSQL document database. Then weve removed that operational complexity so that you can scale very easily.

VentureBeat: And the developer approaches it as a basic cloud API?

Berg: Yes! You can get started in a more standard interface so we support GraphQL, which is very popular these days.Then we also support a concept thats very similar to stored procedures that youre probably familiar with in the SQL world. We have what we call UDFs or , user defined functions. We have a language called FQL for that. Thats a very powerful language that allows you to basically capture your business logic [and embed it] in a Fauna database.

VentureBeat: This isnt complex to use, at least if youre dealing with all of the HTTP AJAX calls that are so common now.

Berg: Absolutely. Its directly accessible over HTTP. You dont have to have any connection pooling. [Theres not] any kind of overhead associated with connecting to and interfacing with the database. [Thats big] especially for those front end developers, right? You can directly address the database from a web browser or from a mobile application. Thats very compelling.

VentureBeat: This turns the db from a backend tool into something that doesnt need the other tiers. It talks directly to the users machine.

Berg: SQL is King in the OLAP/Data Warehouse world. Developers, not many of them really love it, and it takes work [with all] of the ORMs (object-relational mappings). So weve tried to come up with a much more developer friendly and native experience that you can tap into from the language of your choice.

VentureBeat: But then what does the developer do about security?

Berg: We have a pretty powerful security model in our authorization framework. Its an attribute-based access control layer that is native to the database. In addition, for customers that want to use a third-party authentication solution we have standards-based integration with identity vendors like Auth0. From an identity perspective we give people that flexibility. If you want to build your own layer, you can. Or if you want to tap into an off-the-shelf layer, you can.

VentureBeat: Are there trade-offs?

Berg: People might say, well, this is not much different from a serverless database like DynamoDB. But DynamoDB has a much less flexible developer and data modeling experience and youre not getting the transactionality in those services. DynamoDB evolved from Amazon.coms need to solve the sort of shopping cart problem at scale. And so its a very simple but extremely fast key-value store that does just that. It started out to do that quickly and does that very, very well. But it doesnt offer the same consistency or developer and data model flexibility.

People might compare us to something like DynamoDB, because we are both serverless, and say, well, Fauna, you know, youre not sub-five or ten milliseconds for your latency, Why is that? Well, if you want global consistency, then thats going to take on the order of 100 milliseconds. And if you try to run Dynamo in their mode which attempts to deliver transactional consistency you will see similar latency tradeoffs.

VentureBeat: And this is a big part of what the developers need. Its another worry you take off their shoulders.

Berg: Evan Weaver, has written some great and very detailed blog posts to really help people understand how Faunas architecture compares to other serverless databases like DynamoDB or AWS Aurora Serverless. Those posts do a great job of comparing and contrasting the developer experience and the underlying architectural approach, which is important for people to understand when they are considering the impact of those architectural trade-offs.

If youre looking for the absolute lowest latency of, say, sub five milliseconds, our architecture is not that. Thats not what weve optimized for.

We offer a combination of very good performance, a seamless, no-operations required developer experience, and a commitment to transactions. When people are building business critical applications where the consistency of that data is really important that tends to be a really good fit for Fauna. And many customers are really attracted to the fact that Fauna means they have zero operational overhead for their database.

VentureBeat: I noticed that the companys name doesnt have the letters DB in it. Its just Fauna.

Berg: Yes. There are really two things driving that. One is that we are, as we discussed, delivered as an API. Removing the DB helped better communicate the fact that our delivery model is fundamentally different. Also when you look at Fauna it is a unique combination of a powerful storage engine and a programmable compute layer that is globally distributed.

Over time the architecture will allow us to expand Faunas offerings. Keeping DB just felt like it was a little bit more limiting. And so we went to a broader term Fauna.


VentureBeat’s mission is to be a digital town square for technical decision-makers to gain knowledge about transformative technology and transact.

Our site delivers essential information on data technologies and strategies to guide you as you lead your organizations. We invite you to become a member of our community, to access:

  • up-to-date information on the subjects of interest to you
  • our newsletters
  • gated thought-leader content and discounted access to our prized events, such as Transform 2021: Learn More
  • networking features, and more

Become a member

Source link

Leave a Reply

Your email address will not be published. Required fields are marked *