Skip to main content
Version: v3.x (DDN)

Hasura FAQ

What is the general architecture of Hasura DDN?

Hasura DDN is built on the major advancements made in Hasura Version 3:

Hasura Runtime Engine: The Hasura Engine is responsible for processing and serving APIs based on provided metadata. In DDN, the engine is has a clear separation of build time and runtime concerns which is analogous to compiled programming languages. Metadata can now be authored, edited and built declaratively without causing any downtime. The new engine can also serve production-grade APIs from the edge with extremely high performance since it accesses metadata on a per-request basis and benefits from vastly improved startup times. Essentially the cold start problem has been removed in DDN leading to zero-downtime rollouts.

Native Data Connector (NDC) Specification: The NDC specification describes how the API request will be executed and how the engine will interact with the underlying data source and is a new data connectivity specification from Hasura. In DDN, there is now no concept of "native databases" and access to all data sources and functionality including PostgreSQL will be based on the native data connector specification, implemented via Connectors. This helps in providing rich feature sets for all data sources as compared to just a few select ones. Moreover, there is now a strong focus on enabling the community to build data connector agents themselves. The specification and provided Rust and Typescript SDKs support building high-quality integrations for almost any conceivable data source (both databases and APIs), offering features like native queries, push-down capabilities, and connection pooling. Learn more.

Supergraph: A supergraph is an architecture and operating model to build and scale multiple data domains (or subgraphs) as a single graph of entities and operations.

Subgraphs: Subgraphs introduce a module system for metadata. They allow multi-team organizations working on a Hasura project to segment access to different metadata objects. A project's metadata is the amalgamation of metadata objects from all its subgraphs, and each subgraph can be accessed and updated independently. It also helps in avoiding conflicts when there are, for example, tables with the same names in different data sources. Learn more

Hasura Cloud: The cloud layer in Hasura DDN, Hasura Cloud, introduces the Data Delivery Network (DDN) for global API performance and availability. This layer also offers tools for managing projects, builds, subgraph and essentially represents the control plane for Hasura DDN.

DDN CLI: The new DDN CLI (Command-Line Interface), serves as a powerful tool for developers to interact with the Hasura platform. It allows users to initialize projects, manage metadata, track objects, create builds, and deploy data connectors that service an API in the cloud, easily. Learn More

DDN Console: The DDN Console has been revamped to enable rapid onboarding, testing and troubleshooting. The console now provides rich visualizations, deep dive metrics into models, enhanced traces, the new GraphiQL API explorer, new operational health dashboard and a refurbished data manager that scales seamlessly with heavy loads. Learn More

Builds: Each metadata change in Hasura now results in an atomic build which is represented by an immutable artifact that is loaded onto Hasura DDN instantly. Which means there is inherent version control and the ability to push metadata changes instantly and without errors. Learn more

What will be the benefit for me, the developer? (Why would I want to use or switch to DDN?)

  • Significant improvements to metadata authoring and management.
    • And end to the cold-start problem and instant changes to metadata. Deploy multiple times in an hour. Deploy with lightning speed and sub-second CI/CD.
    • No dependency on upstream services which means zero-downtime deployments.
    • Code driven workflows with advanced code generation tooling.
    • A single spec to define your whole API across diverse data sources and business logic.
    • Declarative metadata authoring with full control on API schema generation.
    • No metadata database - one less thing to manage in production.
  • Connect to any data or run any business logic with Native Data Connectors (NDCs).
  • Compose all your data sources, APIs and information into a single, powerful, inter-related supergraph.
  • Work better with your team with improved version control and collaboration features.
  • Unparalleled performance at any scale with optimized query execution and caching mechanisms.
  • Access a global edge network for low-latency, high-performance APIs with the Data Delivery Network (DDN).
  • Bring the programming language of your choice such as Typescript to compose business logic
  • Perform advanced mutations and workflows within the request response lifecycle.

What CI/CD features does Hasura DDN offer?

Instant CI/CD: Hasura brings instant CI/CD capabilities, enabling developers to test and validate changes rapidly.

CLI-Controlled Development: The Hasura Command-Line Interface (CLI) plays a central role in controlling and managing metadata builds and connector deployments. It allows developers to manage projects, create builds and promote them to production. This CLI-centric approach simplifies the deployment process and enables time-saving CI/CD pipelines. Learn more

Builds and Project Shares: With Hasura, metadata states are represented as builds. Once a build is thoroughly tested and validated, it can be applied to a project as the live API and made available to API consumers globally. This separation of build and production steps ensure a smoother transition from development to production.

Extremely Fast Builds: Hasura also introduces cloud innovations that allow metadata builds to be created instantly, regardless of the number of models. This means that updating even a large number of models is a swift and seamless process and developers can rapidly test multiple builds within a day.

Zero Downtime Rollouts: With Hasura, going to production is facilitated without restarts and with zero downtime. This ensures that your API remains available to users while updates are being applied.

Metadata Version Control: Hasura includes in-product metadata version control. Each build is associated with a unique build ID, making it easier to track and manage different versions of your metadata. This enhances transparency and auditability during the development process.

What can be automated?

Since metadata authoring is mostly code driven using the Hasura VS Code extension and the CLI, many metadata related changes can be automated using a version management and CI/CD tool of your choice.

How does Hasura DDN connect to data sources?

Native Data Connectors (NDC) are a framework introduced in Hasura DDN that enables developers to use pre-built data connector agents or build their own.

You can think of Data Connectors as a bridge or driver between Hasura DDN and external data sources.

Data Connectors facilitate the integration between Hasura and external data sources, allowing Hasura to seamlessly interact with a wide range of databases, services, and APIs. NDCs can be built for almost any conceivable source of data and are the only way to connect to data sources in Hasura DDN.

Native Data Connectors can either be self-hosted or hosted by Hasura. Learn more

I just have a database, why do I need to know about Data Connectors?

Essentially, you don’t. You can rely on our Hasura VS Code Extension and Hasura CLI to do much of the code generation and validation, but with knowledge of Data Connectors you will better understand your Supergraph architecture and you can build custom integrations to any data source or custom function or API.

If you're interested in this you can check out our Rust or Typescript SDKs, and also our Node.js Lambda Typescript Connector.

Is Hasura DDN open source?

The Hasura DDN engine and all Hasura data connectors are open-source and can be run on your own infrastructure. With the optimizations and features that Hasura DDN offers at the price point, our cloud service is the best way to use Hasura and self-hosting should be an option when specific requirements are needed and enterprise policies dictate.

What is the pricing structure for DDN?

Check out the pricing page here. Hasura DDN Pricing

The DDN CLI and VS Code extension will help you author. You can use the CLI to create a local directory scaffolding for you after which you can further author metadata using CLI commands and the VS Code extension. The console is intended to tool and for running queries, visualization and monitoring.

We expect most metadata management will happen via the code driven tools that we have in DDN. We are investing in extensive code generation capabilities via the Language Server Protocol baked into the IDE tools and users will still get to enjoy the quick authoring experiences of v2 such as that of permission building, outside the console.

I’m operating in a given cloud provider region. How can I have Hasura run in the same region?

Hasura DDN is strategically deployed in 10 regions worldwide. (We plan to increase coverage drastically as we move closer to Beta and beyond) Depending on the origin of a request, we automatically activate an instance of Hasura in the nearest region. This process is completed in under 10 milliseconds, ensuring consistently optimal performance, closest to your users.

Will Hasura DDN be compatible with Hasura v1/v2 and how do I migrate?

The default generated GraphQL schema (ie: the API your consumers use) of Hasura DDN is compatible with v2 schemas and will not change. You can learn more about the similarities between Hasura v2 and Hasura DDN in these docs.

Will Hasura v2 be supported after Hasura DDN is released?

We will still support, maintain and improve Hasura v2 as per our version support policy and will be providing migration tools to move Hasura v2 deployments to DDN in the near future.

If I have an Alpha/Beta DDN project, will it be compatible with the GA release?

We recommend creating a new project and use the new CLI to populate metadata again.

Will Hasura continue supporting existing plans, specifically, the Cloud Free and Professional plans?

Yes. We are committed to maintaining & supporting the Free and Professional plans to ensure there is no disruption to our users.

I heard DDN is built in Rust. Why Rust over Haskell?

We have a lot of love for Haskell. It's a beautiful language that we have been using for the Hasura engine since the beginning, and will still be using it on Hasura v2. Without going into the weeds in a FAQ, we wanted to benefit from Rust's performance, ecosystem and community for DDN. Rust is a modern, high-performance, and memory-safe language. It is also gaining much traction in the cloud-native space, and we are excited to be using it for the significant parts of the Hasura DDN codebase. If you are a Rust developer and want to do cool stuff, please check out our careers page.

If currently running a v2.x will it be moved automatically to v3?

No, it will not. The v2 cloud projects will remain untouched and there will be no change of business. Moving to DDN will be an opt-in process. Having said that, we strongly encourage upgrading to DDN early when features you require are available. Our teams are available to make the migration process as smooth as possible and please keep an eye on our official announcements and releases for upcoming information about migration tools.

Can we request to lock ourselves to 2.x?

The migration is an opt-in process, so you do not need to request to have yourselves locked to a particular version. If however, you see no upgrade path even in the next two years, please give us a heads-up and we will work out options with you.